You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2009/08/17 17:16:57 UTC

svn commit: r805008 - /maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java

Author: bentmann
Date: Mon Aug 17 15:16:57 2009
New Revision: 805008

URL: http://svn.apache.org/viewvc?rev=805008&view=rev
Log:
[MNG-4304] [regression] MavenProject.getDependencyArtifacts() not set

Modified:
    maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java

Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java?rev=805008&r1=805007&r2=805008&view=diff
==============================================================================
--- maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java (original)
+++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java Mon Aug 17 15:16:57 2009
@@ -20,6 +20,8 @@
  */
 
 import java.util.Collection;
+import java.util.HashSet;
+import java.util.LinkedHashSet;
 import java.util.Set;
 
 import org.apache.maven.artifact.Artifact;
@@ -32,6 +34,7 @@
 import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
 import org.apache.maven.artifact.resolver.filter.OrArtifactFilter;
 import org.apache.maven.artifact.resolver.filter.ScopeArtifactFilter;
+import org.apache.maven.model.Dependency;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.artifact.ProjectArtifact;
 import org.apache.maven.repository.RepositorySystem;
@@ -101,7 +104,26 @@
         
         ArtifactResolutionResult result = repositorySystem.resolve( request );                
         resolutionErrorHandler.throwErrors( request, result );
+
         project.setArtifacts( result.getArtifacts() );
-        return result.getArtifacts();        
-    }  
+
+        Set<String> directDependencies = new HashSet<String>( project.getDependencies().size() * 2 );
+        for ( Dependency dependency : project.getDependencies() )
+        {
+            directDependencies.add( dependency.getManagementKey() );
+        }
+
+        Set<Artifact> dependencyArtifacts = new LinkedHashSet<Artifact>( project.getDependencies().size() * 2 );
+        for ( Artifact artifact : result.getArtifacts() )
+        {
+            if ( directDependencies.contains( artifact.getDependencyConflictId() ) )
+            {
+                dependencyArtifacts.add( artifact );
+            }
+        }
+        project.setDependencyArtifacts( dependencyArtifacts );
+
+        return result.getArtifacts();
+    }
+
 }