Author: veithen
Date: Tue Aug 24 19:44:35 2010
New Revision: 988689

URL: http://svn.apache.org/viewvc?rev=988689&view=rev
Log:
Use the new axis2-repo-maven-plugin to build the test repositories in the 
integration module and add addressing.mar as a Maven dependency. This means 
that the integration module can now be built without building the addressing 
module first.

Modified:
    axis/axis2/java/core/trunk/modules/integration/itest-build.xml
    axis/axis2/java/core/trunk/modules/integration/pom.xml
    
axis/axis2/java/core/trunk/modules/tool/axis2-repo-maven-plugin/src/main/java/org/apache/axis2/maven2/repo/AbstractCreateRepositoryMojo.java

Modified: axis/axis2/java/core/trunk/modules/integration/itest-build.xml
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/integration/itest-build.xml?rev=988689&r1=988688&r2=988689&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/integration/itest-build.xml (original)
+++ axis/axis2/java/core/trunk/modules/integration/itest-build.xml Tue Aug 24 
19:44:35 2010
@@ -25,8 +25,6 @@
                <!-- Set a property that can be picked up from the ant 
build.xml's -->
 
                <echo>${maven.test.path}</echo>
-               <!-- copy the mars so that they are available on the test 
classpath -->
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar" 
tofile="target/test-classes/modules/addressing-${addressing_version}.mar" />
 
                <property name="axis2.home" value="${basedir}/target" />
                <property name="maven.junit.jvmargs" value="" />
@@ -186,83 +184,9 @@
        </target>
 
        <target name="build-repos" unless="test.skip">
-               <mkdir dir="target/test-resources/samples/modules"/>
-               <mkdir dir="target/test-resources/samples/conf"/>
-               <mkdir dir="target/test-resources/repository-client/modules"/>
-               <mkdir dir="target/test-resources/repository-client/conf"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                         
tofile="target/test-resources/samples/modules/addressing-${addressing_version}.mar"/>
-               <copy file="conf/axis2.xml"
-                         
tofile="target/test-resources/samples/conf/axis2.xml"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                         
tofile="target/test-resources/repository-client/modules/addressing-${addressing_version}.mar"/>
-               <copy file="conf/axis2.xml"
-                         
tofile="target/test-resources/repository-client/conf/axis2.xml"/>
                <mkdir dir="target/toWar/services/"/>
 
-               <mkdir dir="target/test-resources/local"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                                         
tofile="target/test-resources/local/addressing.mar"/>
-
-               <!-- Create Chunked enabled Repository -->
-               <mkdir dir="target/test-resources/chunking-enabledRepository"/>
-               <mkdir 
dir="target/test-resources/chunking-enabledRepository/conf"/>
-               <copy 
file="test/org/apache/axis2/engine/chunking-enabled-axis2.xml"
-                         
tofile="target/test-resources/chunking-enabledRepository/conf/axis2.xml"/>
-
-               <!-- Create Chunked disabled Repository -->
-               <mkdir dir="target/test-resources/chunking-disabledRepository"/>
-               <mkdir 
dir="target/test-resources/chunking-disabledRepository/conf"/>
-               <copy 
file="test/org/apache/axis2/engine/chunking-disabled-axis2.xml"
-                         
tofile="target/test-resources/chunking-disabledRepository/conf/axis2.xml"/>
-
                <mkdir dir="target/test-resources/MessageContextInjectionRepo"/>
