Author: rfscholte
Date: Sat Jun 27 14:16:03 2015
New Revision: 1687929

URL: http://svn.apache.org/r1687929
Log:
DefaultArtifactsResolver now uses ArtifactResolver from maven-artifact-transfer 
(with succeeding tests)

Modified:
    
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/AbstractDependencyFilterMojo.java
    
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/resolvers/DefaultArtifactsResolver.java
    
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/translators/ClassifierTypeTranslator.java
    
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java
    
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestUnpackDependenciesMojo.java
    
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/translators/TestClassifierTypeTranslator.java

Modified: 
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/AbstractDependencyFilterMojo.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/AbstractDependencyFilterMojo.java?rev=1687929&r1=1687928&r2=1687929&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/AbstractDependencyFilterMojo.java
 (original)
+++ 
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/AbstractDependencyFilterMojo.java
 Sat Jun 27 14:16:03 2015
@@ -393,7 +393,8 @@ public abstract class AbstractDependency
         // if this did something, we need to resolve the new artifacts
         if ( StringUtils.isNotEmpty( classifier ) )
         {
-            ArtifactTranslator translator = new ClassifierTypeTranslator( 
this.classifier, this.type, this.factory );
+            ArtifactTranslator translator =
+                new ClassifierTypeTranslator( this.classifier, this.type, 
this.factory, this.getLocal() );
             artifacts = translator.translate( artifacts, getLog() );
 
             status = filterMarkedDependencies( artifacts );

Modified: 
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/resolvers/DefaultArtifactsResolver.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/resolvers/DefaultArtifactsResolver.java?rev=1687929&r1=1687928&r2=1687929&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/resolvers/DefaultArtifactsResolver.java
 (original)
+++ 
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/resolvers/DefaultArtifactsResolver.java
 Sat Jun 27 14:16:03 2015
@@ -42,7 +42,8 @@ public class DefaultArtifactsResolver
 
     boolean stopOnFailure;
 
-    public DefaultArtifactsResolver( ArtifactResolver theResolver, 
ProjectBuildingRequest buildingRequest, boolean theStopOnFailure )
+    public DefaultArtifactsResolver( ArtifactResolver theResolver, 
ProjectBuildingRequest buildingRequest,
+                                     boolean theStopOnFailure )
     {
         this.resolver = theResolver;
         this.buildingRequest = buildingRequest;

Modified: 
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/translators/ClassifierTypeTranslator.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/translators/ClassifierTypeTranslator.java?rev=1687929&r1=1687928&r2=1687929&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/translators/ClassifierTypeTranslator.java
 (original)
+++ 
maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/translators/ClassifierTypeTranslator.java
 Sat Jun 27 14:16:03 2015
@@ -19,11 +19,13 @@ package org.apache.maven.plugin.dependen
  * under the License.
  */
 
+import java.io.File;
 import java.util.HashSet;
 import java.util.Set;
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.plugin.logging.Log;
 import org.codehaus.plexus.util.StringUtils;
 
@@ -40,12 +42,23 @@ public class ClassifierTypeTranslator
     private String type;
 
     private ArtifactFactory factory;
+    
+    private ArtifactRepository repository;
 
-    public ClassifierTypeTranslator( String theClassifier, String theType, 
ArtifactFactory theFactory )
+    /**
+     * 
+     * @param theClassifier
+     * @param theType
+     * @param theFactory
+     * @param theRepository required when using system scoped artifacts 
+     */
+    public ClassifierTypeTranslator( String theClassifier, String theType, 
ArtifactFactory theFactory,
+                                     ArtifactRepository theRepository )
     {
         this.classifier = theClassifier;
         this.type = theType;
         this.factory = theFactory;
+        this.repository = theRepository;
     }
 
     /*
@@ -94,6 +107,11 @@ public class ClassifierTypeTranslator
             // should
             // reset it here so that it will pass other filters if needed
             newArtifact.setScope( artifact.getScope() );
+            
+            if ( Artifact.SCOPE_SYSTEM.equals( newArtifact.getScope() ) )
+            {
+                newArtifact.setFile( new File( repository.getBasedir(), 
repository.pathOf( newArtifact ) ) );
+            }
 
             results.add( newArtifact );
         }

Modified: 
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java?rev=1687929&r1=1687928&r2=1687929&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java
 (original)
+++ 
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java
 Sat Jun 27 14:16:03 2015
@@ -19,25 +19,30 @@ package org.apache.maven.plugin.dependen
  * under the License.
  */
 
-import org.apache.maven.plugin.MojoFailureException;
-
 import java.io.File;
 import java.io.IOException;
 import java.util.HashSet;
 import java.util.Set;
 
 import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.repository.LegacyLocalRepositoryManager;
 import org.apache.maven.artifact.resolver.filter.ScopeArtifactFilter;
+import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.plugin.dependency.AbstractDependencyMojoTestCase;
-import 
org.apache.maven.plugin.dependency.fromDependencies.CopyDependenciesMojo;
 import org.apache.maven.plugin.dependency.testUtils.DependencyTestUtils;
 import org.apache.maven.plugin.dependency.utils.DependencyUtil;
 import 
org.apache.maven.plugin.dependency.utils.markers.DefaultFileMarkerHandler;
+import org.apache.maven.plugin.testing.ArtifactStubFactory;
 import org.apache.maven.plugin.testing.stubs.StubArtifactRepository;
 import org.apache.maven.plugin.testing.stubs.StubArtifactResolver;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.util.StringUtils;
+import org.sonatype.aether.RepositorySystem;
+import org.sonatype.aether.repository.LocalRepositoryManager;
+import org.sonatype.aether.util.DefaultRepositorySystemSession;
 
 public class TestCopyDependenciesMojo
     extends AbstractDependencyMojoTestCase
@@ -60,6 +65,23 @@ public class TestCopyDependenciesMojo
         assertNotNull( mojo.getProject() );
         MavenProject project = mojo.getProject();
 
+        MavenSession session = newMavenSession( project );
+        setVariableValueToObject( mojo, "session", session );
+
+        DefaultRepositorySystemSession repoSession = 
(DefaultRepositorySystemSession) session.getRepositorySession();
+        
+        ArtifactRepository repo = new StubArtifactRepository( 
stubFactory.getWorkingDir().getAbsolutePath() ) {
+            @Override
+            public String pathOf( Artifact artifact )
+            {
+                return ArtifactStubFactory.getFormattedFileName( artifact, 
false );
+            }
+        };
+        mojo.setLocal( repo );
+        RepositorySystem repoSystem = lookup( RepositorySystem.class );
+        
+        repoSession.setLocalRepositoryManager( 
LegacyLocalRepositoryManager.wrap( repo, repoSystem ) );
+        
         Set<Artifact> artifacts = this.stubFactory.getScopedArtifacts();
         Set<Artifact> directArtifacts = 
this.stubFactory.getReleaseAndSnapshotArtifacts();
         artifacts.addAll( directArtifacts );
@@ -437,11 +459,18 @@ public class TestCopyDependenciesMojo
     {
         mojo.classifier = testClassifier;
         mojo.type = testType;
+        
+        for( Artifact artifact : mojo.getProject().getArtifacts() )
+        {
+            String type = testType != null ? testType : artifact.getType();
+            
+            stubFactory.createArtifact( artifact.getGroupId(), 
artifact.getArtifactId(), artifact.getVersion(), artifact.getScope(), type, 
testClassifier );
+            
+        }
 
         // init classifier things
         mojo.setFactory( DependencyTestUtils.getArtifactFactory() );
         mojo.setResolver( new StubArtifactResolver( stubFactory, false, false 
) );
-        mojo.setLocal( new StubArtifactRepository( 
this.testDir.getAbsolutePath() ) );
 
         mojo.execute();
 

Modified: 
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestUnpackDependenciesMojo.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestUnpackDependenciesMojo.java?rev=1687929&r1=1687928&r2=1687929&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestUnpackDependenciesMojo.java
 (original)
+++ 
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestUnpackDependenciesMojo.java
 Sat Jun 27 14:16:03 2015
@@ -21,8 +21,11 @@ package org.apache.maven.plugin.dependen
 
 import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.repository.LegacyLocalRepositoryManager;
 import org.apache.maven.artifact.resolver.filter.ScopeArtifactFilter;
 import org.apache.maven.artifact.versioning.VersionRange;
+import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.dependency.AbstractDependencyMojoTestCase;
 import 
org.apache.maven.plugin.dependency.fromDependencies.UnpackDependenciesMojo;
@@ -30,10 +33,13 @@ import org.apache.maven.plugin.dependenc
 import org.apache.maven.plugin.dependency.testUtils.DependencyTestUtils;
 import org.apache.maven.plugin.dependency.utils.DependencyUtil;
 import 
org.apache.maven.plugin.dependency.utils.markers.DefaultFileMarkerHandler;
+import org.apache.maven.plugin.testing.ArtifactStubFactory;
 import org.apache.maven.plugin.testing.stubs.StubArtifactRepository;
 import org.apache.maven.plugin.testing.stubs.StubArtifactResolver;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.util.StringUtils;
+import org.sonatype.aether.RepositorySystem;
+import org.sonatype.aether.util.DefaultRepositorySystemSession;
 
 import java.io.File;
 import java.io.IOException;
@@ -72,6 +78,23 @@ public class TestUnpackDependenciesMojo
         assertNotNull( mojo );
         assertNotNull( mojo.getProject() );
         MavenProject project = mojo.getProject();
+        
+        MavenSession session = newMavenSession( project );
+        setVariableValueToObject( mojo, "session", session );
+        
+        DefaultRepositorySystemSession repoSession = 
(DefaultRepositorySystemSession) session.getRepositorySession();
+        
+        ArtifactRepository repo = new StubArtifactRepository( 
stubFactory.getWorkingDir().getAbsolutePath() ) {
+            @Override
+            public String pathOf( Artifact artifact )
+            {
+                return ArtifactStubFactory.getFormattedFileName( artifact, 
false );
+            }
+        };
+        mojo.setLocal( repo );
+        RepositorySystem repoSystem = lookup( RepositorySystem.class );
+        
+        repoSession.setLocalRepositoryManager( 
LegacyLocalRepositoryManager.wrap( repo, repoSystem ) );
 
         Set<Artifact> artifacts = this.stubFactory.getScopedArtifacts();
         Set<Artifact> directArtifacts = 
this.stubFactory.getReleaseAndSnapshotArtifacts();
@@ -515,7 +538,6 @@ public class TestUnpackDependenciesMojo
         mojo.type = testType;
         mojo.setFactory( DependencyTestUtils.getArtifactFactory() );
         mojo.setResolver( new StubArtifactResolver( stubFactory, false, false 
) );
-        mojo.setLocal( new StubArtifactRepository( 
this.testDir.getAbsolutePath() ) );
 
         for (Artifact artifact : mojo.getProject().getArtifacts())
         {

Modified: 
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/translators/TestClassifierTypeTranslator.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/translators/TestClassifierTypeTranslator.java?rev=1687929&r1=1687928&r2=1687929&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/translators/TestClassifierTypeTranslator.java
 (original)
+++ 
maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/translators/TestClassifierTypeTranslator.java
 Sat Jun 27 14:16:03 2015
@@ -29,10 +29,12 @@ import org.apache.maven.artifact.factory
 import org.apache.maven.artifact.factory.DefaultArtifactFactory;
 import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
 import org.apache.maven.artifact.handler.manager.DefaultArtifactHandlerManager;
+import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.plugin.dependency.AbstractDependencyMojoTestCase;
 import 
org.apache.maven.plugin.dependency.testUtils.DependencyArtifactStubFactory;
 import org.apache.maven.plugin.logging.Log;
 import org.apache.maven.plugin.testing.SilentLog;
+import org.apache.maven.plugin.testing.stubs.StubArtifactRepository;
 
 /**
  * @author brianf
@@ -44,6 +46,8 @@ public class TestClassifierTypeTranslato
     Set<Artifact> artifacts = new HashSet<Artifact>();
 
     ArtifactFactory artifactFactory;
+    
+    ArtifactRepository artifactRepository;
 
     Log log = new SilentLog();
 
@@ -58,6 +62,8 @@ public class TestClassifierTypeTranslato
         artifactFactory = new DefaultArtifactFactory();
         this.setVariableValueToObject( artifactFactory, 
"artifactHandlerManager", manager );
 
+        artifactRepository = new StubArtifactRepository( null );
+        
         DependencyArtifactStubFactory factory = new 
DependencyArtifactStubFactory( null, false );
         artifacts = factory.getMixedArtifacts();
     }
@@ -76,7 +82,7 @@ public class TestClassifierTypeTranslato
     {
         String type = "zip";
 
-        ArtifactTranslator at = new ClassifierTypeTranslator( classifier, 
type, artifactFactory );
+        ArtifactTranslator at = new ClassifierTypeTranslator( classifier, 
type, artifactFactory, artifactRepository );
         Set<Artifact> results = at.translate( artifacts, log );
 
         for ( Artifact artifact : artifacts )
@@ -116,7 +122,7 @@ public class TestClassifierTypeTranslato
     {
         String classifier = "jdk5";
 
-        ArtifactTranslator at = new ClassifierTypeTranslator( classifier, 
type, artifactFactory );
+        ArtifactTranslator at = new ClassifierTypeTranslator( classifier, 
type, artifactFactory, artifactRepository );
         Set<Artifact> results = at.translate( artifacts, log );
 
         for ( Artifact artifact : artifacts )
@@ -146,7 +152,7 @@ public class TestClassifierTypeTranslato
     {
         String classifier = "jdk14";
         String type = "sources";
-        ArtifactTranslator at = new ClassifierTypeTranslator( classifier, 
type, artifactFactory );
+        ArtifactTranslator at = new ClassifierTypeTranslator( classifier, 
type, artifactFactory, artifactRepository );
         Set<Artifact> results = at.translate( artifacts, log );
 
         for ( Artifact artifact : artifacts )
@@ -175,7 +181,7 @@ public class TestClassifierTypeTranslato
     {
         String classifier = "class";
         String type = "type";
-        ClassifierTypeTranslator at = new ClassifierTypeTranslator( 
classifier, type, artifactFactory );
+        ClassifierTypeTranslator at = new ClassifierTypeTranslator( 
classifier, type, artifactFactory, null );
 
         assertEquals( classifier, at.getClassifier() );
         assertEquals( type, at.getType() );


Reply via email to