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 2008/03/03 18:46:51 UTC

svn commit: r633204 - in /maven/ant-tasks/branches/maven-ant-tasks-2.0.x: ./ src/main/java/org/apache/maven/artifact/ant/ src/test/

Author: hboutemy
Date: Mon Mar  3 09:46:50 2008
New Revision: 633204

URL: http://svn.apache.org/viewvc?rev=633204&view=rev
Log:
[MANTTASKS-107] use repository defined in pom to download parent pom when defining pom reference (merged from trunk r633186-633187)

Added:
    maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent2.xml   (contents, props changed)
      - copied, changed from r633201, maven/ant-tasks/trunk/src/test/pom-with-parent2.xml
Modified:
    maven/ant-tasks/branches/maven-ant-tasks-2.0.x/sample.build.xml
    maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java
    maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java
    maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/Pom.java
    maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent.xml

Modified: maven/ant-tasks/branches/maven-ant-tasks-2.0.x/sample.build.xml
URL: http://svn.apache.org/viewvc/maven/ant-tasks/branches/maven-ant-tasks-2.0.x/sample.build.xml?rev=633204&r1=633203&r2=633204&view=diff
==============================================================================
--- maven/ant-tasks/branches/maven-ant-tasks-2.0.x/sample.build.xml (original)
+++ maven/ant-tasks/branches/maven-ant-tasks-2.0.x/sample.build.xml Mon Mar  3 09:46:50 2008
@@ -489,5 +489,11 @@
     <echo>Artifact ID = ${my.maven.project.artifactId}</echo>
 
     <echo>Parent Artifact ID = ${my.maven.project.parent.artifactId}</echo>
+
+  	<!-- MANTTASKS-107 repository defined in pom must be used to download parent pom -->
+    <delete dir="${basedir}/target/tmp"/>
+    <artifact:pom file="${user.dir}/src/test/pom-with-parent2.xml" id="my.maven.project2">
+      <localRepository path="${basedir}/target/tmp"/>
+    </artifact:pom>
   </target>
 </project>

Modified: maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java
URL: http://svn.apache.org/viewvc/maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java?rev=633204&r1=633203&r2=633204&view=diff
==============================================================================
--- maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java (original)
+++ maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/AbstractArtifactWithRepositoryTask.java Mon Mar  3 09:46:50 2008
@@ -23,6 +23,7 @@
 import java.util.Iterator;
 import java.util.List;
 
+import org.apache.maven.model.Repository;
 import org.apache.tools.ant.Project;
 
 /**
@@ -58,17 +59,36 @@
         return (policy == null) || policy.isEnabled() ? "enabled" : "disabled";
     }
 
+    protected List createRemoteArtifactRepositories()
+    {
+    	return createRemoteArtifactRepositories( null );
+    }
+
     /**
      * Create the list of ArtifactRepository-ies where artifacts can be downloaded. If
      * no remote repository has been configured, adds central repository.
+     * @param pomRepositories additionnal repositories defined in pom (or null if none)
      * @return the list of ArtifactRepository-ies
      * @see #createRemoteArtifactRepository(RemoteRepository)
      */
-    protected List createRemoteArtifactRepositories()
+    protected List createRemoteArtifactRepositories(List pomRepositories)
     {
+        List remoteRepositories = new ArrayList();
+        remoteRepositories.addAll( getRemoteRepositories() );
+
         if ( getRemoteRepositories().isEmpty() )
         {
-            addRemoteRepository( getDefaultRemoteRepository() );
+        	remoteRepositories.add( getDefaultRemoteRepository() );
+        }
+
+        if ( pomRepositories != null )
+        {
+	        for ( Iterator i = pomRepositories.iterator(); i.hasNext(); )
+	        {
+	            Repository pomRepository = (Repository) i.next();
+	
+	            remoteRepositories.add( createAntRemoteRepository( pomRepository ) );
+	        }
         }
 
         log( "Using remote repositories:", Project.MSG_VERBOSE );

Modified: maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java
URL: http://svn.apache.org/viewvc/maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java?rev=633204&r1=633203&r2=633204&view=diff
==============================================================================
--- maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java (original)
+++ maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java Mon Mar  3 09:46:50 2008
@@ -32,7 +32,6 @@
 import org.apache.maven.artifact.resolver.filter.ScopeArtifactFilter;
 import org.apache.maven.artifact.resolver.filter.TypeArtifactFilter;
 import org.apache.maven.model.Dependency;
-import org.apache.maven.model.Repository;
 import org.apache.maven.project.artifact.InvalidDependencyVersionException;
 import org.apache.maven.project.artifact.MavenMetadataSource;
 import org.apache.tools.ant.BuildException;
@@ -112,13 +111,6 @@
             pom = createDummyPom( localRepo );
         }
 
-        for ( Iterator i = pom.getRepositories().iterator(); i.hasNext(); )
-        {
-            Repository pomRepository = (Repository) i.next();
-
-            addRemoteRepository( createAntRemoteRepository( pomRepository ) );
-        }
-
         if ( dependencies.isEmpty() )
         {
             log( "There were no dependencies specified", Project.MSG_WARN );
@@ -129,7 +121,7 @@
         ArtifactResolutionResult result;
         Set artifacts;
 
-        List remoteArtifactRepositories = createRemoteArtifactRepositories();
+        List remoteArtifactRepositories = createRemoteArtifactRepositories( pom.getRepositories() );
 
         try
         {

Modified: maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/Pom.java
URL: http://svn.apache.org/viewvc/maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/Pom.java?rev=633204&r1=633203&r2=633204&view=diff
==============================================================================
--- maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/Pom.java (original)
+++ maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/main/java/org/apache/maven/artifact/ant/Pom.java Mon Mar  3 09:46:50 2008
@@ -211,7 +211,7 @@
             {
                 MavenMetadataSource metadataSource = (MavenMetadataSource) lookup( ArtifactMetadataSource.ROLE );
                 ArtifactResolver resolver = (ArtifactResolver) lookup( ArtifactResolver.ROLE );
-                List remoteRepositories = createRemoteArtifactRepositories();
+                List remoteRepositories = createRemoteArtifactRepositories( model.getRepositories() );
 
                 resolver.resolveTransitively( Collections.singleton( parentArtifact ),
                                               createDummyArtifact(), createLocalArtifactRepository(),

Modified: maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent.xml
URL: http://svn.apache.org/viewvc/maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent.xml?rev=633204&r1=633203&r2=633204&view=diff
==============================================================================
--- maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent.xml (original)
+++ maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent.xml Mon Mar  3 09:46:50 2008
@@ -1,4 +1,5 @@
-<project>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <parent>
     <artifactId>pom</artifactId>
     <groupId>it.ant-tasks</groupId>

Copied: maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent2.xml (from r633201, maven/ant-tasks/trunk/src/test/pom-with-parent2.xml)
URL: http://svn.apache.org/viewvc/maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent2.xml?p2=maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent2.xml&p1=maven/ant-tasks/trunk/src/test/pom-with-parent2.xml&r1=633201&r2=633204&rev=633204&view=diff
==============================================================================
    (empty)

Propchange: maven/ant-tasks/branches/maven-ant-tasks-2.0.x/src/test/pom-with-parent2.xml
------------------------------------------------------------------------------
    svn:eol-style = native