You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2013/03/14 21:04:18 UTC

[3/50] [abbrv] git commit: o Migrated to Eclipse Aether

o Migrated to Eclipse Aether


Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/82b345e0
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/82b345e0
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/82b345e0

Branch: refs/heads/eclipse-aether
Commit: 82b345e0094813b34fcac85e64dde2d5e02b4cc9
Parents: 71c145a
Author: Benjamin Bentmann <be...@apache.org>
Authored: Fri Dec 30 21:43:28 2011 +0100
Committer: Benjamin Bentmann <be...@apache.org>
Committed: Fri Dec 30 21:43:28 2011 +0100

----------------------------------------------------------------------
 apache-maven/pom.xml                               |    2 +-
 maven-aether-provider/pom.xml                      |   21 ++-
 .../internal/ArtifactDescriptorUtils.java          |    8 +-
 .../internal/DefaultArtifactDescriptorReader.java  |  127 +++++++++----
 .../repository/internal/DefaultModelCache.java     |    4 +-
 .../repository/internal/DefaultModelResolver.java  |   20 +-
 .../repository/internal/DefaultServiceLocator.java |   52 -----
 .../internal/DefaultVersionRangeResolver.java      |   98 ++++++----
 .../internal/DefaultVersionResolver.java           |  100 ++++++----
 .../repository/internal/LocalSnapshotMetadata.java |    2 +-
 .../internal/LocalSnapshotMetadataGenerator.java   |   14 +-
 .../repository/internal/MavenAetherModule.java     |   55 ++++++
 .../maven/repository/internal/MavenMetadata.java   |    4 +-
 .../internal/MavenRepositorySystemSession.java     |  106 -----------
 .../internal/MavenRepositorySystemUtils.java       |  134 +++++++++++++
 .../repository/internal/MavenServiceLocator.java   |   52 -----
 .../repository/internal/RelocatedArtifact.java     |    4 +-
 .../internal/RemoteSnapshotMetadata.java           |    2 +-
 .../internal/RemoteSnapshotMetadataGenerator.java  |   14 +-
 .../internal/SnapshotMetadataGeneratorFactory.java |   12 +-
 .../repository/internal/VersionsMetadata.java      |    4 +-
 .../internal/VersionsMetadataGenerator.java        |   12 +-
 .../internal/VersionsMetadataGeneratorFactory.java |   12 +-
 .../internal/DefaultServiceLocatorTest.java        |   45 -----
 .../internal/MavenRepositorySystemUtilsTest.java   |   45 +++++
 maven-compat/pom.xml                               |    2 +-
 .../artifact/deployer/DefaultArtifactDeployer.java |   22 +-
 .../installer/DefaultArtifactInstaller.java        |   16 +-
 .../DefaultArtifactRepositoryFactory.java          |    2 +-
 .../repository/metadata/MetadataBridge.java        |    4 +-
 .../artifact/resolver/DefaultArtifactResolver.java |   14 +-
 .../org/apache/maven/project/ProjectUtils.java     |    2 +-
 .../repository/legacy/LegacyRepositorySystem.java  |   14 +-
 .../AbstractArtifactComponentTestCase.java         |   51 +++--
 .../project/AbstractMavenProjectTestCase.java      |   15 ++-
 .../maven/project/ClasspathArtifactResolver.java   |   14 +-
 .../project/LegacyLocalRepositoryManager.java      |  148 +++++++++++++--
 .../apache/maven/project/ProjectClasspathTest.java |    4 +-
 .../repository/LegacyRepositorySystemTest.java     |   18 ++-
 .../legacy/LegacyRepositorySystemTest.java         |    8 +
 .../artifact/resolver/ArtifactResolverTest.xml     |    2 +-
 maven-core/pom.xml                                 |    6 +-
 .../main/java/org/apache/maven/DefaultMaven.java   |   56 +++---
 .../apache/maven/LoggingRepositoryListener.java    |    6 +-
 .../main/java/org/apache/maven/ReactorReader.java  |    6 +-
 .../java/org/apache/maven/RepositoryUtils.java     |   28 ++--
 .../repository/LegacyLocalRepositoryManager.java   |   38 ++---
 .../classrealm/ArtifactClassRealmConstituent.java  |    2 +-
 .../apache/maven/classrealm/ClassRealmManager.java |    2 +-
 .../maven/classrealm/DefaultClassRealmManager.java |   28 ++--
 .../java/org/apache/maven/eventspy/EventSpy.java   |    2 +-
 .../eventspy/internal/EventSpyDispatcher.java      |    2 +-
 .../internal/EventSpyRepositoryListener.java       |    6 +-
 .../execution/DefaultMavenExecutionRequest.java    |    8 +-
 .../maven/execution/MavenExecutionRequest.java     |    6 +-
 .../org/apache/maven/execution/MavenSession.java   |    2 +-
 .../internal/LifecycleDependencyResolver.java      |   14 +-
 .../apache/maven/plugin/BuildPluginManager.java    |    4 +-
 .../java/org/apache/maven/plugin/CacheUtils.java   |   10 +-
 .../maven/plugin/DefaultBuildPluginManager.java    |    4 +-
 .../maven/plugin/DefaultExtensionRealmCache.java   |    2 +-
 .../maven/plugin/DefaultPluginArtifactsCache.java  |   12 +-
 .../maven/plugin/DefaultPluginDescriptorCache.java |    8 +-
 .../maven/plugin/DefaultPluginRealmCache.java      |   10 +-
 .../apache/maven/plugin/ExtensionRealmCache.java   |    2 +-
 .../org/apache/maven/plugin/LegacySupport.java     |    2 +-
 .../apache/maven/plugin/MavenPluginManager.java    |    6 +-
 .../apache/maven/plugin/PluginArtifactsCache.java  |    8 +-
 .../apache/maven/plugin/PluginDescriptorCache.java |    4 +-
 .../org/apache/maven/plugin/PluginRealmCache.java  |    6 +-
 .../plugin/internal/DefaultLegacySupport.java      |    2 +-
 .../plugin/internal/DefaultMavenPluginManager.java |   16 +-
 .../DefaultPluginDependenciesResolver.java         |   75 ++++----
 .../maven/plugin/internal/PlexusUtilsInjector.java |   18 +-
 .../internal/PluginDependenciesResolver.java       |   10 +-
 .../maven/plugin/internal/WagonExcluder.java       |    8 +-
 .../plugin/prefix/DefaultPluginPrefixRequest.java  |    4 +-
 .../prefix/NoPluginFoundForPrefixException.java    |    4 +-
 .../maven/plugin/prefix/PluginPrefixRequest.java   |    4 +-
 .../maven/plugin/prefix/PluginPrefixResult.java    |    2 +-
 .../internal/DefaultPluginPrefixResolver.java      |   36 ++--
 .../prefix/internal/DefaultPluginPrefixResult.java |    2 +-
 .../version/DefaultPluginVersionRequest.java       |    4 +-
 .../maven/plugin/version/PluginVersionRequest.java |    4 +-
 .../version/PluginVersionResolutionException.java  |    4 +-
 .../maven/plugin/version/PluginVersionResult.java  |    2 +-
 .../internal/DefaultPluginVersionResolver.java     |   38 ++--
 .../internal/DefaultPluginVersionResult.java       |    2 +-
 .../DefaultDependencyResolutionRequest.java        |    4 +-
 .../project/DefaultDependencyResolutionResult.java |    4 +-
 .../maven/project/DefaultProjectBuilder.java       |   24 ++--
 .../project/DefaultProjectBuildingHelper.java      |   12 +-
 .../project/DefaultProjectBuildingRequest.java     |    2 +-
 .../DefaultProjectDependenciesResolver.java        |   48 +++---
 .../maven/project/DefaultProjectRealmCache.java    |    2 +-
 .../maven/project/DependencyResolutionRequest.java |    4 +-
 .../maven/project/DependencyResolutionResult.java  |    4 +-
 .../org/apache/maven/project/MavenProject.java     |    4 +-
 .../maven/project/ProjectBuildingRequest.java      |    2 +-
 .../apache/maven/project/ProjectModelResolver.java |   18 +-
 .../apache/maven/project/ProjectRealmCache.java    |    2 +-
 .../project/artifact/MavenMetadataSource.java      |   10 +-
 .../apache/maven/repository/RepositorySystem.java  |    2 +-
 .../rtinfo/internal/DefaultRuntimeInformation.java |   12 +-
 .../maven/AbstractCoreMavenComponentTestCase.java  |   17 +-
 .../internal/stub/BuildPluginManagerStub.java      |    4 +-
 .../internal/stub/PluginPrefixResolverStub.java    |    2 +-
 .../internal/stub/PluginVersionResolverStub.java   |    2 +-
 .../stub/ProjectDependenciesResolverStub.java      |    6 +-
 .../project/AbstractMavenProjectTestCase.java      |   15 ++-
 .../project/LegacyLocalRepositoryManager.java      |  148 +++++++++++++--
 .../apache/maven/project/PomConstructionTest.java  |   27 ++-
 .../maven/repository/TestRepositoryConnector.java  |   18 +-
 .../repository/TestRepositoryConnectorFactory.java |   12 +-
 .../maven/repository/TestRepositorySystem.java     |    2 +-
 .../settings/PomConstructionWithSettingsTest.java  |   21 ++-
 .../maven/cli/AbstractMavenTransferListener.java   |    8 +-
 .../maven/cli/ConsoleMavenTransferListener.java    |    6 +-
 .../main/java/org/apache/maven/cli/MavenCli.java   |    3 +-
 .../maven/cli/QuietMavenTransferListener.java      |    2 +-
 pom.xml                                            |   18 +--
 121 files changed, 1325 insertions(+), 950 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/apache-maven/pom.xml