-               <mkdir dir="target/test-resources/integrationRepo/modules"/>
-               <mkdir dir="target/test-resources/integrationRepo/conf"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                         
tofile="target/test-resources/integrationRepo/modules/addressing-${addressing_version}.mar"/>
-               <copy file="conf/axis2.xml"
-                         
tofile="target/test-resources/integrationRepo/conf/axis2.xml"/>
-
-
-               <!-- Commons transport enabled enabled Repository -->
-               <mkdir 
dir="target/test-resources/commons-http-enabledRepository"/>
-               <mkdir 
dir="target/test-resources/commons-http-enabledRepository/conf"/>
-               <copy 
file="test/org/apache/axis2/engine/commons-http-enabled-axis2.xml"
-                         
tofile="target/test-resources/commons-http-enabledRepository/conf/axis2.xml"/>
-
-               <!-- MTOM enabled Repository -->
-               <mkdir dir="target/test-resources/MTOM-enabledRepository"/>
-               <mkdir dir="target/test-resources/MTOM-enabledRepository/conf"/>
-               <mkdir 
dir="target/test-resources/MTOM-enabledRepository/modules"/>
-               <copy file="test-resources/mtom/MTOM-enabled-axis2.xml"
-                         
tofile="target/test-resources/MTOM-enabledRepository/conf/axis2.xml"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                             
tofile="target/test-resources/MTOM-enabledRepository/modules/addressing-${addressing_version}.mar"/>
-
-               <!-- MTOM file cache enabled Repository -->
-               <mkdir 
dir="target/test-resources/MTOM-fileCache-enabledRepository"/>
-               <mkdir 
dir="target/test-resources/MTOM-fileCache-enabledRepository/conf"/>
-               <copy 
file="test-resources/mtom/MTOM-fileCache-enabled-axis2.xml"
-                         
tofile="target/test-resources/MTOM-fileCache-enabledRepository/conf/axis2.xml"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                                             
tofile="target/test-resources/MTOM-fileCache-enabledRepository/modules/addressing-${addressing_version}.mar"/>
-
-               <!-- SwA enabled Repository -->
-               <mkdir dir="target/test-resources/SwA-enabledRepository"/>
-               <mkdir dir="target/test-resources/SwA-enabledRepository/conf"/>
-               <copy file="test-resources/swa/SwA-enabled-axis2.xml"
-                           
tofile="target/test-resources/SwA-enabledRepository/conf/axis2.xml"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                             
tofile="target/test-resources/SwA-enabledRepository/modules/addressing-${addressing_version}.mar"/>
-
-               <!-- SwA file cache enabled Repository -->
-               <mkdir 
dir="target/test-resources/SwA-fileCache-enabledRepository"/>
-               <mkdir 
dir="target/test-resources/SwA-fileCache-enabledRepository/conf"/>
-               <copy file="test-resources/swa/SwA-fileCache-enabled-axis2.xml"
-                           
tofile="target/test-resources/SwA-fileCache-enabledRepository/conf/axis2.xml"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                                             
tofile="target/test-resources/SwA-fileCache-enabledRepository/modules/addressing-${addressing_version}.mar"/>
 
                <!-- Spring resources -->
                <mkdir dir="target/test-resources/spring"/>
@@ -270,46 +194,11 @@
                          
tofile="target/test-classes/spring/applicationContext.xml"/>
 
                <!-- Test with target resolver  -->
-               <mkdir dir="target/test-resources/deployment_repo"/>
                <mkdir dir="target/test-resources/deployment"/>
-               <mkdir dir="target/test-resources/deployment_repo/conf"/>
-               <mkdir dir="target/test-resources/deployment_repo/services"/>
-               <mkdir dir="target/test-resources/deployment_repo/modules"/>
 
                <copy file="test-resources/deployment/server-transport.xml"
                          
tofile="target/test-resources/deployment/server-transport.xml"/>
-<copy file="test-resources/deployment/deployment.both.axis2.xml"
-                         
tofile="target/test-resources/deployment_repo/conf/axis2.xml"/>
-
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                         
tofile="target/test-resources/deployment_repo/modules/addressing-${addressing_version}.mar"/>
-
 
