Commits

Sebastian Sdorra  committed 43f2041

improve aether logging to find issue #299

  • Participants
  • Parent commits 40965e1
  • Branches issue-299

Comments (0)

Files changed (4)

File scm-webapp/src/main/java/sonia/scm/plugin/AetherPluginHandler.java

 import org.sonatype.aether.impl.VersionRangeResolver;
 import org.sonatype.aether.impl.VersionResolver;
 import org.sonatype.aether.impl.internal.DefaultServiceLocator;
+import org.sonatype.aether.impl.internal.Slf4jLogger;
 import org.sonatype.aether.repository.LocalRepository;
 import org.sonatype.aether.repository.Proxy;
 import org.sonatype.aether.repository.RemoteRepository;
 import sonia.scm.boot.BootstrapListener;
 import sonia.scm.boot.Classpath;
 import sonia.scm.config.ScmConfiguration;
+import sonia.scm.net.Proxies;
 import sonia.scm.util.IOUtil;
 import sonia.scm.util.Util;
 
 import javax.xml.bind.JAXBContext;
 import javax.xml.bind.JAXBException;
 import javax.xml.bind.Marshaller;
-import sonia.scm.net.Proxies;
 
 /**
  *
    */
   private RepositorySystem createRepositorySystem()
   {
-    DefaultServiceLocator locator = new DefaultServiceLocator();
-
-    locator.addService(VersionResolver.class, DefaultVersionResolver.class);
-    locator.addService(VersionRangeResolver.class,
-      DefaultVersionRangeResolver.class);
-    locator.addService(ArtifactDescriptorReader.class,
-      DefaultArtifactDescriptorReader.class);
-    locator.addService(RepositoryConnectorFactory.class,
-      AsyncRepositoryConnectorFactory.class);
-    locator.addService(RepositoryConnectorFactory.class,
-      FileRepositoryConnectorFactory.class);
-
-    return locator.getService(RepositorySystem.class);
+    return new AetherServiceLocator().getService(RepositorySystem.class);
   }
 
   /**

File scm-webapp/src/main/java/sonia/scm/plugin/AetherServiceLocator.java

+/**
+ * Copyright (c) 2010, Sebastian Sdorra All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer. 2. Redistributions in
+ * binary form must reproduce the above copyright notice, this list of
+ * conditions and the following disclaimer in the documentation and/or other
+ * materials provided with the distribution. 3. Neither the name of SCM-Manager;
+ * nor the names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * http://bitbucket.org/sdorra/scm-manager
+ *
+ */
+
+
+
+package sonia.scm.plugin;
+
+//~--- non-JDK imports --------------------------------------------------------
+
+import org.apache.maven.repository.internal.DefaultArtifactDescriptorReader;
+import org.apache.maven.repository.internal.DefaultVersionRangeResolver;
+import org.apache.maven.repository.internal.DefaultVersionResolver;
+
+import org.slf4j.LoggerFactory;
+
+import org.sonatype.aether.connector.async.AsyncRepositoryConnectorFactory;
+import org.sonatype.aether.connector.file.FileRepositoryConnectorFactory;
+import org.sonatype.aether.impl.ArtifactDescriptorReader;
+import org.sonatype.aether.impl.VersionRangeResolver;
+import org.sonatype.aether.impl.VersionResolver;
+import org.sonatype.aether.impl.internal.DefaultServiceLocator;
+import org.sonatype.aether.impl.internal.Slf4jLogger;
+import org.sonatype.aether.spi.connector.RepositoryConnectorFactory;
+import org.sonatype.aether.spi.log.Logger;
+
+/**
+ *
+ * @author Sebastian Sdorra
+ */
+public class AetherServiceLocator extends DefaultServiceLocator
+{
+
+  /** Field description */
+  private static final String LOGGER_NAME = "org.sonatype.aether";
+
+  /** Field description */
+  private static final Slf4jLogger logger =
+    new Slf4jLogger(LoggerFactory.getLogger(LOGGER_NAME));
+
+  //~--- constructors ---------------------------------------------------------
+
+  /**
+   * Constructs ...
+   *
+   */
+  public AetherServiceLocator()
+  {
+    setServices(Logger.class, logger);
+    addService(VersionResolver.class, DefaultVersionResolver.class);
+    addService(VersionRangeResolver.class, DefaultVersionRangeResolver.class);
+    addService(ArtifactDescriptorReader.class,
+      DefaultArtifactDescriptorReader.class);
+    addService(RepositoryConnectorFactory.class,
+      AsyncRepositoryConnectorFactory.class);
+    addService(RepositoryConnectorFactory.class,
+      FileRepositoryConnectorFactory.class);
+  }
+}

File scm-webapp/src/main/resources/logback.default.xml

   
   <logger name="sonia.scm.util.ServiceUtil" level="WARN" />
   
+  <!-- aether -->
+  <!--
+  <logger name="org.sonatype.aether" level="TRACE" />
+  <logger name="com.ning.http.client" level="DEBUG" />
+  -->
+  
   <!-- svnkit -->
   <!--
   <logger name="svnkit" level="WARN" />

File scm-webapp/src/main/resources/logback.release.xml

   
   <logger name="sonia.scm.util.ServiceUtil" level="WARN" />
   
+  <!-- aether -->
+  <!--
+  <logger name="org.sonatype.aether" level="TRACE" />
+  <logger name="com.ning.http.client" level="DEBUG" />
+  -->
+  
   <!-- svnkit -->
   <!--
   <logger name="svnkit" level="WARN" />
   <logger name="svnkit.network" level="DEBUG" />
   <logger name="svnkit.fsfs" level="WARN" />
   -->
+  
+  <!-- javahg -->
+  <!--
+  <logger name="com.aragost.javahg" level="DEBUG" />
+  -->
 
   <root level="WARN">
     <appender-ref ref="FILE" />