----------------------------------------------------------------------
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index e990866..bc63839 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -80,7 +80,7 @@
       <artifactId>wagon-file</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.sonatype.aether</groupId>
+      <groupId>org.eclipse.aether</groupId>
       <artifactId>aether-connector-wagon</artifactId>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/pom.xml
----------------------------------------------------------------------
diff --git a/maven-aether-provider/pom.xml b/maven-aether-provider/pom.xml
index 249cd20..4e2e01c 100644
--- a/maven-aether-provider/pom.xml
+++ b/maven-aether-provider/pom.xml
@@ -50,19 +50,19 @@ under the License.
       <artifactId>maven-repository-metadata</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.sonatype.aether</groupId>
+      <groupId>org.eclipse.aether</groupId>
       <artifactId>aether-api</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.sonatype.aether</groupId>
+      <groupId>org.eclipse.aether</groupId>
       <artifactId>aether-spi</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.sonatype.aether</groupId>
+      <groupId>org.eclipse.aether</groupId>
       <artifactId>aether-util</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.sonatype.aether</groupId>
+      <groupId>org.eclipse.aether</groupId>
       <artifactId>aether-impl</artifactId>
     </dependency>
     <dependency>
@@ -73,6 +73,19 @@ under the License.
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-utils</artifactId>
     </dependency>
+    <dependency>
+      <groupId>com.google.inject</groupId>
+      <artifactId>guice</artifactId>
+      <version>3.0</version>
+      <classifier>no_aop</classifier>
+      <optional>true</optional>
+      <exclusions>
+        <exclusion>
+          <groupId>aopalliance</groupId>
+          <artifactId>aopalliance</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
   </dependencies>
 
   <build>

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/ArtifactDescriptorUtils.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/ArtifactDescriptorUtils.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/ArtifactDescriptorUtils.java
index b7da0d1..7f71dd9 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/ArtifactDescriptorUtils.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/ArtifactDescriptorUtils.java
@@ -20,10 +20,10 @@ package org.apache.maven.repository.internal;
  */
 
 import org.apache.maven.model.Repository;
-import org.sonatype.aether.artifact.Artifact;
-import org.sonatype.aether.repository.RemoteRepository;
-import org.sonatype.aether.repository.RepositoryPolicy;
-import org.sonatype.aether.util.artifact.DefaultArtifact;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.repository.RemoteRepository;
+import org.eclipse.aether.repository.RepositoryPolicy;
+import org.eclipse.aether.util.artifact.DefaultArtifact;
 
 /**
  * <strong>Warning:</strong> This is an internal utility class that is only public for technical reasons, it is not part

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
index 1faee29..21daabf 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
@@ -21,6 +21,7 @@ package org.apache.maven.repository.internal;
 
 import java.util.ArrayList;
 import java.util.Collections;
+import java.util.HashMap;
 import java.util.LinkedHashMap;
 import java.util.LinkedHashSet;
 import java.util.List;
@@ -28,6 +29,9 @@ import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
 
+import javax.inject.Inject;
+import javax.inject.Named;
+
 import org.apache.maven.model.DependencyManagement;
 import org.apache.maven.model.DistributionManagement;
 import org.apache.maven.model.License;
@@ -45,52 +49,54 @@ import org.apache.maven.model.building.ModelProblem;
 import org.apache.maven.model.resolution.UnresolvableModelException;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
-import org.sonatype.aether.RepositoryEvent.EventType;
-import org.sonatype.aether.RepositoryException;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.RequestTrace;
-import org.sonatype.aether.artifact.Artifact;
-import org.sonatype.aether.artifact.ArtifactType;
-import org.sonatype.aether.artifact.ArtifactTypeRegistry;
-import org.sonatype.aether.graph.Dependency;
-import org.sonatype.aether.graph.Exclusion;
-import org.sonatype.aether.impl.ArtifactDescriptorReader;
-import org.sonatype.aether.impl.ArtifactResolver;
-import org.sonatype.aether.impl.RemoteRepositoryManager;
-import org.sonatype.aether.impl.RepositoryEventDispatcher;
-import org.sonatype.aether.impl.VersionResolver;
-import org.sonatype.aether.transfer.ArtifactNotFoundException;
-import org.sonatype.aether.util.DefaultRequestTrace;
-import org.sonatype.aether.util.artifact.ArtifactProperties;
-import org.sonatype.aether.util.artifact.DefaultArtifact;
-import org.sonatype.aether.util.artifact.DefaultArtifactType;
-import org.sonatype.aether.util.listener.DefaultRepositoryEvent;
-import org.sonatype.aether.repository.WorkspaceRepository;
-import org.sonatype.aether.resolution.ArtifactDescriptorException;
-import org.sonatype.aether.resolution.ArtifactDescriptorRequest;
-import org.sonatype.aether.resolution.ArtifactDescriptorResult;
-import org.sonatype.aether.resolution.ArtifactRequest;
-import org.sonatype.aether.resolution.ArtifactResolutionException;
-import org.sonatype.aether.resolution.ArtifactResult;
-import org.sonatype.aether.resolution.VersionRequest;
-import org.sonatype.aether.resolution.VersionResolutionException;
-import org.sonatype.aether.resolution.VersionResult;
-import org.sonatype.aether.spi.locator.Service;
-import org.sonatype.aether.spi.locator.ServiceLocator;
-import org.sonatype.aether.spi.log.Logger;
-import org.sonatype.aether.spi.log.NullLogger;
+import org.eclipse.aether.RepositoryException;
+import org.eclipse.aether.RepositoryEvent.EventType;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.RequestTrace;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.artifact.ArtifactProperties;
+import org.eclipse.aether.artifact.ArtifactType;
+import org.eclipse.aether.artifact.ArtifactTypeRegistry;
+import org.eclipse.aether.graph.Dependency;
+import org.eclipse.aether.graph.Exclusion;
+import org.eclipse.aether.impl.ArtifactDescriptorReader;
+import org.eclipse.aether.impl.ArtifactResolver;
+import org.eclipse.aether.impl.RemoteRepositoryManager;
+import org.eclipse.aether.impl.RepositoryEventDispatcher;
+import org.eclipse.aether.impl.VersionResolver;
+import org.eclipse.aether.repository.WorkspaceRepository;
+import org.eclipse.aether.resolution.ArtifactDescriptorException;
+import org.eclipse.aether.resolution.ArtifactDescriptorRequest;
+import org.eclipse.aether.resolution.ArtifactDescriptorResult;
+import org.eclipse.aether.resolution.ArtifactRequest;
+import org.eclipse.aether.resolution.ArtifactResolutionException;
+import org.eclipse.aether.resolution.ArtifactResult;
+import org.eclipse.aether.resolution.VersionRequest;
+import org.eclipse.aether.resolution.VersionResolutionException;
+import org.eclipse.aether.resolution.VersionResult;
+import org.eclipse.aether.spi.locator.Service;
+import org.eclipse.aether.spi.locator.ServiceLocator;
+import org.eclipse.aether.spi.log.Logger;
+import org.eclipse.aether.spi.log.LoggerFactory;
+import org.eclipse.aether.spi.log.NullLoggerFactory;
+import org.eclipse.aether.transfer.ArtifactNotFoundException;
+import org.eclipse.aether.util.DefaultRequestTrace;
+import org.eclipse.aether.util.artifact.DefaultArtifact;
+import org.eclipse.aether.util.artifact.DefaultArtifactType;
+import org.eclipse.aether.util.listener.DefaultRepositoryEvent;
 
 /**
  * @author Benjamin Bentmann
  */