-               <!-- Standard repository -->
-               <mkdir dir="target/Repository"/>
-               <mkdir dir="target/Repository/conf"/>
-               <mkdir dir="target/Repository/services"/>
-               <mkdir dir="target/Repository/modules"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                         
tofile="target/Repository/modules/addressing-${addressing_version}.mar"/>
-               <copy file="conf/axis2.xml"
-                         tofile="target/Repository/conf/axis2.xml"/>
-
-               <mkdir dir="target/perf2/build/repo/conf"/>
-               <mkdir dir="target/perf/build/repo/conf"/>
-
-               <copy file="conf/axis2.xml"
-                         tofile="target/perf2/build/repo/conf/axis2.xml"/>
-               <copy file="conf/axis2.xml"
-                         tofile="target/perf/build/repo/conf/axis2.xml"/>
-
-               <mkdir dir="target/perf2/build/repo/modules"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                         
tofile="target/perf2/build/repo/modules/addressing-${addressing_version}.mar"/>
-
-               <mkdir dir="target/perf/build/repo/modules"/>
-               <copy 
file="../addressing/target/addressing-${addressing_version}.mar"
-                         
tofile="target/perf/build/repo/modules/addressing-${addressing_version}.mar"/>
         <antcall target="build-jaxrs-services"/>
     </target>
        <target name="build-soap12-services">
@@ -328,11 +217,5 @@
                                  dir="test-resources/jaxrs/archiveTestModule"/>
         <ant antfile="build.xml" inheritall="true" inheritrefs="true"
                                  dir="test-resources/jaxrs/pojoTestModule"/>
-        <mkdir dir="target/test-resources/jaxrs-repository/conf/"/>
-        <copy file="test-resources/jaxrs/pojo-enabled-axis2.xml"
-                         
tofile="target/test-resources/jaxrs-repository/conf/axis2.xml"/>
-        <mkdir dir="target/test-resources/jaxrs-repository/modules"/>
-               <copy file="../addressing/target/addressing-SNAPSHOT.mar"
-                         
tofile="target/test-resources/jaxrs-repository/modules/addressing-SNAPSHOT.mar"/>
     </target>
 </project>

Modified: axis/axis2/java/core/trunk/modules/integration/pom.xml
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/integration/pom.xml?rev=988689&r1=988688&r2=988689&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/integration/pom.xml (original)
+++ axis/axis2/java/core/trunk/modules/integration/pom.xml Tue Aug 24 19:44:35 
2010
@@ -137,6 +137,12 @@
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.axis2</groupId>
+            <artifactId>addressing</artifactId>
+            <version>${project.version}</version>
+            <type>mar</type>
+        </dependency>
+        <dependency>
             <groupId>xmlunit</groupId>
             <artifactId>xmlunit</artifactId>
             <scope>test</scope>
@@ -333,6 +339,218 @@
                 </configuration>
             </plugin>
             <plugin>
