You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2007/11/05 15:24:54 UTC
svn commit: r592009 - in
/maven/components/branches/maven-2.0.x/maven-artifact/src:
main/java/org/apache/maven/artifact/resolver/
test/java/org/apache/maven/artifact/resolver/
Author: hboutemy
Date: Mon Nov 5 06:24:53 2007
New Revision: 592009
URL: http://svn.apache.org/viewvc?rev=592009&view=rev
Log:
[MANTTASKS-22] ensure proper order of artifacts in ArtifactResolutionResult
Modified:
maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionResult.java
maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java
maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java
Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionResult.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionResult.java?rev=592009&r1=592008&r2=592009&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionResult.java (original)
+++ maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionResult.java Mon Nov 5 06:24:53 2007
@@ -19,8 +19,8 @@
* under the License.
*/
-import java.util.HashSet;
import java.util.Iterator;
+import java.util.LinkedHashSet;
import java.util.Set;
/**
@@ -42,7 +42,7 @@
{
if ( artifacts == null )
{
- artifacts = new HashSet();
+ artifacts = new LinkedHashSet();
for ( Iterator it = resolutionNodes.iterator(); it.hasNext(); )
{
Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java?rev=592009&r1=592008&r2=592009&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java (original)
+++ maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java Mon Nov 5 06:24:53 2007
@@ -36,6 +36,8 @@
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -63,7 +65,7 @@
ArtifactMetadataSource source, ArtifactFilter filter, List listeners )
throws ArtifactResolutionException
{
- Map resolvedArtifacts = new HashMap();
+ Map resolvedArtifacts = new LinkedHashMap();
ResolutionNode root = new ResolutionNode( originatingArtifact, remoteRepositories );
@@ -74,7 +76,7 @@
recurse( root, resolvedArtifacts, versionMap, localRepository, remoteRepositories, source, filter,
listeners );
- Set set = new HashSet();
+ Set set = new LinkedHashSet();
for ( Iterator i = resolvedArtifacts.values().iterator(); i.hasNext(); )
{
Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java?rev=592009&r1=592008&r2=592009&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java (original)
+++ maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java Mon Nov 5 06:24:53 2007
@@ -667,6 +667,23 @@
assertEquals( "Check artifact list", createSet( new Object[]{a.artifact, b.artifact} ), res.getArtifacts() );
}
+ public void testResolveOrder()
+ throws ArtifactResolutionException, InvalidVersionSpecificationException
+ {
+ ArtifactSpec m = createArtifactSpec( "m", "1.0" );
+ ArtifactSpec n = createArtifactSpec( "n", "1.0" );
+
+ ArtifactResolutionResult res = collect( createSet( new Object[]{m.artifact, n.artifact} ) );
+ Iterator i = res.getArtifacts().iterator();
+ assertEquals( "m should be first", m.artifact, i.next() );
+ assertEquals( "n should be second", n.artifact, i.next() );
+
+ res = collect( createSet( new Object[]{n.artifact, m.artifact} ) );
+ i = res.getArtifacts().iterator();
+ assertEquals( "n should be first", n.artifact, i.next() );
+ assertEquals( "m should be second", m.artifact, i.next() );
+ }
+
private Artifact getArtifact( String id, Set artifacts )
{
for ( Iterator i = artifacts.iterator(); i.hasNext(); )