+@Named
 @Component( role = ArtifactDescriptorReader.class )
 public class DefaultArtifactDescriptorReader
     implements ArtifactDescriptorReader, Service
 {
 
     @SuppressWarnings( "unused" )
-    @Requirement
-    private Logger logger = NullLogger.INSTANCE;
+    @Requirement( role = LoggerFactory.class )
+    private Logger logger = NullLoggerFactory.LOGGER;
 
     @Requirement
     private RemoteRepositoryManager remoteRepositoryManager;
@@ -107,9 +113,27 @@ public class DefaultArtifactDescriptorReader
     @Requirement
     private ModelBuilder modelBuilder;
 
+    public DefaultArtifactDescriptorReader()
+    {
+        // enable no-arg constructor
+    }
+
+    @Inject
+    DefaultArtifactDescriptorReader( RemoteRepositoryManager remoteRepositoryManager, VersionResolver versionResolver,
+                                     ArtifactResolver artifactResolver, ModelBuilder modelBuilder,
+                                     RepositoryEventDispatcher repositoryEventDispatcher, LoggerFactory loggerFactory )
+    {
+        setRemoteRepositoryManager( remoteRepositoryManager );
+        setVersionResolver( versionResolver );
+        setArtifactResolver( artifactResolver );
+        setModelBuilder( modelBuilder );
+        setLoggerFactory( loggerFactory );
+        setRepositoryEventDispatcher( repositoryEventDispatcher );
+    }
+
     public void initService( ServiceLocator locator )
     {
-        setLogger( locator.getService( Logger.class ) );
+        setLoggerFactory( locator.getService( LoggerFactory.class ) );
         setRemoteRepositoryManager( locator.getService( RemoteRepositoryManager.class ) );
         setVersionResolver( locator.getService( VersionResolver.class ) );
         setArtifactResolver( locator.getService( ArtifactResolver.class ) );
@@ -121,12 +145,18 @@ public class DefaultArtifactDescriptorReader
         }
     }
 
-    public DefaultArtifactDescriptorReader setLogger( Logger logger )
+    public DefaultArtifactDescriptorReader setLoggerFactory( LoggerFactory loggerFactory )
     {
-        this.logger = ( logger != null ) ? logger : NullLogger.INSTANCE;
+        this.logger = NullLoggerFactory.getSafeLogger( loggerFactory, getClass() );
         return this;
     }
 
+    void setLogger( LoggerFactory loggerFactory )
+    {
+        // plexus support
+        setLoggerFactory( loggerFactory );
+    }
+
     public DefaultArtifactDescriptorReader setRemoteRepositoryManager( RemoteRepositoryManager remoteRepositoryManager )
     {
         if ( remoteRepositoryManager == null )
@@ -228,6 +258,8 @@ public class DefaultArtifactDescriptorReader
             }
 
             result.setProperties( properties );
+
+            setArtifactProperties( result, model );
         }
 
         return result;
@@ -382,6 +414,23 @@ public class DefaultArtifactDescriptorReader
         return relocation;
     }
 