+                <groupId>org.apache.axis2</groupId>
+                <artifactId>axis2-repo-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>default</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-classes</outputDirectory>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>samples</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/samples</outputDirectory>
+                            <axis2xml>conf/axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>repository-client</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/repository-client</outputDirectory>
+                            <axis2xml>conf/axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>local</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/local</outputDirectory>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>chunking-enabled</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/chunking-enabledRepository</outputDirectory>
+                            
<axis2xml>test/org/apache/axis2/engine/chunking-enabled-axis2.xml</axis2xml>
+                            <includeModules>false</includeModules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>chunking-disabled</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/chunking-disabledRepository</outputDirectory>
+                            
<axis2xml>test/org/apache/axis2/engine/chunking-disabled-axis2.xml</axis2xml>
+                            <includeModules>false</includeModules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>integration</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/integrationRepo</outputDirectory>
+                            <axis2xml>conf/axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>commons-http-enabled</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/commons-http-enabledRepository</outputDirectory>
+                            
<axis2xml>test/org/apache/axis2/engine/commons-http-enabled-axis2.xml</axis2xml>
+                            <includeModules>false</includeModules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>MTOM-enabled</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/MTOM-enabledRepository</outputDirectory>
+                            
<axis2xml>test-resources/mtom/MTOM-enabled-axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>MTOM-fileCache-enabled</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/MTOM-fileCache-enabledRepository</outputDirectory>
+                            
<axis2xml>test-resources/mtom/MTOM-fileCache-enabled-axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>SwA-enabled</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/SwA-enabledRepository</outputDirectory>
+                            
<axis2xml>test-resources/swa/SwA-enabled-axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>SwA-fileCache-enabled</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/SwA-fileCache-enabledRepository</outputDirectory>
+                            
<axis2xml>test-resources/swa/SwA-fileCache-enabled-axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>deployment_repo</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/deployment_repo</outputDirectory>
+                            
<axis2xml>test-resources/deployment/deployment.both.axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>Standard</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/Repository</outputDirectory>
+                            <axis2xml>conf/axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>perf2</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/perf2/build/repo</outputDirectory>
+                            <axis2xml>conf/axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>perf</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/perf/build/repo/conf</outputDirectory>
+                            <axis2xml>conf/axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>jaxrs</id>
+                        <phase>generate-test-sources</phase>
+                        <goals>
+                            <goal>create-test-repository</goal>
+                        </goals>
+                        <configuration>
+                            
<outputDirectory>target/test-resources/jaxrs-repository</outputDirectory>
+                            
<axis2xml>test-resources/jaxrs/pojo-enabled-axis2.xml</axis2xml>
+                            <modules>addressing</modules>
+                        </configuration>
+                    </execution>
+                </executions>
+                <configuration>
+                    <configurationDirectory>conf</configurationDirectory>
+                    <includeServices>false</includeServices>
+                </configuration>
+            </plugin>
+            <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-antrun-plugin</artifactId>
                 <executions>

Modified: 
axis/axis2/java/core/trunk/modules/tool/axis2-repo-maven-plugin/src/main/java/org/apache/axis2/maven2/repo/AbstractCreateRepositoryMojo.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/tool/axis2-repo-maven-plugin/src/main/java/org/apache/axis2/maven2/repo/AbstractCreateRepositoryMojo.java?rev=988689&r1=988688&r2=988689&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/tool/axis2-repo-maven-plugin/src/main/java/org/apache/axis2/maven2/repo/AbstractCreateRepositoryMojo.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/tool/axis2-repo-maven-plugin/src/main/java/org/apache/axis2/maven2/repo/AbstractCreateRepositoryMojo.java
 Tue Aug 24 19:44:35 2010
@@ -21,8 +21,11 @@ package org.apache.axis2.maven2.repo;
 
 import java.io.File;
 import java.io.IOException;
+import java.util.Arrays;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -41,6 +44,7 @@ import org.apache.maven.shared.artifact.
 import org.apache.maven.shared.artifact.filter.collection.ScopeFilter;
 import org.apache.maven.shared.artifact.filter.collection.TypeFilter;
 import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.StringUtils;
 
 public abstract class AbstractCreateRepositoryMojo extends AbstractMojo {
     /**
@@ -150,6 +154,34 @@ public abstract class AbstractCreateRepo
      */
     private boolean stripModuleVersion;
     
+    /**
+     * Specifies whether modules should be deployed to the repository.
+     * 
+     * @parameter default-value="true"
+     */
+    private boolean includeModules;
+    
+    /**
+     * Comma separated list of modules (by artifactId) to include in the 
repository.
+     * 
+     * @parameter
+     */
+    private String modules;
+    
+    /**
+     * Specifies whether services should be deployed to the repository.
+     * 
+     * @parameter default-value="true"
+     */
+    private boolean includeServices;
+    
+    /**
+     * Comma separated list of services (by artifactId) to include in the 
repository.
+     * 
+     * @parameter
+     */
+    private String services;
+    
     protected abstract String getScope();
     
     protected abstract File getOutputDirectory();
@@ -165,26 +197,37 @@ public abstract class AbstractCreateRepo
                 artifacts.addAll(project.getAttachedArtifacts());
             }
         }
