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/06/06 13:35:57 UTC
svn commit: r782231 - in /maven/components/trunk:
maven-core/src/main/java/org/apache/maven/project/RepositoryModelResolver.java
maven-model-builder/src/main/java/org/apache/maven/model/resolution/ModelResolver.java
Author: bentmann
Date: Sat Jun 6 11:35:57 2009
New Revision: 782231
URL: http://svn.apache.org/viewvc?rev=782231&view=rev
Log:
o Fixed aggregation of remote repositories
Modified:
maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/RepositoryModelResolver.java
maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/resolution/ModelResolver.java
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/RepositoryModelResolver.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/RepositoryModelResolver.java?rev=782231&r1=782230&r2=782231&view=diff
==============================================================================
--- maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/RepositoryModelResolver.java (original)
+++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/RepositoryModelResolver.java Sat Jun 6 11:35:57 2009
@@ -21,7 +21,9 @@
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Iterator;
import java.util.List;
+import java.util.Map;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
@@ -88,7 +90,19 @@
try
{
ArtifactRepository repo = repositorySystem.buildArtifactRepository( repository );
- remoteRepositories.addAll( 0, repositorySystem.getMirrors( Arrays.asList( repo ) ) );
+
+ ArtifactRepository mirror = repositorySystem.getMirrors( Arrays.asList( repo ) ).get( 0 );
+
+ for ( Iterator<ArtifactRepository> it = remoteRepositories.iterator(); it.hasNext(); )
+ {
+ ArtifactRepository remoteRepository = it.next();
+ if ( mirror.getId().equals( remoteRepository.getId() ) )
+ {
+ it.remove();
+ }
+ }
+
+ remoteRepositories.add( 0, mirror );
}
catch ( org.apache.maven.artifact.InvalidRepositoryException e )
{
Modified: maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/resolution/ModelResolver.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/resolution/ModelResolver.java?rev=782231&r1=782230&r2=782231&view=diff
==============================================================================
--- maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/resolution/ModelResolver.java (original)
+++ maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/resolution/ModelResolver.java Sat Jun 6 11:35:57 2009
@@ -33,9 +33,25 @@
public interface ModelResolver
{
+ /**
+ * Tries to resolve the POM for the specified coordinates.
+ *
+ * @param groupId The group identifier of the POM, must not be {@code null}.
+ * @param artifactId The artifact identifier of the POM, must not be {@code null}.
+ * @param version The version of the POM, must not be {@code null}.
+ * @return The source of the requested POM, never {@code null}.
+ * @throws UnresolvableModelException If the POM could not be resolved from any configured repository.
+ */
ModelSource resolveModel( String groupId, String artifactId, String version )
throws UnresolvableModelException;
+ /**
+ * Adds a repository to use for subsequent resolution requests. The order in which repositories are added matters.
+ * When multiple repositories with the same identifier are added, only the last repository being added will be used.
+ *
+ * @param repository The repository to add to the internal search chain, must not be {@code null}.
+ * @throws InvalidRepositoryException If the repository could not be added (e.g. due to invalid URL or layout).
+ */
void addRepository( Repository repository )
throws InvalidRepositoryException;