Author: ogusakov Date: Wed Apr 1 04:49:10 2009 New Revision: 760781 URL: http://svn.apache.org/viewvc?rev=760781&view=rev Log: added tree-based resolution result to request/response
Modified: maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MavenArtifactMetadata.java maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraph.java maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraphNode.java maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataResolutionResult.java Modified: maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MavenArtifactMetadata.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MavenArtifactMetadata.java?rev=760781&r1=760780&r2=760781&view=diff ============================================================================== --- maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MavenArtifactMetadata.java (original) +++ maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MavenArtifactMetadata.java Wed Apr 1 04:49:10 2009 @@ -19,6 +19,7 @@ package org.apache.maven.repository; + /** * * @@ -28,6 +29,8 @@ */ public class MavenArtifactMetadata { + public static final String DEFAULT_TYPE = "jar"; + String groupId; String artifactId; String version; @@ -107,4 +110,13 @@ this.scope = scope; } + @Override + public String toString() + { + return getGroupId()+":"+getArtifactId()+":"+getVersion() + +":" + (getClassifier() == null ? "" : getClassifier() ) + +":" + (getType() == null ? DEFAULT_TYPE : getType() ) + ; + } + } Modified: maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraph.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraph.java?rev=760781&r1=760780&r2=760781&view=diff ============================================================================== --- maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraph.java (original) +++ maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraph.java Wed Apr 1 04:49:10 2009 @@ -19,6 +19,9 @@ package org.apache.maven.repository; +import java.util.ArrayList; +import java.util.Collection; + /** * * @@ -28,5 +31,23 @@ */ public class MetadataGraph { + Collection<MetadataGraphNode> nodes; + MetadataGraphNode entry; + + public MetadataGraph( MetadataGraphNode entry ) + { + this(); + + this.entry = entry; + } + + public MetadataGraph() + { + nodes = new ArrayList<MetadataGraphNode>( 64 ); + } + public void addNode( MetadataGraphNode node ) + { + nodes.add( node ); + } } Modified: maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraphNode.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraphNode.java?rev=760781&r1=760780&r2=760781&view=diff ============================================================================== --- maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraphNode.java (original) +++ maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataGraphNode.java Wed Apr 1 04:49:10 2009 @@ -31,6 +31,35 @@ public class MetadataGraphNode { MavenArtifactMetadata metadata; + List<MetadataGraphNode> inNodes; List<MetadataGraphNode> exNodes; + + @Override + public boolean equals( Object obj ) + { + if( obj == null ) + return false; + + if( MetadataGraphNode.class.isAssignableFrom( obj.getClass() ) ) + { + MetadataGraphNode node2 = (MetadataGraphNode) obj; + + if( node2.metadata == null ) + return metadata == null; + + return metadata == null ? false: metadata.toString().equals( node2.metadata.toString() ); + } + else + return super.equals( obj ); + } + + @Override + public int hashCode() + { + if( metadata == null ) + return super.hashCode(); + + return metadata.toString().hashCode(); + } } Modified: maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataResolutionResult.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataResolutionResult.java?rev=760781&r1=760780&r2=760781&view=diff ============================================================================== --- maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataResolutionResult.java (original) +++ maven/components/trunk/maven-repository/src/main/java/org/apache/maven/repository/MetadataResolutionResult.java Wed Apr 1 04:49:10 2009 @@ -66,7 +66,11 @@ private Set<Artifact> artifacts; + private MetadataGraph dirtyTree; + private MetadataGraph resolvedTree; + + private MetadataGraph resolvedGraph; public Artifact getOriginatingArtifact() {