-        FilterArtifacts filter = new FilterArtifacts();
-        filter.addFilter(new ScopeFilter(getScope(), null));
-        filter.addFilter(new TypeFilter("aar,mar", null));
-        try {
-            artifacts = filter.filter(artifacts);
-        } catch (ArtifactFilterException ex) {
-            throw new MojoExecutionException(ex.getMessage(), ex);
-        }
-        artifacts = replaceIncompleteArtifacts(artifacts);
         File outputDirectory = getOutputDirectory();
-        Map<String,ArchiveDeployer> deployers = new 
HashMap<String,ArchiveDeployer>();
-        deployers.put("aar", new ArchiveDeployer(outputDirectory, 
servicesDirectory, "services.list", generateFileLists, stripServiceVersion));
-        deployers.put("mar", new ArchiveDeployer(outputDirectory, 
modulesDirectory, "modules.list", generateFileLists, stripModuleVersion));
-        for (Artifact artifact : artifacts) {
-            String type = artifact.getType();
-            ArchiveDeployer deployer = deployers.get(type);
-            if (deployer == null) {
-                throw new MojoExecutionException("No deployer found for 
artifact type " + type);
+        if (includeModules || includeServices) {
+            FilterArtifacts filter = new FilterArtifacts();
+            filter.addFilter(new ScopeFilter(getScope(), null));
+            if (includeModules && includeServices) {
+                filter.addFilter(new TypeFilter("aar,mar", null));
+            } else if (includeModules) {
+                filter.addFilter(new TypeFilter("mar", null));
+            }
+            try {
+                artifacts = filter.filter(artifacts);
+            } catch (ArtifactFilterException ex) {
+                throw new MojoExecutionException(ex.getMessage(), ex);
+            }
+            selectArtifacts(artifacts, modules, "mar");
+            selectArtifacts(artifacts, services, "aar");
+            artifacts = replaceIncompleteArtifacts(artifacts);
+            Map<String,ArchiveDeployer> deployers = new 
HashMap<String,ArchiveDeployer>();
+            deployers.put("aar", new ArchiveDeployer(outputDirectory, 
servicesDirectory, "services.list", generateFileLists, stripServiceVersion));
+            deployers.put("mar", new ArchiveDeployer(outputDirectory, 
modulesDirectory, "modules.list", generateFileLists, stripModuleVersion));
+            for (Artifact artifact : artifacts) {
+                String type = artifact.getType();
+                ArchiveDeployer deployer = deployers.get(type);
+                if (deployer == null) {
+                    throw new MojoExecutionException("No deployer found for 
artifact type " + type);
+                }
+                deployer.deploy(getLog(), artifact);
+            }
+            for (ArchiveDeployer deployer : deployers.values()) {
+                deployer.finish(getLog());
             }
-            deployer.deploy(getLog(), artifact);
         }
         if (axis2xml != null) {
             getLog().info("Copying axis2.xml");
@@ -196,8 +239,20 @@ public abstract class AbstractCreateRepo
                 throw new MojoExecutionException("Error copying axis2.xml 
file: " + ex.getMessage(), ex);
             }
         }
-        for (ArchiveDeployer deployer : deployers.values()) {
-            deployer.finish(getLog());
+    }
+
+    private void selectArtifacts(Set<Artifact> artifacts, String list, String 
type) throws MojoFailureException {
+        if (list != null) {
+            Set<String> set = new 
HashSet<String>(Arrays.asList(StringUtils.split(list, ",")));
+            for (Iterator<Artifact> it = artifacts.iterator(); it.hasNext(); ) 
{
+                Artifact artifact = it.next();
+                if (artifact.getType().equals(type) && 
!set.remove(artifact.getArtifactId())) {
+                    it.remove();
+                }
+            }
+            if (!set.isEmpty()) {
+                throw new MojoFailureException("The following " + type + " 
artifacts have not been found: " + set);
+            }
         }
     }
 


Reply via email to