+    private void setArtifactProperties( ArtifactDescriptorResult result, Model model )
+    {
+        String downloadUrl = null;
+        DistributionManagement distMngt = model.getDistributionManagement();
+        if ( distMngt != null )
+        {
+            downloadUrl = distMngt.getDownloadUrl();
+        }
+        if ( downloadUrl != null && downloadUrl.length() > 0 )
+        {
+            Artifact artifact = result.getArtifact();
+            Map<String, String> props = new HashMap<String, String>( artifact.getProperties() );
+            props.put( ArtifactProperties.DOWNLOAD_URL, downloadUrl );
+            result.setArtifact( artifact.setProperties( props ) );
+        }
+    }
+
     private Dependency convert( org.apache.maven.model.Dependency dependency, ArtifactTypeRegistry stereotypes )
     {
         ArtifactType stereotype = stereotypes.get( dependency.getType() );

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelCache.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelCache.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelCache.java
index 25b24c2..2d4fa7d 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelCache.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelCache.java
@@ -20,8 +20,8 @@ package org.apache.maven.repository.internal;
  */
 
 import org.apache.maven.model.building.ModelCache;
-import org.sonatype.aether.RepositoryCache;
-import org.sonatype.aether.RepositorySystemSession;
+import org.eclipse.aether.RepositoryCache;
+import org.eclipse.aether.RepositorySystemSession;
 
 /**
  * A model builder cache backed by the repository system cache.

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelResolver.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelResolver.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelResolver.java
index 96b9fc3..387340c 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelResolver.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultModelResolver.java
@@ -31,15 +31,15 @@ import org.apache.maven.model.building.ModelSource;
 import org.apache.maven.model.resolution.InvalidRepositoryException;
 import org.apache.maven.model.resolution.ModelResolver;
 import org.apache.maven.model.resolution.UnresolvableModelException;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.RequestTrace;
-import org.sonatype.aether.artifact.Artifact;
-import org.sonatype.aether.impl.ArtifactResolver;
-import org.sonatype.aether.impl.RemoteRepositoryManager;
-import org.sonatype.aether.repository.RemoteRepository;
-import org.sonatype.aether.resolution.ArtifactRequest;
-import org.sonatype.aether.resolution.ArtifactResolutionException;
-import org.sonatype.aether.util.artifact.DefaultArtifact;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.RequestTrace;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.impl.ArtifactResolver;
+import org.eclipse.aether.impl.RemoteRepositoryManager;
+import org.eclipse.aether.repository.RemoteRepository;
+import org.eclipse.aether.resolution.ArtifactRequest;
+import org.eclipse.aether.resolution.ArtifactResolutionException;
+import org.eclipse.aether.util.artifact.DefaultArtifact;
 
 /**
  * A model resolver to assist building of dependency POMs. This resolver gives priority to those repositories that have
@@ -93,7 +93,7 @@ class DefaultModelResolver
     public void addRepository( Repository repository )
         throws InvalidRepositoryException
     {
-        if ( !repositoryIds.add( repository.getId() ) )
+        if ( session.isIgnoreArtifactDescriptorRepositories() || !repositoryIds.add( repository.getId() ) )
         {
             return;
         }

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultServiceLocator.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultServiceLocator.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultServiceLocator.java
deleted file mode 100644
index 032f546..0000000
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultServiceLocator.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package org.apache.maven.repository.internal;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.sonatype.aether.impl.ArtifactDescriptorReader;
-import org.sonatype.aether.impl.MetadataGeneratorFactory;
-import org.sonatype.aether.impl.VersionRangeResolver;
-import org.sonatype.aether.impl.VersionResolver;
-
-/**
- * A simple service locator that is already setup with all components from this library. To acquire a complete
- * repository system, clients need to add some repository connectors for remote transfers. <em>Note:</em> This component
- * is meant to assists those clients that employ the repository systems outside of an IoC container, Maven plugins
- * should instead always use regular dependency injection to acquire the repository system.
- * 
- * @author Benjamin Bentmann
- * @deprecated use {@link MavenServiceLocator} instead, which is more explicit.
- */
-public class DefaultServiceLocator
-    extends org.sonatype.aether.impl.internal.DefaultServiceLocator
-{
-
-    /**
-     * Creates a new service locator that already knows about all service implementations included this library.
-     */
-    public DefaultServiceLocator()
-    {
-        addService( ArtifactDescriptorReader.class, DefaultArtifactDescriptorReader.class );
-        addService( VersionResolver.class, DefaultVersionResolver.class );
-        addService( VersionRangeResolver.class, DefaultVersionRangeResolver.class );
-        addService( MetadataGeneratorFactory.class, SnapshotMetadataGeneratorFactory.class );
-        addService( MetadataGeneratorFactory.class, VersionsMetadataGeneratorFactory.class );
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
index c5b85f7..1362557 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
@@ -26,44 +26,49 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import javax.inject.Inject;
+import javax.inject.Named;
+
 import org.apache.maven.artifact.repository.metadata.Versioning;
 import org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Reader;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.util.IOUtil;
-import org.sonatype.aether.RepositoryEvent.EventType;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.RequestTrace;
-import org.sonatype.aether.SyncContext;
-import org.sonatype.aether.util.DefaultRequestTrace;
-import org.sonatype.aether.util.listener.DefaultRepositoryEvent;
-import org.sonatype.aether.util.metadata.DefaultMetadata;
-import org.sonatype.aether.util.version.GenericVersionScheme;
-import org.sonatype.aether.version.InvalidVersionSpecificationException;
-import org.sonatype.aether.version.Version;
-import org.sonatype.aether.version.VersionConstraint;
-import org.sonatype.aether.version.VersionScheme;
-import org.sonatype.aether.impl.MetadataResolver;
-import org.sonatype.aether.impl.RepositoryEventDispatcher;
-import org.sonatype.aether.impl.SyncContextFactory;
-import org.sonatype.aether.impl.VersionRangeResolver;
-import org.sonatype.aether.metadata.Metadata;
-import org.sonatype.aether.repository.ArtifactRepository;
-import org.sonatype.aether.repository.RemoteRepository;
-import org.sonatype.aether.repository.WorkspaceReader;
-import org.sonatype.aether.resolution.MetadataRequest;
-import org.sonatype.aether.resolution.MetadataResult;
-import org.sonatype.aether.resolution.VersionRangeRequest;
-import org.sonatype.aether.resolution.VersionRangeResolutionException;
-import org.sonatype.aether.resolution.VersionRangeResult;
-import org.sonatype.aether.spi.locator.Service;
-import org.sonatype.aether.spi.locator.ServiceLocator;
-import org.sonatype.aether.spi.log.Logger;
-import org.sonatype.aether.spi.log.NullLogger;
+import org.eclipse.aether.RepositoryEvent.EventType;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.RequestTrace;
+import org.eclipse.aether.SyncContext;
+import org.eclipse.aether.impl.MetadataResolver;
+import org.eclipse.aether.impl.RepositoryEventDispatcher;
+import org.eclipse.aether.impl.SyncContextFactory;
+import org.eclipse.aether.impl.VersionRangeResolver;
+import org.eclipse.aether.metadata.Metadata;
+import org.eclipse.aether.repository.ArtifactRepository;
+import org.eclipse.aether.repository.RemoteRepository;
+import org.eclipse.aether.repository.WorkspaceReader;
+import org.eclipse.aether.resolution.MetadataRequest;
+import org.eclipse.aether.resolution.MetadataResult;
+import org.eclipse.aether.resolution.VersionRangeRequest;
+import org.eclipse.aether.resolution.VersionRangeResolutionException;
+import org.eclipse.aether.resolution.VersionRangeResult;
+import org.eclipse.aether.spi.locator.Service;
+import org.eclipse.aether.spi.locator.ServiceLocator;
+import org.eclipse.aether.spi.log.Logger;
+import org.eclipse.aether.spi.log.LoggerFactory;
+import org.eclipse.aether.spi.log.NullLoggerFactory;
+import org.eclipse.aether.util.DefaultRequestTrace;
+import org.eclipse.aether.util.listener.DefaultRepositoryEvent;
+import org.eclipse.aether.util.metadata.DefaultMetadata;
+import org.eclipse.aether.util.version.GenericVersionScheme;
+import org.eclipse.aether.version.InvalidVersionSpecificationException;
+import org.eclipse.aether.version.Version;
+import org.eclipse.aether.version.VersionConstraint;
+import org.eclipse.aether.version.VersionScheme;
 
 /**
  * @author Benjamin Bentmann
  */
+@Named
 @Component( role = VersionRangeResolver.class )
 public class DefaultVersionRangeResolver
     implements VersionRangeResolver, Service
@@ -72,8 +77,8 @@ public class DefaultVersionRangeResolver
     private static final String MAVEN_METADATA_XML = "maven-metadata.xml";
 
     @SuppressWarnings( "unused" )
-    @Requirement
-    private Logger logger = NullLogger.INSTANCE;
+    @Requirement( role = LoggerFactory.class )
+    private Logger logger = NullLoggerFactory.LOGGER;
 
     @Requirement
     private MetadataResolver metadataResolver;
@@ -84,20 +89,41 @@ public class DefaultVersionRangeResolver
     @Requirement
     private RepositoryEventDispatcher repositoryEventDispatcher;
 
+    public DefaultVersionRangeResolver()
+    {
+        // enable default constructor
+    }
+
+    @Inject
+    DefaultVersionRangeResolver( MetadataResolver metadataResolver, SyncContextFactory syncContextFactory,
+                                 RepositoryEventDispatcher repositoryEventDispatcher, LoggerFactory loggerFactory )
+    {
+        setMetadataResolver( metadataResolver );
+        setSyncContextFactory( syncContextFactory );
+        setLoggerFactory( loggerFactory );
+        setRepositoryEventDispatcher( repositoryEventDispatcher );
+    }
+
     public void initService( ServiceLocator locator )
     {
-        setLogger( locator.getService( Logger.class ) );
+        setLoggerFactory( locator.getService( LoggerFactory.class ) );
         setMetadataResolver( locator.getService( MetadataResolver.class ) );
         setSyncContextFactory( locator.getService( SyncContextFactory.class ) );
         setRepositoryEventDispatcher( locator.getService( RepositoryEventDispatcher.class ) );
     }
 
-    public DefaultVersionRangeResolver setLogger( Logger logger )
+    public DefaultVersionRangeResolver setLoggerFactory( LoggerFactory loggerFactory )
     {
-        this.logger = ( logger != null ) ? logger : NullLogger.INSTANCE;
+        this.logger = NullLoggerFactory.getSafeLogger( loggerFactory, getClass() );
         return this;
     }
 
+    void setLogger( LoggerFactory loggerFactory )
+    {
+        // plexus support
+        setLoggerFactory( loggerFactory );
+    }
+
     public DefaultVersionRangeResolver setMetadataResolver( MetadataResolver metadataResolver )
     {
         if ( metadataResolver == null )
@@ -148,7 +174,7 @@ public class DefaultVersionRangeResolver
 
         result.setVersionConstraint( versionConstraint );
 
-        if ( versionConstraint.getRanges().isEmpty() )
+        if ( versionConstraint.getRange() == null )
         {
             result.addVersion( versionConstraint.getVersion() );
         }
@@ -265,7 +291,7 @@ public class DefaultVersionRangeResolver
                 }
                 finally
                 {
-                    syncContext.release();
+                    syncContext.close();
                 }
             }
         }

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
index 7c0f85f..1e0e353 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
@@ -28,6 +28,9 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import javax.inject.Inject;
+import javax.inject.Named;
+
 import org.apache.maven.artifact.repository.metadata.Snapshot;
 import org.apache.maven.artifact.repository.metadata.SnapshotVersion;
 import org.apache.maven.artifact.repository.metadata.Versioning;
@@ -36,40 +39,42 @@ import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.util.IOUtil;
 import org.codehaus.plexus.util.StringUtils;
-import org.sonatype.aether.ConfigurationProperties;
-import org.sonatype.aether.RepositoryCache;
-import org.sonatype.aether.RequestTrace;
-import org.sonatype.aether.RepositoryEvent.EventType;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.SyncContext;
-import org.sonatype.aether.util.DefaultRequestTrace;
-import org.sonatype.aether.util.listener.DefaultRepositoryEvent;
-import org.sonatype.aether.util.metadata.DefaultMetadata;
-import org.sonatype.aether.artifact.Artifact;
-import org.sonatype.aether.impl.MetadataResolver;
-import org.sonatype.aether.impl.RepositoryEventDispatcher;
-import org.sonatype.aether.impl.SyncContextFactory;
-import org.sonatype.aether.impl.VersionResolver;
-import org.sonatype.aether.impl.internal.CacheUtils;
-import org.sonatype.aether.metadata.Metadata;
-import org.sonatype.aether.repository.ArtifactRepository;
-import org.sonatype.aether.repository.LocalRepository;
-import org.sonatype.aether.repository.RemoteRepository;
-import org.sonatype.aether.repository.WorkspaceReader;
-import org.sonatype.aether.repository.WorkspaceRepository;
-import org.sonatype.aether.resolution.MetadataRequest;
-import org.sonatype.aether.resolution.MetadataResult;
-import org.sonatype.aether.resolution.VersionRequest;
-import org.sonatype.aether.resolution.VersionResolutionException;
-import org.sonatype.aether.resolution.VersionResult;
-import org.sonatype.aether.spi.locator.Service;
-import org.sonatype.aether.spi.locator.ServiceLocator;
-import org.sonatype.aether.spi.log.Logger;
-import org.sonatype.aether.spi.log.NullLogger;
+import org.eclipse.aether.RepositoryCache;
+import org.eclipse.aether.RepositoryEvent.EventType;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.RequestTrace;
+import org.eclipse.aether.SyncContext;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.impl.MetadataResolver;
+import org.eclipse.aether.impl.RepositoryEventDispatcher;
+import org.eclipse.aether.impl.SyncContextFactory;
+import org.eclipse.aether.impl.VersionResolver;
+import org.eclipse.aether.internal.impl.CacheUtils;
+import org.eclipse.aether.metadata.Metadata;
+import org.eclipse.aether.repository.ArtifactRepository;
+import org.eclipse.aether.repository.LocalRepository;
+import org.eclipse.aether.repository.RemoteRepository;
+import org.eclipse.aether.repository.WorkspaceReader;
+import org.eclipse.aether.repository.WorkspaceRepository;
+import org.eclipse.aether.resolution.MetadataRequest;
+import org.eclipse.aether.resolution.MetadataResult;
+import org.eclipse.aether.resolution.VersionRequest;
+import org.eclipse.aether.resolution.VersionResolutionException;
+import org.eclipse.aether.resolution.VersionResult;
+import org.eclipse.aether.spi.locator.Service;
+import org.eclipse.aether.spi.locator.ServiceLocator;
+import org.eclipse.aether.spi.log.Logger;
+import org.eclipse.aether.spi.log.LoggerFactory;
+import org.eclipse.aether.spi.log.NullLoggerFactory;
+import org.eclipse.aether.util.ConfigUtils;
+import org.eclipse.aether.util.DefaultRequestTrace;
+import org.eclipse.aether.util.listener.DefaultRepositoryEvent;
+import org.eclipse.aether.util.metadata.DefaultMetadata;
 
 /**
  * @author Benjamin Bentmann
  */
+@Named
 @Component( role = VersionResolver.class )
 public class DefaultVersionResolver
     implements VersionResolver, Service
@@ -84,8 +89,8 @@ public class DefaultVersionResolver
     private static final String SNAPSHOT = "SNAPSHOT";
 
     @SuppressWarnings( "unused" )
-    @Requirement
-    private Logger logger = NullLogger.INSTANCE;
+    @Requirement( role = LoggerFactory.class )
+    private Logger logger = NullLoggerFactory.LOGGER;
 
     @Requirement
     private MetadataResolver metadataResolver;
@@ -96,20 +101,41 @@ public class DefaultVersionResolver
     @Requirement
     private RepositoryEventDispatcher repositoryEventDispatcher;
 
+    public DefaultVersionResolver()
+    {
+        // enable no-arg constructor
+    }
+
+    @Inject
+    DefaultVersionResolver( MetadataResolver metadataResolver, SyncContextFactory syncContextFactory,
+                            RepositoryEventDispatcher repositoryEventDispatcher, LoggerFactory loggerFactory )
+    {
+        setMetadataResolver( metadataResolver );
+        setSyncContextFactory( syncContextFactory );
+        setLoggerFactory( loggerFactory );
+        setRepositoryEventDispatcher( repositoryEventDispatcher );
+    }
+
     public void initService( ServiceLocator locator )
     {
-        setLogger( locator.getService( Logger.class ) );
+        setLoggerFactory( locator.getService( LoggerFactory.class ) );
         setMetadataResolver( locator.getService( MetadataResolver.class ) );
         setSyncContextFactory( locator.getService( SyncContextFactory.class ) );
         setRepositoryEventDispatcher( locator.getService( RepositoryEventDispatcher.class ) );
     }
 
-    public DefaultVersionResolver setLogger( Logger logger )
+    public DefaultVersionResolver setLoggerFactory( LoggerFactory loggerFactory )
     {
-        this.logger = ( logger != null ) ? logger : NullLogger.INSTANCE;
+        this.logger = NullLoggerFactory.getSafeLogger( loggerFactory, getClass() );
         return this;
     }
 
+    void setLogger( LoggerFactory loggerFactory )
+    {
+        // plexus support
+        setLoggerFactory( loggerFactory );
+    }
+
     public DefaultVersionResolver setMetadataResolver( MetadataResolver metadataResolver )
     {
         if ( metadataResolver == null )
@@ -153,7 +179,7 @@ public class DefaultVersionResolver
 
         Key cacheKey = null;
         RepositoryCache cache = session.getCache();
-        if ( cache != null && !ConfigurationProperties.get( session, "aether.versionResolver.noCache", false ) )
+        if ( cache != null && !ConfigUtils.getBoolean( session, false, "aether.versionResolver.noCache" ) )
         {
             cacheKey = new Key( session, request );
 
@@ -355,7 +381,7 @@ public class DefaultVersionResolver
                 }
                 finally
                 {
-                    syncContext.release();
+                    syncContext.close();
                 }
             }
         }

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadata.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadata.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadata.java
index a084977..944f2ed 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadata.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadata.java
@@ -29,7 +29,7 @@ import org.apache.maven.artifact.repository.metadata.Metadata;
 import org.apache.maven.artifact.repository.metadata.Snapshot;
 import org.apache.maven.artifact.repository.metadata.SnapshotVersion;
 import org.apache.maven.artifact.repository.metadata.Versioning;
-import org.sonatype.aether.artifact.Artifact;
+import org.eclipse.aether.artifact.Artifact;
 
 /**
  * @author Benjamin Bentmann

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadataGenerator.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadataGenerator.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadataGenerator.java
index 1d318cd..ee7c10b 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadataGenerator.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/LocalSnapshotMetadataGenerator.java
@@ -24,12 +24,12 @@ import java.util.Collections;
 import java.util.LinkedHashMap;
 import java.util.Map;
 
-import org.sonatype.aether.ConfigurationProperties;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.artifact.Artifact;
-import org.sonatype.aether.impl.MetadataGenerator;
-import org.sonatype.aether.installation.InstallRequest;
-import org.sonatype.aether.metadata.Metadata;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.impl.MetadataGenerator;
+import org.eclipse.aether.installation.InstallRequest;
+import org.eclipse.aether.metadata.Metadata;
+import org.eclipse.aether.util.ConfigUtils;
 
 /**
  * @author Benjamin Bentmann
@@ -44,7 +44,7 @@ class LocalSnapshotMetadataGenerator
 
     public LocalSnapshotMetadataGenerator( RepositorySystemSession session, InstallRequest request )
     {
-        legacyFormat = ConfigurationProperties.get( session.getConfigProperties(), "maven.metadata.legacy", false );
+        legacyFormat = ConfigUtils.getBoolean( session.getConfigProperties(), false, "maven.metadata.legacy" );
 
         snapshots = new LinkedHashMap<Object, LocalSnapshotMetadata>();
     }

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenAetherModule.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenAetherModule.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenAetherModule.java
new file mode 100644
index 0000000..0432cdb
--- /dev/null
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenAetherModule.java
@@ -0,0 +1,55 @@
+package org.apache.maven.repository.internal;
+
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Set;
+
+import javax.inject.Named;
+import javax.inject.Singleton;
+
+import org.apache.maven.model.building.DefaultModelBuilderFactory;
+import org.apache.maven.model.building.ModelBuilder;
+import org.eclipse.aether.impl.AetherModule;
+import org.eclipse.aether.impl.ArtifactDescriptorReader;
+import org.eclipse.aether.impl.MetadataGeneratorFactory;
+import org.eclipse.aether.impl.VersionRangeResolver;
+import org.eclipse.aether.impl.VersionResolver;
+
+import com.google.inject.AbstractModule;
+import com.google.inject.Provides;
+import com.google.inject.name.Names;
+
+public final class MavenAetherModule
+    extends AbstractModule
+{
+
+    @Override
+    protected void configure()
+    {
+        install( new AetherModule() );
+        bind( ArtifactDescriptorReader.class ) //
+        .to( DefaultArtifactDescriptorReader.class ).in( Singleton.class );
+        bind( VersionResolver.class ) //
+        .to( DefaultVersionResolver.class ).in( Singleton.class );
+        bind( VersionRangeResolver.class ) //
+        .to( DefaultVersionRangeResolver.class ).in( Singleton.class );
+        bind( MetadataGeneratorFactory.class ).annotatedWith( Names.named( "snapshot" ) ) //
+        .to( SnapshotMetadataGeneratorFactory.class ).in( Singleton.class );
+        bind( MetadataGeneratorFactory.class ).annotatedWith( Names.named( "versions" ) ) //
+        .to( VersionsMetadataGeneratorFactory.class ).in( Singleton.class );
+        bind( ModelBuilder.class ) //
+        .toInstance( new DefaultModelBuilderFactory().newInstance() );
+    }
+
+    @Provides
+    @Singleton
+    Set<MetadataGeneratorFactory> provideMetadataGeneratorFactories( @Named( "snapshot" ) MetadataGeneratorFactory snapshot,
+                                                                     @Named( "versions" ) MetadataGeneratorFactory versions )
+    {
+        Set<MetadataGeneratorFactory> factories = new HashSet<MetadataGeneratorFactory>();
+        factories.add( snapshot );
+        factories.add( versions );
+        return Collections.unmodifiableSet( factories );
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenMetadata.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenMetadata.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenMetadata.java
index 3db90e9..63f7bc4 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenMetadata.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenMetadata.java
@@ -31,8 +31,8 @@ import org.codehaus.plexus.util.IOUtil;
 import org.codehaus.plexus.util.ReaderFactory;
 import org.codehaus.plexus.util.WriterFactory;
 import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
-import org.sonatype.aether.RepositoryException;
-import org.sonatype.aether.metadata.MergeableMetadata;
+import org.eclipse.aether.RepositoryException;
+import org.eclipse.aether.metadata.MergeableMetadata;
 
 /**
  * @author Benjamin Bentmann

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemSession.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemSession.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemSession.java
deleted file mode 100644
index ffd2415..0000000
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemSession.java
+++ /dev/null
@@ -1,106 +0,0 @@
-package org.apache.maven.repository.internal;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.sonatype.aether.collection.DependencyGraphTransformer;
-import org.sonatype.aether.collection.DependencyManager;
-import org.sonatype.aether.collection.DependencySelector;
-import org.sonatype.aether.collection.DependencyTraverser;
-import org.sonatype.aether.util.DefaultRepositorySystemSession;
-import org.sonatype.aether.util.artifact.DefaultArtifactType;
-import org.sonatype.aether.util.artifact.DefaultArtifactTypeRegistry;
-import org.sonatype.aether.util.graph.manager.ClassicDependencyManager;
-import org.sonatype.aether.util.graph.selector.AndDependencySelector;
-import org.sonatype.aether.util.graph.selector.ExclusionDependencySelector;
-import org.sonatype.aether.util.graph.selector.OptionalDependencySelector;
-import org.sonatype.aether.util.graph.selector.ScopeDependencySelector;
-import org.sonatype.aether.util.graph.transformer.ChainedDependencyGraphTransformer;
-import org.sonatype.aether.util.graph.transformer.ConflictMarker;
-import org.sonatype.aether.util.graph.transformer.JavaDependencyContextRefiner;
-import org.sonatype.aether.util.graph.transformer.JavaEffectiveScopeCalculator;
-import org.sonatype.aether.util.graph.transformer.NearestVersionConflictResolver;
-import org.sonatype.aether.util.graph.traverser.FatArtifactTraverser;
-import org.sonatype.aether.util.repository.DefaultAuthenticationSelector;
-import org.sonatype.aether.util.repository.DefaultMirrorSelector;
-import org.sonatype.aether.util.repository.DefaultProxySelector;
-
-/**
- * A simplistic repository system session that mimics Maven's behavior to help third-party developers that want to embed
- * Maven's dependency resolution into their own applications. <strong>Warning:</strong> This class is not intended for
- * usage by Maven plugins, those should always acquire the current repository system session via parameter injection.
- * 
- * @author Benjamin Bentmann
- */
-public class MavenRepositorySystemSession
-    extends DefaultRepositorySystemSession
-{
-
-    /**
-     * Creates a new Maven-like repository system session by initializing the session with values typical for
-     * Maven-based resolution. In more detail, this constructor configures settings relevant for the processing of
-     * dependency graphs, most other settings remain at their generic default value. Use the various setters to further
-     * configure the session with authentication, mirror, proxy and other information required for your environment.
-     */
-    public MavenRepositorySystemSession()
-    {
-        setMirrorSelector( new DefaultMirrorSelector() );
-        setAuthenticationSelector( new DefaultAuthenticationSelector() );
-        setProxySelector( new DefaultProxySelector() );
-
-        DependencyTraverser depTraverser = new FatArtifactTraverser();
-        setDependencyTraverser( depTraverser );
-
-        DependencyManager depManager = new ClassicDependencyManager();
-        setDependencyManager( depManager );
-
-        DependencySelector depFilter =
-            new AndDependencySelector( new ScopeDependencySelector( "test", "provided" ),
-                                       new OptionalDependencySelector(), new ExclusionDependencySelector() );
-        setDependencySelector( depFilter );
-
-        DependencyGraphTransformer transformer =
-            new ChainedDependencyGraphTransformer( new ConflictMarker(), new JavaEffectiveScopeCalculator(),
-                                                   new NearestVersionConflictResolver(),
-                                                   new JavaDependencyContextRefiner() );
-        setDependencyGraphTransformer( transformer );
-
-        DefaultArtifactTypeRegistry stereotypes = new DefaultArtifactTypeRegistry();
-        stereotypes.add( new DefaultArtifactType( "pom" ) );
-        stereotypes.add( new DefaultArtifactType( "maven-plugin", "jar", "", "java" ) );
-        stereotypes.add( new DefaultArtifactType( "jar", "jar", "", "java" ) );
-        stereotypes.add( new DefaultArtifactType( "ejb", "jar", "", "java" ) );
-        stereotypes.add( new DefaultArtifactType( "ejb-client", "jar", "client", "java" ) );
-        stereotypes.add( new DefaultArtifactType( "test-jar", "jar", "tests", "java" ) );
-        stereotypes.add( new DefaultArtifactType( "javadoc", "jar", "javadoc", "java" ) );
-        stereotypes.add( new DefaultArtifactType( "java-source", "jar", "sources", "java", false, false ) );
-        stereotypes.add( new DefaultArtifactType( "war", "war", "", "java", false, true ) );
-        stereotypes.add( new DefaultArtifactType( "ear", "ear", "", "java", false, true ) );
-        stereotypes.add( new DefaultArtifactType( "rar", "rar", "", "java", false, true ) );
-        stereotypes.add( new DefaultArtifactType( "par", "par", "", "java", false, true ) );
-        setArtifactTypeRegistry( stereotypes );
-
-        setIgnoreInvalidArtifactDescriptor( true );
-        setIgnoreMissingArtifactDescriptor( true );
-
-        setSystemProps( System.getProperties() );
-        setConfigProps( System.getProperties() );
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java
new file mode 100644
index 0000000..de21c26
--- /dev/null
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java
@@ -0,0 +1,134 @@
+package org.apache.maven.repository.internal;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.util.Properties;
+
+import org.eclipse.aether.collection.DependencyGraphTransformer;
+import org.eclipse.aether.collection.DependencyManager;
+import org.eclipse.aether.collection.DependencySelector;
+import org.eclipse.aether.collection.DependencyTraverser;
+import org.eclipse.aether.impl.ArtifactDescriptorReader;
+import org.eclipse.aether.impl.DefaultServiceLocator;
+import org.eclipse.aether.impl.MetadataGeneratorFactory;
+import org.eclipse.aether.impl.VersionRangeResolver;
+import org.eclipse.aether.impl.VersionResolver;
+import org.eclipse.aether.util.DefaultRepositorySystemSession;
+import org.eclipse.aether.util.artifact.DefaultArtifactType;
+import org.eclipse.aether.util.artifact.DefaultArtifactTypeRegistry;
+import org.eclipse.aether.util.graph.manager.ClassicDependencyManager;
+import org.eclipse.aether.util.graph.selector.AndDependencySelector;
+import org.eclipse.aether.util.graph.selector.ExclusionDependencySelector;
+import org.eclipse.aether.util.graph.selector.OptionalDependencySelector;
+import org.eclipse.aether.util.graph.selector.ScopeDependencySelector;
+import org.eclipse.aether.util.graph.transformer.ChainedDependencyGraphTransformer;
+import org.eclipse.aether.util.graph.transformer.ConflictMarker;
+import org.eclipse.aether.util.graph.transformer.JavaDependencyContextRefiner;
+import org.eclipse.aether.util.graph.transformer.JavaEffectiveScopeCalculator;
+import org.eclipse.aether.util.graph.transformer.NearestVersionConflictResolver;
+import org.eclipse.aether.util.graph.traverser.FatArtifactTraverser;
+
+/**
+ * A utility class to assist in setting up a Maven-like repository system. <em>Note:</em> This component is meant to
+ * assist those clients that employ the repository system outside of an IoC container, Maven plugins should instead
+ * always use regular dependency injection to acquire the repository system.
+ * 
+ * @author Benjamin Bentmann
+ */
+public final class MavenRepositorySystemUtils
+{
+
+    private MavenRepositorySystemUtils()
+    {
+        // hide constructor
+    }
+
+    /**
+     * Creates a new service locator that already knows about all service implementations included in this library. To
+     * acquire a complete repository system, clients need to add some repository connectors for remote transfers.
+     * 
+     * @return The new service locator, never {@code null}.
+     */
+    public static DefaultServiceLocator newServiceLocator()
+    {
+        DefaultServiceLocator locator = new DefaultServiceLocator();
+        locator.addService( ArtifactDescriptorReader.class, DefaultArtifactDescriptorReader.class );
+        locator.addService( VersionResolver.class, DefaultVersionResolver.class );
+        locator.addService( VersionRangeResolver.class, DefaultVersionRangeResolver.class );
+        locator.addService( MetadataGeneratorFactory.class, SnapshotMetadataGeneratorFactory.class );
+        locator.addService( MetadataGeneratorFactory.class, VersionsMetadataGeneratorFactory.class );
+        return locator;
+    }
+
+    /**
+     * Creates a new Maven-like repository system session by initializing the session with values typical for
+     * Maven-based resolution. In more detail, this method configures settings relevant for the processing of dependency
+     * graphs, most other settings remain at their generic default value. Use the various setters to further configure
+     * the session with authentication, mirror, proxy and other information required for your environment.
+     * 
+     * @return The new repository system session, never {@code null}.
+     */
+    public static DefaultRepositorySystemSession newSession()
+    {
+        DefaultRepositorySystemSession session = new DefaultRepositorySystemSession();
+
+        DependencyTraverser depTraverser = new FatArtifactTraverser();
+        session.setDependencyTraverser( depTraverser );
+
+        DependencyManager depManager = new ClassicDependencyManager();
+        session.setDependencyManager( depManager );
+
+        DependencySelector depFilter =
+            new AndDependencySelector( new ScopeDependencySelector( "test", "provided" ),
+                                       new OptionalDependencySelector(), new ExclusionDependencySelector() );
+        session.setDependencySelector( depFilter );
+
+        DependencyGraphTransformer transformer =
+            new ChainedDependencyGraphTransformer( new ConflictMarker(), new JavaEffectiveScopeCalculator(),
+                                                   new NearestVersionConflictResolver(),
+                                                   new JavaDependencyContextRefiner() );
+        session.setDependencyGraphTransformer( transformer );
+
+        DefaultArtifactTypeRegistry stereotypes = new DefaultArtifactTypeRegistry();
+        stereotypes.add( new DefaultArtifactType( "pom" ) );
+        stereotypes.add( new DefaultArtifactType( "maven-plugin", "jar", "", "java" ) );
+        stereotypes.add( new DefaultArtifactType( "jar", "jar", "", "java" ) );
+        stereotypes.add( new DefaultArtifactType( "ejb", "jar", "", "java" ) );
+        stereotypes.add( new DefaultArtifactType( "ejb-client", "jar", "client", "java" ) );
+        stereotypes.add( new DefaultArtifactType( "test-jar", "jar", "tests", "java" ) );
+        stereotypes.add( new DefaultArtifactType( "javadoc", "jar", "javadoc", "java" ) );
+        stereotypes.add( new DefaultArtifactType( "java-source", "jar", "sources", "java", false, false ) );
+        stereotypes.add( new DefaultArtifactType( "war", "war", "", "java", false, true ) );
+        stereotypes.add( new DefaultArtifactType( "ear", "ear", "", "java", false, true ) );
+        stereotypes.add( new DefaultArtifactType( "rar", "rar", "", "java", false, true ) );
+        stereotypes.add( new DefaultArtifactType( "par", "par", "", "java", false, true ) );
+        session.setArtifactTypeRegistry( stereotypes );
+
+        session.setIgnoreInvalidArtifactDescriptor( true );
+        session.setIgnoreMissingArtifactDescriptor( true );
+
+        Properties sysProps = System.getProperties();
+        session.setSystemProps( sysProps );
+        session.setConfigProps( sysProps );
+
+        return session;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenServiceLocator.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenServiceLocator.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenServiceLocator.java
deleted file mode 100644
index db55665..0000000
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenServiceLocator.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package org.apache.maven.repository.internal;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.sonatype.aether.impl.ArtifactDescriptorReader;
-import org.sonatype.aether.impl.internal.DefaultServiceLocator;
-import org.sonatype.aether.impl.MetadataGeneratorFactory;
-import org.sonatype.aether.impl.VersionRangeResolver;
-import org.sonatype.aether.impl.VersionResolver;
-
-/**
- * A simple service locator that is already setup with all components from this library. To acquire a complete
- * repository system, clients need to add some repository connectors for remote transfers. <em>Note:</em> This component
- * is meant to assist those clients that employ the repository systems outside of an IoC container, Maven plugins
- * should instead always use regular dependency injection to acquire the repository system.
- * 
- * @author Benjamin Bentmann
- */
-public class MavenServiceLocator
-    extends DefaultServiceLocator
-{
-
-    /**
-     * Creates a new service locator that already knows about all service implementations included in this library.
-     */
-    public MavenServiceLocator()
-    {
-        addService( ArtifactDescriptorReader.class, DefaultArtifactDescriptorReader.class );
-        addService( VersionResolver.class, DefaultVersionResolver.class );
-        addService( VersionRangeResolver.class, DefaultVersionRangeResolver.class );
-        addService( MetadataGeneratorFactory.class, SnapshotMetadataGeneratorFactory.class );
-        addService( MetadataGeneratorFactory.class, VersionsMetadataGeneratorFactory.class );
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RelocatedArtifact.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RelocatedArtifact.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RelocatedArtifact.java
index 3acc3cb..b05c523 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RelocatedArtifact.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RelocatedArtifact.java
@@ -22,8 +22,8 @@ package org.apache.maven.repository.internal;
 import java.io.File;
 import java.util.Map;
 
-import org.sonatype.aether.artifact.Artifact;
-import org.sonatype.aether.util.artifact.AbstractArtifact;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.util.artifact.AbstractArtifact;
 
 /**
  * @author Benjamin Bentmann

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadata.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadata.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadata.java
index 4ce4393..c8c091a 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadata.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadata.java
@@ -33,7 +33,7 @@ import org.apache.maven.artifact.repository.metadata.Metadata;
 import org.apache.maven.artifact.repository.metadata.Snapshot;
 import org.apache.maven.artifact.repository.metadata.SnapshotVersion;
 import org.apache.maven.artifact.repository.metadata.Versioning;
-import org.sonatype.aether.artifact.Artifact;
+import org.eclipse.aether.artifact.Artifact;
 
 /**
  * @author Benjamin Bentmann

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadataGenerator.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadataGenerator.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadataGenerator.java
index d56eed8..6cbeec5 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadataGenerator.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/RemoteSnapshotMetadataGenerator.java
@@ -24,12 +24,12 @@ import java.util.Collections;
 import java.util.LinkedHashMap;
 import java.util.Map;
 
-import org.sonatype.aether.ConfigurationProperties;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.artifact.Artifact;
-import org.sonatype.aether.deployment.DeployRequest;
-import org.sonatype.aether.impl.MetadataGenerator;
-import org.sonatype.aether.metadata.Metadata;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.deployment.DeployRequest;
+import org.eclipse.aether.impl.MetadataGenerator;
+import org.eclipse.aether.metadata.Metadata;
+import org.eclipse.aether.util.ConfigUtils;
 
 /**
  * @author Benjamin Bentmann
@@ -44,7 +44,7 @@ class RemoteSnapshotMetadataGenerator
 
     public RemoteSnapshotMetadataGenerator( RepositorySystemSession session, DeployRequest request )
     {
-        legacyFormat = ConfigurationProperties.get( session.getConfigProperties(), "maven.metadata.legacy", false );
+        legacyFormat = ConfigUtils.getBoolean( session.getConfigProperties(), false, "maven.metadata.legacy" );
 
         snapshots = new LinkedHashMap<Object, RemoteSnapshotMetadata>();
 

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java
index 60e9c3e..79ffaad 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/SnapshotMetadataGeneratorFactory.java
@@ -20,11 +20,11 @@ package org.apache.maven.repository.internal;
  */
 
 import org.codehaus.plexus.component.annotations.Component;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.deployment.DeployRequest;
-import org.sonatype.aether.impl.MetadataGenerator;
-import org.sonatype.aether.impl.MetadataGeneratorFactory;
-import org.sonatype.aether.installation.InstallRequest;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.deployment.DeployRequest;
+import org.eclipse.aether.impl.MetadataGenerator;
+import org.eclipse.aether.impl.MetadataGeneratorFactory;
+import org.eclipse.aether.installation.InstallRequest;
 
 /**
  * @author Benjamin Bentmann
@@ -44,7 +44,7 @@ public class SnapshotMetadataGeneratorFactory
         return new RemoteSnapshotMetadataGenerator( session, request );
     }
 
-    public int getPriority()
+    public float getPriority()
     {
         return 10;
     }

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadata.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadata.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadata.java
index 139e5f8..e1be302 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadata.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadata.java
@@ -26,8 +26,8 @@ import java.util.LinkedHashSet;
 
 import org.apache.maven.artifact.repository.metadata.Metadata;
 import org.apache.maven.artifact.repository.metadata.Versioning;
-import org.sonatype.aether.artifact.Artifact;
-import org.sonatype.aether.util.artifact.ArtifactProperties;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.artifact.ArtifactProperties;
 
 /**
  * @author Benjamin Bentmann

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGenerator.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGenerator.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGenerator.java
index db1c412..e2f5e82 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGenerator.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGenerator.java
@@ -25,12 +25,12 @@ import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.Map;
 
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.artifact.Artifact;
-import org.sonatype.aether.deployment.DeployRequest;
-import org.sonatype.aether.impl.MetadataGenerator;
-import org.sonatype.aether.installation.InstallRequest;
-import org.sonatype.aether.metadata.Metadata;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.deployment.DeployRequest;
+import org.eclipse.aether.impl.MetadataGenerator;
+import org.eclipse.aether.installation.InstallRequest;
+import org.eclipse.aether.metadata.Metadata;
 
 /**
  * @author Benjamin Bentmann

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java
index a1e986f..47ef360 100644
--- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java
+++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/VersionsMetadataGeneratorFactory.java
@@ -20,11 +20,11 @@ package org.apache.maven.repository.internal;
  */
 
 import org.codehaus.plexus.component.annotations.Component;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.deployment.DeployRequest;
-import org.sonatype.aether.impl.MetadataGenerator;
-import org.sonatype.aether.impl.MetadataGeneratorFactory;
-import org.sonatype.aether.installation.InstallRequest;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.deployment.DeployRequest;
+import org.eclipse.aether.impl.MetadataGenerator;
+import org.eclipse.aether.impl.MetadataGeneratorFactory;
+import org.eclipse.aether.installation.InstallRequest;
 
 /**
  * @author Benjamin Bentmann
@@ -44,7 +44,7 @@ public class VersionsMetadataGeneratorFactory
         return new VersionsMetadataGenerator( session, request );
     }
 
-    public int getPriority()
+    public float getPriority()
     {
         return 5;
     }

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/test/java/org/apache/maven/repository/internal/DefaultServiceLocatorTest.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/test/java/org/apache/maven/repository/internal/DefaultServiceLocatorTest.java b/maven-aether-provider/src/test/java/org/apache/maven/repository/internal/DefaultServiceLocatorTest.java
deleted file mode 100644
index 064b675..0000000
--- a/maven-aether-provider/src/test/java/org/apache/maven/repository/internal/DefaultServiceLocatorTest.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package org.apache.maven.repository.internal;
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.sonatype.aether.RepositorySystem;
-import org.sonatype.aether.impl.MetadataGeneratorFactory;
-import org.sonatype.aether.spi.locator.ServiceLocator;
-
-import junit.framework.TestCase;
-
-public class DefaultServiceLocatorTest
-    extends TestCase
-{
-
-    public void testGetRepositorySystem()
-    {
-        ServiceLocator locator = new MavenServiceLocator();
-        RepositorySystem repoSys = locator.getService( RepositorySystem.class );
-        assertNotNull( repoSys );
-    }
-
-    public void testGetMetadataGeneratorFactories()
-    {
-        ServiceLocator locator = new MavenServiceLocator();
-        assertEquals( 2, locator.getServices( MetadataGeneratorFactory.class ).size() );
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-aether-provider/src/test/java/org/apache/maven/repository/internal/MavenRepositorySystemUtilsTest.java
----------------------------------------------------------------------
diff --git a/maven-aether-provider/src/test/java/org/apache/maven/repository/internal/MavenRepositorySystemUtilsTest.java b/maven-aether-provider/src/test/java/org/apache/maven/repository/internal/MavenRepositorySystemUtilsTest.java
new file mode 100644
index 0000000..768835a
--- /dev/null
+++ b/maven-aether-provider/src/test/java/org/apache/maven/repository/internal/MavenRepositorySystemUtilsTest.java
@@ -0,0 +1,45 @@
+package org.apache.maven.repository.internal;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.eclipse.aether.RepositorySystem;
+import org.eclipse.aether.impl.MetadataGeneratorFactory;
+import org.eclipse.aether.spi.locator.ServiceLocator;
+
+import junit.framework.TestCase;
+
+public class MavenRepositorySystemUtilsTest
+    extends TestCase
+{
+
+    public void testGetRepositorySystem()
+    {
+        ServiceLocator locator = MavenRepositorySystemUtils.newServiceLocator();
+        RepositorySystem repoSys = locator.getService( RepositorySystem.class );
+        assertNotNull( repoSys );
+    }
+
+    public void testGetMetadataGeneratorFactories()
+    {
+        ServiceLocator locator = MavenRepositorySystemUtils.newServiceLocator();
+        assertEquals( 2, locator.getServices( MetadataGeneratorFactory.class ).size() );
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-compat/pom.xml
----------------------------------------------------------------------
diff --git a/maven-compat/pom.xml b/maven-compat/pom.xml
index ad6a2a3..46f564b 100644
--- a/maven-compat/pom.xml
+++ b/maven-compat/pom.xml
@@ -72,7 +72,7 @@
       <scope>test</scope>
     </dependency>
     <dependency>
-      <groupId>org.sonatype.aether</groupId>
+      <groupId>org.eclipse.aether</groupId>
       <artifactId>aether-connector-wagon</artifactId>
       <scope>test</scope>
     </dependency>

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-compat/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java
----------------------------------------------------------------------
diff --git a/maven-compat/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java b/maven-compat/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java
index cc9e665..3f3478d 100644
--- a/maven-compat/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java
+++ b/maven-compat/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java
@@ -37,15 +37,15 @@ import org.apache.maven.project.artifact.ProjectArtifactMetadata;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
-import org.sonatype.aether.RepositorySystem;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.deployment.DeployRequest;
-import org.sonatype.aether.deployment.DeployResult;
-import org.sonatype.aether.deployment.DeploymentException;
-import org.sonatype.aether.metadata.MergeableMetadata;
-import org.sonatype.aether.repository.RemoteRepository;
-import org.sonatype.aether.util.DefaultRequestTrace;
-import org.sonatype.aether.util.artifact.SubArtifact;
+import org.eclipse.aether.RepositorySystem;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.deployment.DeployRequest;
+import org.eclipse.aether.deployment.DeployResult;
+import org.eclipse.aether.deployment.DeploymentException;
+import org.eclipse.aether.metadata.MergeableMetadata;
+import org.eclipse.aether.repository.RemoteRepository;
+import org.eclipse.aether.util.DefaultRequestTrace;
+import org.eclipse.aether.util.artifact.SubArtifact;
 
 @Component( role = ArtifactDeployer.class, instantiationStrategy = "per-lookup" )
 public class DefaultArtifactDeployer
@@ -86,7 +86,7 @@ public class DefaultArtifactDeployer
 
         request.setTrace( DefaultRequestTrace.newChild( null, legacySupport.getSession().getCurrentProject() ) );
 
-        org.sonatype.aether.artifact.Artifact mainArtifact = RepositoryUtils.toArtifact( artifact );
+        org.eclipse.aether.artifact.Artifact mainArtifact = RepositoryUtils.toArtifact( artifact );
         mainArtifact = mainArtifact.setFile( source );
         request.addArtifact( mainArtifact );
 
@@ -103,7 +103,7 @@ public class DefaultArtifactDeployer
         {
             if ( metadata instanceof ProjectArtifactMetadata )
             {
-                org.sonatype.aether.artifact.Artifact pomArtifact = new SubArtifact( mainArtifact, "", "pom" );
+                org.eclipse.aether.artifact.Artifact pomArtifact = new SubArtifact( mainArtifact, "", "pom" );
                 pomArtifact = pomArtifact.setFile( ( (ProjectArtifactMetadata) metadata ).getFile() );
                 request.addArtifact( pomArtifact );
             }

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-compat/src/main/java/org/apache/maven/artifact/installer/DefaultArtifactInstaller.java
----------------------------------------------------------------------
diff --git a/maven-compat/src/main/java/org/apache/maven/artifact/installer/DefaultArtifactInstaller.java b/maven-compat/src/main/java/org/apache/maven/artifact/installer/DefaultArtifactInstaller.java
index d68a65c..cf31d2c 100644
--- a/maven-compat/src/main/java/org/apache/maven/artifact/installer/DefaultArtifactInstaller.java
+++ b/maven-compat/src/main/java/org/apache/maven/artifact/installer/DefaultArtifactInstaller.java
@@ -36,12 +36,12 @@ import org.apache.maven.project.artifact.ProjectArtifactMetadata;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
-import org.sonatype.aether.RepositorySystem;
-import org.sonatype.aether.RepositorySystemSession;
-import org.sonatype.aether.installation.InstallRequest;
-import org.sonatype.aether.installation.InstallationException;
-import org.sonatype.aether.util.DefaultRequestTrace;
-import org.sonatype.aether.util.artifact.SubArtifact;
+import org.eclipse.aether.RepositorySystem;
+import org.eclipse.aether.RepositorySystemSession;
+import org.eclipse.aether.installation.InstallRequest;
+import org.eclipse.aether.installation.InstallationException;
+import org.eclipse.aether.util.DefaultRequestTrace;
+import org.eclipse.aether.util.artifact.SubArtifact;
 
 /**
  * @author Jason van Zyl
@@ -79,7 +79,7 @@ public class DefaultArtifactInstaller
 
         request.setTrace( DefaultRequestTrace.newChild( null, legacySupport.getSession().getCurrentProject() ) );
 
-        org.sonatype.aether.artifact.Artifact mainArtifact = RepositoryUtils.toArtifact( artifact );
+        org.eclipse.aether.artifact.Artifact mainArtifact = RepositoryUtils.toArtifact( artifact );
         mainArtifact = mainArtifact.setFile( source );
         request.addArtifact( mainArtifact );
 
@@ -87,7 +87,7 @@ public class DefaultArtifactInstaller
         {
             if ( metadata instanceof ProjectArtifactMetadata )
             {
-                org.sonatype.aether.artifact.Artifact pomArtifact = new SubArtifact( mainArtifact, "", "pom" );
+                org.eclipse.aether.artifact.Artifact pomArtifact = new SubArtifact( mainArtifact, "", "pom" );
                 pomArtifact = pomArtifact.setFile( ( (ProjectArtifactMetadata) metadata ).getFile() );
                 request.addArtifact( pomArtifact );
             }

http://git-wip-us.apache.org/repos/asf/maven/blob/82b345e0/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
----------------------------------------------------------------------
diff --git a/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java b/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
index d24bf12..658dbda 100644
--- a/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
+++ b/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
@@ -28,7 +28,7 @@ import org.apache.maven.plugin.LegacySupport;
 import org.apache.maven.repository.RepositorySystem;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
-import org.sonatype.aether.RepositorySystemSession;
+import org.eclipse.aether.RepositorySystemSession;
 
 /**
  * @author jdcasey