You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2010/09/21 22:34:53 UTC

svn commit: r999612 [1/10] - in /maven/plugins/trunk/maven-assembly-plugin: ./ src/main/java/org/apache/maven/plugin/assembly/ src/main/java/org/apache/maven/plugin/assembly/archive/ src/main/java/org/apache/maven/plugin/assembly/archive/archiver/ src/...

Author: jdcasey
Date: Tue Sep 21 20:34:50 2010
New Revision: 999612

URL: http://svn.apache.org/viewvc?rev=999612&view=rev
Log:
[MASSEMBLY-501][MASSEMBLY-209] Fixing JDK 1.5 conversion, reworking dependency resolution to use maven built-in dep support more, and fixing IT for MASSEMBLY-209 (META-INF/services aggregation)

Removed:
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForArtifact.java
Modified:
    maven/plugins/trunk/maven-assembly-plugin/pom.xml
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/InvalidAssemblerConfigurationException.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveCreationException.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveExpansionException.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/ResolutionManagementInfo.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/AbstractLineAggregatingHandler.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfServicesHandler.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfSpringHandler.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/SimpleAggregatingDescriptorHandler.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/format/AssemblyFormattingException.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/format/ReflectionProperties.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolationException.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolator.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/io/AssemblyReadException.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/io/AssemblyReader.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReader.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractDirectoryMojo.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/UnpackMojo.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/InterpolationConstants.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/ProjectUtils.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/PropertyUtils.java
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/TypeConversionUtils.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiverTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTaskTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileFormatterTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileSetFormatterTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReaderTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/testutils/MockManager.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/testutils/TestFileManager.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/ProjectUtilsTest.java
    maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/TypeConversionUtilsTest.java

Modified: maven/plugins/trunk/maven-assembly-plugin/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/pom.xml?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-assembly-plugin/pom.xml Tue Sep 21 20:34:50 2010
@@ -56,6 +56,31 @@ under the License.
 
   <dependencies>
     <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-api</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-core</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-project</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-artifact</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-model</artifactId>
+      <version>${mavenVersion}</version>
+    </dependency>
+    <dependency>
       <groupId>org.apache.maven.shared</groupId>
       <artifactId>maven-common-artifact-filters</artifactId>
       <version>1.3-SNAPSHOT</version>
@@ -115,16 +140,6 @@ under the License.
     </dependency>
     <dependency>
       <groupId>org.apache.maven</groupId>
-      <artifactId>maven-plugin-api</artifactId>
-      <version>${mavenVersion}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-project</artifactId>
-      <version>${mavenVersion}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
       <artifactId>maven-archiver</artifactId>
       <version>2.4.1</version>
     </dependency>
@@ -143,16 +158,6 @@ under the License.
       <version>2.0.5</version>
     </dependency>
     <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-artifact</artifactId>
-      <version>${mavenVersion}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-model</artifactId>
-      <version>${mavenVersion}</version>
-    </dependency>
-    <dependency>
       <groupId>org.apache.maven.shared</groupId>
       <artifactId>maven-repository-builder</artifactId>
       <version>1.0-alpha-2</version>
@@ -196,7 +201,7 @@ under the License.
     <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
-      <version>3.8.2</version>
+      <version>4.8.1</version>
       <scope>test</scope>
     </dependency>
     <dependency>
@@ -208,38 +213,21 @@ under the License.
     </dependency>
   </dependencies>
 
-  <repositories>
-    <repository>
-      <id>codehaus.org</id>
-      <url>http://snapshots.repository.codehaus.org</url>
-      <releases>
-        <enabled>false</enabled>
-      </releases>
-    </repository>
-  </repositories>
-  <pluginRepositories>
-    <pluginRepository>
-      <id>codehaus.snapshots</id>
-      <url>http://snapshots.repository.codehaus.org</url>
-    </pluginRepository>
-  </pluginRepositories>
-
   <build>
     <plugins>
       <plugin>
         <groupId>org.codehaus.plexus</groupId>
-        <artifactId>plexus-maven-plugin</artifactId>
-        <version>1.3.8</version>
+        <artifactId>plexus-component-metadata</artifactId>
+        <version>1.5.4</version>
         <executions>
           <execution>
             <id>create-component-descriptor</id>
-            <phase>generate-resources</phase>
             <goals>
-              <goal>descriptor</goal>
+              <goal>generate-metadata</goal>
             </goals>
           </execution>
           <execution>
-            <id>merge</id>
+            <id>merge-metadata</id>
             <configuration>
               <output>${project.build.outputDirectory}/META-INF/plexus/components.xml</output>
               <descriptors>
@@ -247,9 +235,8 @@ under the License.
                 <descriptor>src/main/resources/META-INF/plexus/components.xml</descriptor>
               </descriptors>
             </configuration>
-            <phase>generate-resources</phase>
             <goals>
-              <goal>merge-descriptors</goal>
+              <goal>merge-metadata</goal>
             </goals>
           </execution>
         </executions>
@@ -257,8 +244,9 @@ under the License.
       <plugin>
         <groupId>org.codehaus.modello</groupId>
         <artifactId>modello-maven-plugin</artifactId>
-        <version>1.0</version>
+        <version>1.4</version>
         <configuration>
+          <useJava5>true</useJava5>
           <version>${mdoVersion}</version>
         </configuration>
         <executions>
@@ -323,7 +311,20 @@ under the License.
   <profiles>
     <profile>
       <id>run-its</id>
-      <pluginRepositories>
+	  <repositories>
+	    <repository>
+	      <id>codehaus.org</id>
+	      <url>http://snapshots.repository.codehaus.org</url>
+	      <releases>
+	        <enabled>false</enabled>
+	      </releases>
+	    </repository>
+	  </repositories>
+	  <pluginRepositories>
+	    <pluginRepository>
+	      <id>codehaus.snapshots</id>
+	      <url>http://snapshots.repository.codehaus.org</url>
+	    </pluginRepository>
         <pluginRepository>
           <id>apache.snapshots</id>
           <url>http://repository.apache.org/snapshots</url>

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java Tue Sep 21 20:34:50 2010
@@ -72,20 +72,20 @@ public interface AssemblerConfigurationS
 
     File getArchiveBaseDirectory();
 
-    List getFilters();
+    List<String> getFilters();
 
-    List getReactorProjects();
+    List<MavenProject> getReactorProjects();
 
-    List getRemoteRepositories();
+    List<ArtifactRepository> getRemoteRepositories();
 
     boolean isDryRun();
 
     boolean isIgnoreDirFormatExtensions();
 
     boolean isIgnoreMissingDescriptor();
-    
+
     MavenSession getMavenSession();
-    
+
     String getArchiverConfig();
 
     MavenFileFilter getMavenFileFilter();

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java Tue Sep 21 20:34:50 2010
@@ -1,12 +1,12 @@
 package org.apache.maven.plugin.assembly;
 
-import java.util.Map;
+import org.apache.maven.artifact.Artifact;
+
+import java.util.Set;
 
 public interface AssemblyContext
 {
-    
-    AssemblyContext setManagedVersionMap( Map managedVersions );
-    
-    Map getManagedVersionMap();
+    void setResolvedArtifacts( Set<Artifact> artifacts );
 
+    Set<Artifact> getResolvedArtifacts();
 }

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java Tue Sep 21 20:34:50 2010
@@ -1,22 +1,33 @@
 package org.apache.maven.plugin.assembly;
 
-import java.util.Map;
+import org.apache.maven.artifact.Artifact;
+
+import java.util.Set;
 
 public class DefaultAssemblyContext
     implements AssemblyContext
 {
 
-    private Map managedVersions;
+    private Set<Artifact> artifacts;
 
-    public Map getManagedVersionMap()
+    /**
+     * {@inheritDoc}
+     * 
+     * @see org.apache.maven.plugin.assembly.AssemblyContext#setResolvedArtifacts(java.util.Set)
+     */
+    public void setResolvedArtifacts( final Set<Artifact> artifacts )
     {
-        return managedVersions;
+        this.artifacts = artifacts;
     }
 
-    public AssemblyContext setManagedVersionMap( Map managedVersions )
+    /**
+     * {@inheritDoc}
+     * 
+     * @see org.apache.maven.plugin.assembly.AssemblyContext#getResolvedArtifacts()
+     */
+    public Set<Artifact> getResolvedArtifacts()
     {
-        this.managedVersions = managedVersions;
-        return this;
+        return artifacts;
     }
 
 }

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/InvalidAssemblerConfigurationException.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/InvalidAssemblerConfigurationException.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/InvalidAssemblerConfigurationException.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/InvalidAssemblerConfigurationException.java Tue Sep 21 20:34:50 2010
@@ -26,12 +26,14 @@ public class InvalidAssemblerConfigurati
     extends Exception
 {
 
-    public InvalidAssemblerConfigurationException( String message, Throwable error )
+    private static final long serialVersionUID = 1L;
+
+    public InvalidAssemblerConfigurationException( final String message, final Throwable error )
     {
         super( message, error );
     }
 
-    public InvalidAssemblerConfigurationException( String message )
+    public InvalidAssemblerConfigurationException( final String message )
     {
         super( message );
     }

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveCreationException.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveCreationException.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveCreationException.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveCreationException.java Tue Sep 21 20:34:50 2010
@@ -26,12 +26,14 @@ public class ArchiveCreationException
     extends Exception
 {
 
-    public ArchiveCreationException( String message, Throwable error )
+    private static final long serialVersionUID = 1L;
+
+    public ArchiveCreationException( final String message, final Throwable error )
     {
         super( message, error );
     }
 
-    public ArchiveCreationException( String message )
+    public ArchiveCreationException( final String message )
     {
         super( message );
     }

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveExpansionException.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveExpansionException.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveExpansionException.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveExpansionException.java Tue Sep 21 20:34:50 2010
@@ -26,12 +26,14 @@ public class ArchiveExpansionException
     extends Exception
 {
 
-    public ArchiveExpansionException( String message, Throwable error )
+    private static final long serialVersionUID = 1L;
+
+    public ArchiveExpansionException( final String message, final Throwable error )
     {
         super( message, error );
     }
 
-    public ArchiveExpansionException( String message )
+    public ArchiveExpansionException( final String message )
     {
         super( message );
     }

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java Tue Sep 21 20:34:50 2010
@@ -19,8 +19,6 @@ package org.apache.maven.plugin.assembly
  * under the License.
  */
 
-import org.apache.maven.artifact.resolver.ArtifactResolutionException;
-import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
 import org.apache.maven.plugin.DebugConfigurationListener;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
 import org.apache.maven.plugin.assembly.AssemblyContext;
@@ -28,19 +26,19 @@ import org.apache.maven.plugin.assembly.
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.archiver.AssemblyProxyArchiver;
 import org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase;
+import org.apache.maven.plugin.assembly.artifact.DependencyResolutionException;
 import org.apache.maven.plugin.assembly.artifact.DependencyResolver;
 import org.apache.maven.plugin.assembly.filter.ComponentsXmlArchiverFileFilter;
 import org.apache.maven.plugin.assembly.filter.ContainerDescriptorHandler;
-import org.apache.maven.plugin.assembly.filter.MetaInfServicesHandler;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.interpolation.AssemblyExpressionEvaluator;
 import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.ContainerDescriptorHandlerConfig;
 import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
 import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
-import org.apache.maven.project.artifact.InvalidDependencyVersionException;
 import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusContainer;
+import org.codehaus.plexus.archiver.ArchiveFinalizer;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.filters.JarSecurityFileSelector;
@@ -50,12 +48,14 @@ import org.codehaus.plexus.archiver.mana
 import org.codehaus.plexus.archiver.tar.TarArchiver;
 import org.codehaus.plexus.archiver.tar.TarLongFileMode;
 import org.codehaus.plexus.archiver.war.WarArchiver;
-import org.codehaus.plexus.collections.ActiveCollectionManager;
+import org.codehaus.plexus.component.annotations.Component;
+import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.component.configurator.ComponentConfigurationException;
 import org.codehaus.plexus.component.configurator.ComponentConfigurator;
 import org.codehaus.plexus.component.configurator.ConfigurationListener;
 import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluator;
 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
+import org.codehaus.plexus.components.io.fileselectors.FileSelector;
 import org.codehaus.plexus.configuration.PlexusConfiguration;
 import org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration;
 import org.codehaus.plexus.context.Context;
@@ -72,46 +72,36 @@ import java.io.StringReader;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
 /**
- * Controller component designed to organize the many activities involved in 
- * creating an assembly archive. This includes locating and configuring {@link Archiver}
- * instances, executing multiple {@link AssemblyArchiverPhase} instances to 
- * interpret the various sections of the assembly descriptor and determine which
- * files to add, and other associated activities.
+ * Controller component designed to organize the many activities involved in creating an assembly archive. This includes
+ * locating and configuring {@link Archiver} instances, executing multiple {@link AssemblyArchiverPhase} instances to
+ * interpret the various sections of the assembly descriptor and determine which files to add, and other associated
+ * activities.
  * 
  * @version $Id$
- * @plexus.component role="org.apache.maven.plugin.assembly.archive.AssemblyArchiver" role-hint="default"
  */
+@Component( role = AssemblyArchiver.class )
 public class DefaultAssemblyArchiver
     extends AbstractLogEnabled
     implements AssemblyArchiver, Contextualizable
 {
 
-    /**
-     * @plexus.requirement
-     */
+    @Requirement
     private ArchiverManager archiverManager;
 
-    /**
-     * @plexus.requirement role="org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase"
-     */
-    private List assemblyPhases;
-
-    /**
-     * @plexus.requirement role="org.apache.maven.plugin.assembly.filter.ContainerDescriptorHandler"
-     */
-    private Map containerDescriptorHandlers;
-    
-    /**
-     * @plexus.requirement
-     */
+    @Requirement
     private DependencyResolver dependencyResolver;
 
+    @Requirement( role = AssemblyArchiverPhase.class )
+    private List<AssemblyArchiverPhase> assemblyPhases;
+
+    @Requirement( role = ContainerDescriptorHandler.class )
+    private Map<String, ContainerDescriptorHandler> containerDescriptorHandlers;
+
     private PlexusContainer container;
 
     public DefaultAssemblyArchiver()
@@ -120,32 +110,30 @@ public class DefaultAssemblyArchiver
     }
 
     // introduced for testing.
-    protected DefaultAssemblyArchiver( ArchiverManager archiverManager, ActiveCollectionManager collectionManager,
-                                    DependencyResolver resolver, List assemblyPhases )
+    protected DefaultAssemblyArchiver( final ArchiverManager archiverManager, final DependencyResolver resolver,
+                                       final List<AssemblyArchiverPhase> assemblyPhases )
     {
         this.archiverManager = archiverManager;
         dependencyResolver = resolver;
         this.assemblyPhases = assemblyPhases;
     }
-    
+
     /**
      * Create the assembly archive. Generally:
      * 
      * <ol>
-     *   <li>Setup any directory structures for temporary files</li>
-     *   <li>Calculate the output directory/file for the assembly</li>
-     *   <li>Setup any handler components for special descriptor files we may encounter</li>
-     *   <li>Lookup and configure the {@link Archiver} to be used</li>
-     *   <li>Determine what, if any, dependency resolution will be required, and 
-     *       resolve any dependency-version conflicts up front to produce a 
-     *       managed-version map for the whole assembly process.</li>
-     *   <li>Iterate through the available {@link AssemblyArchiverPhase} instances,
-     *       executing each to handle a different top-level section of the
-     *       assembly descriptor, if that section is present.</li>
+     * <li>Setup any directory structures for temporary files</li>
+     * <li>Calculate the output directory/file for the assembly</li>
+     * <li>Setup any handler components for special descriptor files we may encounter</li>
+     * <li>Lookup and configure the {@link Archiver} to be used</li>
+     * <li>Determine what, if any, dependency resolution will be required, and resolve any dependency-version conflicts
+     * up front to produce a managed-version map for the whole assembly process.</li>
+     * <li>Iterate through the available {@link AssemblyArchiverPhase} instances, executing each to handle a different
+     * top-level section of the assembly descriptor, if that section is present.</li>
      * </ol>
      */
-    public File createArchive( Assembly assembly, String fullName, String format,
-                               AssemblerConfigurationSource configSource )
+    public File createArchive( final Assembly assembly, final String fullName, final String format,
+                               final AssemblerConfigurationSource configSource )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
         String filename = fullName;
@@ -156,141 +144,127 @@ public class DefaultAssemblyArchiver
 
         AssemblyFileUtils.verifyTempDirectoryAvailability( configSource.getTemporaryRootDirectory(), getLogger() );
 
-        File outputDirectory = configSource.getOutputDirectory();
+        final File outputDirectory = configSource.getOutputDirectory();
 
-        File destFile = new File( outputDirectory, filename );
+        final File destFile = new File( outputDirectory, filename );
 
         try
         {
-            String finalName = configSource.getFinalName();
-            String specifiedBasedir = assembly.getBaseDirectory();
+            final String finalName = configSource.getFinalName();
+            final String specifiedBasedir = assembly.getBaseDirectory();
 
             String basedir = finalName;
 
             if ( specifiedBasedir != null )
             {
-                basedir = AssemblyFormatUtils.getOutputDirectory( specifiedBasedir, configSource.getProject(),
-                                                                  null, finalName, configSource );
+                basedir =
+                    AssemblyFormatUtils.getOutputDirectory( specifiedBasedir, configSource.getProject(), null,
+                                                            finalName, configSource );
             }
 
-            List containerHandlers = selectContainerDescriptorHandlers( assembly.getContainerDescriptorHandlers(), configSource );
+            final List<ContainerDescriptorHandler> containerHandlers =
+                selectContainerDescriptorHandlers( assembly.getContainerDescriptorHandlers(), configSource );
 
-            Archiver archiver = createArchiver( format, assembly.isIncludeBaseDirectory(), basedir, configSource,
-                                                containerHandlers );
+            final Archiver archiver =
+                createArchiver( format, assembly.isIncludeBaseDirectory(), basedir, configSource, containerHandlers );
 
             archiver.setDestFile( destFile );
-            
-            Map managedVersionMap = dependencyResolver.buildManagedVersionMap( assembly, configSource );
-            
-            AssemblyContext context = new DefaultAssemblyContext().setManagedVersionMap( managedVersionMap );
 
-            for ( Iterator phaseIterator = assemblyPhases.iterator(); phaseIterator.hasNext(); )
+            final AssemblyContext context = new DefaultAssemblyContext();
+
+            dependencyResolver.resolve( assembly, configSource, context );
+
+            for ( final Iterator<AssemblyArchiverPhase> phaseIterator = assemblyPhases.iterator(); phaseIterator.hasNext(); )
             {
-                AssemblyArchiverPhase phase = (AssemblyArchiverPhase) phaseIterator.next();
+                final AssemblyArchiverPhase phase = phaseIterator.next();
 
                 phase.execute( assembly, archiver, configSource, context );
             }
 
             archiver.createArchive();
         }
-        catch ( ArchiverException e )
+        catch ( final ArchiverException e )
         {
-            throw new ArchiveCreationException( "Error creating assembly archive " + assembly.getId() + ": " + e.getMessage(), e );
+            throw new ArchiveCreationException( "Error creating assembly archive " + assembly.getId() + ": "
+                            + e.getMessage(), e );
         }
-        catch ( IOException e )
+        catch ( final IOException e )
         {
-            throw new ArchiveCreationException( "Error creating assembly archive " + assembly.getId() + ": " + e.getMessage(), e );
+            throw new ArchiveCreationException( "Error creating assembly archive " + assembly.getId() + ": "
+                            + e.getMessage(), e );
         }
-        catch ( NoSuchArchiverException e )
+        catch ( final NoSuchArchiverException e )
         {
-            throw new ArchiveCreationException( "Unable to obtain archiver for extension '" + format + "'" );
+            throw new ArchiveCreationException( "Unable to obtain archiver for extension '" + format
+                            + "', for assembly: '" + assembly.getId() + "'", e );
         }
-        catch ( ArtifactResolutionException e )
+        catch ( final DependencyResolutionException e )
         {
-            throw new ArchiveCreationException( "Unable to create managed-version map for all assembly activities: " + e.getMessage(), e );
-        }
-        catch ( InvalidVersionSpecificationException e )
-        {
-            throw new ArchiveCreationException( "Unable to create managed-version map for all assembly activities: " + e.getMessage(), e );
-        }
-        catch ( InvalidDependencyVersionException e )
-        {
-            throw new ArchiveCreationException( "Unable to create managed-version map for all assembly activities: " + e.getMessage(), e );
+            throw new ArchiveCreationException( "Unable to resolve dependencies for assembly '" + assembly.getId()
+                            + "'", e );
         }
 
         return destFile;
     }
 
-    private List selectContainerDescriptorHandlers( List requestedContainerDescriptorHandlers, AssemblerConfigurationSource configSource )
+    private List<ContainerDescriptorHandler> selectContainerDescriptorHandlers( List<ContainerDescriptorHandlerConfig> requestedContainerDescriptorHandlers,
+                                                                                final AssemblerConfigurationSource configSource )
         throws InvalidAssemblerConfigurationException
     {
-        getLogger().debug(
-                           "All known ContainerDescritporHandler components: "
-                                           + ( containerDescriptorHandlers == null ? "none; map is null."
-                                                           : "" + containerDescriptorHandlers.keySet() ) );
+        getLogger().debug( "All known ContainerDescritporHandler components: "
+                                           + ( containerDescriptorHandlers == null ? "none; map is null." : ""
+                                                           + containerDescriptorHandlers.keySet() ) );
 
         if ( requestedContainerDescriptorHandlers == null )
         {
-            requestedContainerDescriptorHandlers = new ArrayList();
+            requestedContainerDescriptorHandlers = new ArrayList<ContainerDescriptorHandlerConfig>();
         }
 
-        List handlers = new ArrayList();
-        List<String> hints = new ArrayList<String>();
+        final List<ContainerDescriptorHandler> handlers = new ArrayList<ContainerDescriptorHandler>();
+        final List<String> hints = new ArrayList<String>();
 
         if ( ( requestedContainerDescriptorHandlers != null ) && !requestedContainerDescriptorHandlers.isEmpty() )
         {
-            for ( Iterator it = requestedContainerDescriptorHandlers.iterator(); it.hasNext(); )
+            for ( final Iterator<ContainerDescriptorHandlerConfig> it = requestedContainerDescriptorHandlers.iterator(); it.hasNext(); )
             {
-                ContainerDescriptorHandlerConfig config = (ContainerDescriptorHandlerConfig) it.next();
+                final ContainerDescriptorHandlerConfig config = it.next();
 
-                String hint = config.getHandlerName();
-                ContainerDescriptorHandler handler = (ContainerDescriptorHandler) containerDescriptorHandlers.get( hint );
+                final String hint = config.getHandlerName();
+                final ContainerDescriptorHandler handler = containerDescriptorHandlers.get( hint );
 
                 if ( handler == null )
                 {
-                    throw new InvalidAssemblerConfigurationException( "Cannot find ContainerDescriptorHandler with hint: " + hint );
+                    throw new InvalidAssemblerConfigurationException(
+                                                                      "Cannot find ContainerDescriptorHandler with hint: "
+                                                                                      + hint );
                 }
 
-                getLogger().debug( "Found container descriptor handler with hint: " + hint + " (component: " + handler + ")" );
-                
+                getLogger().debug( "Found container descriptor handler with hint: " + hint + " (component: " + handler
+                                                   + ")" );
+
                 if ( config.getConfiguration() != null )
                 {
                     getLogger().debug( "Configuring handler with:\n\n" + config.getConfiguration() + "\n\n" );
-                    
+
                     configureContainerDescriptorHandler( handler, (Xpp3Dom) config.getConfiguration(), configSource );
                 }
-                
+
                 handlers.add( handler );
                 hints.add( hint );
             }
         }
 
-        addBuiltInContainerDescriptorHandlers( hints, handlers );
-
-        return handlers;
-    }
-
-    private void addBuiltInContainerDescriptorHandlers( final List<String> hints, final List handlers )
-    {
         if ( !hints.contains( "plexus" ) )
         {
             handlers.add( new ComponentsXmlArchiverFileFilter() );
         }
 
-        if ( !hints.contains( "metaInf-services" ) )
-        {
-            handlers.add( new MetaInfServicesHandler() );
-        }
-
-        if ( !hints.contains( "metaInf-spring" ) )
-        {
-            handlers.add( new MetaInfServicesHandler() );
-        }
+        return handlers;
     }
-    
+
     /**
      * Creates the necessary archiver to build the distribution file.
-     *
+     * 
      * @param format
      *            Archive format
      * @param includeBaseDir
@@ -301,9 +275,9 @@ public class DefaultAssemblyArchiver
      * @throws org.codehaus.plexus.archiver.ArchiverException
      * @throws org.codehaus.plexus.archiver.manager.NoSuchArchiverException
      */
-    protected Archiver createArchiver( String format, boolean includeBaseDir, String finalName,
-                                       AssemblerConfigurationSource configSource,
-                                       List containerHandlers )
+    protected Archiver createArchiver( final String format, final boolean includeBaseDir, final String finalName,
+                                       final AssemblerConfigurationSource configSource,
+                                       final List<ContainerDescriptorHandler> containerHandlers )
         throws ArchiverException, NoSuchArchiverException
     {
         Archiver archiver;
@@ -320,17 +294,17 @@ public class DefaultAssemblyArchiver
             archiver = archiverManager.getArchiver( format );
         }
 
-        List extraSelectors = null;
-        List extraFinalizers = null;
+        final List<FileSelector> extraSelectors = new ArrayList<FileSelector>();
+        final List<ArchiveFinalizer> extraFinalizers = new ArrayList<ArchiveFinalizer>();
         if ( archiver instanceof JarArchiver )
         {
-            extraSelectors = Collections.singletonList( new JarSecurityFileSelector() );
-            
-            extraFinalizers = Collections.singletonList( new ManifestCreationFinalizer( configSource.getProject(),
-                                                                                        configSource.getJarArchiveConfiguration() ) );
+            extraSelectors.add( new JarSecurityFileSelector() );
+
+            extraFinalizers.add( new ManifestCreationFinalizer( configSource.getProject(),
+                                                                configSource.getJarArchiveConfiguration() ) );
 
         }
-        
+
         if ( configSource.getArchiverConfig() != null )
         {
             configureArchiver( archiver, configSource );
@@ -342,36 +316,40 @@ public class DefaultAssemblyArchiver
             prefix = finalName;
         }
 
-        archiver = new AssemblyProxyArchiver( prefix, archiver, containerHandlers, extraSelectors, extraFinalizers, getLogger(), configSource.isDryRun() );
+        archiver =
+            new AssemblyProxyArchiver( prefix, archiver, containerHandlers, extraSelectors, extraFinalizers,
+                                       getLogger(), configSource.isDryRun() );
 
         return archiver;
     }
-    
-    private void configureContainerDescriptorHandler( ContainerDescriptorHandler handler, Xpp3Dom config,
-                                                      AssemblerConfigurationSource configSource )
+
+    private void configureContainerDescriptorHandler( final ContainerDescriptorHandler handler, final Xpp3Dom config,
+                                                      final AssemblerConfigurationSource configSource )
         throws InvalidAssemblerConfigurationException
     {
-        getLogger().debug( "Configuring handler: '" + handler.getClass().getName() + "' -->" );
+        getLogger().debug( "Configuring handler: '" + handler.getClass()
+                                                             .getName() + "' -->" );
 
         try
         {
             configureComponent( handler, config, configSource );
         }
-        catch ( ComponentConfigurationException e )
+        catch ( final ComponentConfigurationException e )
         {
-            throw new InvalidAssemblerConfigurationException( "Failed to configure handler: "
-                + handler.getClass().getName(), e );
+            throw new InvalidAssemblerConfigurationException( "Failed to configure handler: " + handler.getClass()
+                                                                                                       .getName(), e );
         }
-        catch ( ComponentLookupException e )
+        catch ( final ComponentLookupException e )
         {
             throw new InvalidAssemblerConfigurationException( "Failed to lookup configurator for setup of handler: "
-                + handler.getClass().getName(), e );
+                            + handler.getClass()
+                                     .getName(), e );
         }
 
         getLogger().debug( "-- end configuration --" );
     }
 
-    private void configureArchiver( Archiver archiver, AssemblerConfigurationSource configSource )
+    private void configureArchiver( final Archiver archiver, final AssemblerConfigurationSource configSource )
         throws ArchiverException
     {
         Xpp3Dom config;
@@ -379,47 +357,53 @@ public class DefaultAssemblyArchiver
         {
             config = Xpp3DomBuilder.build( new StringReader( configSource.getArchiverConfig() ) );
         }
-        catch ( XmlPullParserException e )
+        catch ( final XmlPullParserException e )
         {
-            throw new ArchiverException( "Failed to parse archiver configuration for: " + archiver.getClass().getName(), e );
+            throw new ArchiverException( "Failed to parse archiver configuration for: " + archiver.getClass()
+                                                                                                  .getName(), e );
         }
-        catch ( IOException e )
+        catch ( final IOException e )
         {
-            throw new ArchiverException( "Failed to parse archiver configuration for: " + archiver.getClass().getName(), e );
+            throw new ArchiverException( "Failed to parse archiver configuration for: " + archiver.getClass()
+                                                                                                  .getName(), e );
         }
 
-        getLogger().debug( "Configuring archiver: '" + archiver.getClass().getName() + "' -->" );
-        
+        getLogger().debug( "Configuring archiver: '" + archiver.getClass()
+                                                               .getName() + "' -->" );
+
         try
         {
             configureComponent( archiver, config, configSource );
         }
-        catch ( ComponentConfigurationException e )
+        catch ( final ComponentConfigurationException e )
         {
-            throw new ArchiverException( "Failed to configure archiver: " + archiver.getClass().getName(), e );
+            throw new ArchiverException( "Failed to configure archiver: " + archiver.getClass()
+                                                                                    .getName(), e );
         }
-        catch ( ComponentLookupException e )
+        catch ( final ComponentLookupException e )
         {
-            throw new ArchiverException( "Failed to lookup configurator for setup of archiver: "
-                + archiver.getClass().getName(), e );
+            throw new ArchiverException( "Failed to lookup configurator for setup of archiver: " + archiver.getClass()
+                                                                                                           .getName(),
+                                         e );
         }
 
         getLogger().debug( "-- end configuration --" );
     }
 
-    private void configureComponent( Object component, Xpp3Dom config, AssemblerConfigurationSource configSource )
+    private void configureComponent( final Object component, final Xpp3Dom config,
+                                     final AssemblerConfigurationSource configSource )
         throws ComponentLookupException, ComponentConfigurationException
     {
-        ComponentConfigurator configurator =
+        final ComponentConfigurator configurator =
             (ComponentConfigurator) container.lookup( ComponentConfigurator.ROLE, "basic" );
 
-        ConfigurationListener listener = new DebugConfigurationListener( getLogger() );
+        final ConfigurationListener listener = new DebugConfigurationListener( getLogger() );
 
-        ExpressionEvaluator expressionEvaluator = new AssemblyExpressionEvaluator( configSource );
+        final ExpressionEvaluator expressionEvaluator = new AssemblyExpressionEvaluator( configSource );
 
-        XmlPlexusConfiguration configuration = new XmlPlexusConfiguration( config );
+        final XmlPlexusConfiguration configuration = new XmlPlexusConfiguration( config );
 
-        Object[] containerRealm = getContainerRealm();
+        final Object[] containerRealm = getContainerRealm();
 
         /*
          * NOTE: The signature of configureComponent() has changed in Maven 3.x, the reflection prevents a linkage error
@@ -427,23 +411,23 @@ public class DefaultAssemblyArchiver
          */
         try
         {
-            Method configureComponent =
+            final Method configureComponent =
                 ComponentConfigurator.class.getMethod( "configureComponent", new Class[] { Object.class,
-                    PlexusConfiguration.class, ExpressionEvaluator.class, (Class) containerRealm[1],
+                    PlexusConfiguration.class, ExpressionEvaluator.class, (Class<?>) containerRealm[1],
                     ConfigurationListener.class } );
 
             configureComponent.invoke( configurator, new Object[] { component, configuration, expressionEvaluator,
                 containerRealm[0], listener } );
         }
-        catch ( NoSuchMethodException e )
+        catch ( final NoSuchMethodException e )
         {
             throw new RuntimeException( e );
         }
-        catch ( IllegalAccessException e )
+        catch ( final IllegalAccessException e )
         {
             throw new RuntimeException( e );
         }
-        catch ( InvocationTargetException e )
+        catch ( final InvocationTargetException e )
         {
             if ( e.getCause() instanceof ComponentConfigurationException )
             {
@@ -461,18 +445,19 @@ public class DefaultAssemblyArchiver
          */
         try
         {
-            Method getContainerRealm = container.getClass().getMethod( "getContainerRealm", null );
-            return new Object[] { getContainerRealm.invoke( container, null ), getContainerRealm.getReturnType() };
+            final Method getContainerRealm = container.getClass()
+                                                      .getMethod( "getContainerRealm" );
+            return new Object[] { getContainerRealm.invoke( container ), getContainerRealm.getReturnType() };
         }
-        catch ( NoSuchMethodException e )
+        catch ( final NoSuchMethodException e )
         {
             throw new RuntimeException( e );
         }
-        catch ( IllegalAccessException e )
+        catch ( final IllegalAccessException e )
         {
             throw new RuntimeException( e );
         }
-        catch ( InvocationTargetException e )
+        catch ( final InvocationTargetException e )
         {
             throw new RuntimeException( e.getCause() );
         }
@@ -481,25 +466,25 @@ public class DefaultAssemblyArchiver
     protected Archiver createWarArchiver()
         throws NoSuchArchiverException
     {
-        WarArchiver warArchiver = (WarArchiver) archiverManager.getArchiver( "war" );
+        final WarArchiver warArchiver = (WarArchiver) archiverManager.getArchiver( "war" );
         warArchiver.setIgnoreWebxml( false ); // See MNG-1274
 
         return warArchiver;
     }
 
-    protected Archiver createTarArchiver( String format, String tarLongFileMode )
+    protected Archiver createTarArchiver( final String format, final String tarLongFileMode )
         throws NoSuchArchiverException, ArchiverException
     {
-        TarArchiver tarArchiver = (TarArchiver) archiverManager.getArchiver( "tar" );
-        int index = format.indexOf( '.' );
+        final TarArchiver tarArchiver = (TarArchiver) archiverManager.getArchiver( "tar" );
+        final int index = format.indexOf( '.' );
         if ( index >= 0 )
         {
             // TODO: this needs a cleanup in plexus archiver - use a real
             // typesafe enum
-            TarArchiver.TarCompressionMethod tarCompressionMethod = new TarArchiver.TarCompressionMethod();
+            final TarArchiver.TarCompressionMethod tarCompressionMethod = new TarArchiver.TarCompressionMethod();
             // TODO: this should accept gz and bz2 as well so we can skip
             // over the switch
-            String compression = format.substring( index + 1 );
+            final String compression = format.substring( index + 1 );
             if ( "gz".equals( compression ) )
             {
                 tarCompressionMethod.setValue( "gzip" );
@@ -516,7 +501,7 @@ public class DefaultAssemblyArchiver
             tarArchiver.setCompression( tarCompressionMethod );
         }
 
-        TarLongFileMode tarFileMode = new TarLongFileMode();
+        final TarLongFileMode tarFileMode = new TarLongFileMode();
 
         tarFileMode.setValue( tarLongFileMode );
 
@@ -525,13 +510,13 @@ public class DefaultAssemblyArchiver
         return tarArchiver;
     }
 
-    public void contextualize( Context context )
+    public void contextualize( final Context context )
         throws ContextException
     {
         container = (PlexusContainer) context.get( PlexusConstants.PLEXUS_KEY );
     }
 
-    protected void setContainer( PlexusContainer container )
+    protected void setContainer( final PlexusContainer container )
     {
         this.container = container;
     }

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java Tue Sep 21 20:34:50 2010
@@ -19,15 +19,6 @@ package org.apache.maven.plugin.assembly
  * under the License.
  */
 
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.util.Collections;
-import java.util.List;
-
 import org.apache.maven.archiver.MavenArchiveConfiguration;
 import org.apache.maven.archiver.MavenArchiver;
 import org.apache.maven.artifact.DependencyResolutionRequiredException;
@@ -40,6 +31,15 @@ import org.codehaus.plexus.archiver.jar.
 import org.codehaus.plexus.archiver.jar.ManifestException;
 import org.codehaus.plexus.util.IOUtil;
 
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.util.Collections;
+import java.util.List;
+
 /**
  * @version $Id$
  */
@@ -48,6 +48,7 @@ public class ManifestCreationFinalizer
 {
 
     private final MavenProject project;
+
     private final MavenArchiveConfiguration archiveConfiguration;
 
     // TODO: I'd really prefer to rewrite MavenArchiver as either a
@@ -55,23 +56,23 @@ public class ManifestCreationFinalizer
     // create an include pom.properties etc into another archiver), or
     // an implementation of an archiver
     // (the first is preferable).
-    private MavenArchiver mavenArchiver = new MavenArchiver();
+    private final MavenArchiver mavenArchiver = new MavenArchiver();
 
-    public ManifestCreationFinalizer( MavenProject project, MavenArchiveConfiguration archiveConfiguration )
+    public ManifestCreationFinalizer( final MavenProject project, final MavenArchiveConfiguration archiveConfiguration )
     {
         this.project = project;
         this.archiveConfiguration = archiveConfiguration;
     }
 
-    public void finalizeArchiveCreation( Archiver archiver )
-        throws ArchiverException
+    @Override
+    public void finalizeArchiveCreation( final Archiver archiver ) throws ArchiverException
     {
         if ( archiveConfiguration != null )
         {
             try
             {
                 Manifest manifest;
-                File manifestFile = archiveConfiguration.getManifestFile();
+                final File manifestFile = archiveConfiguration.getManifestFile();
 
                 if ( manifestFile != null )
                 {
@@ -81,11 +82,11 @@ public class ManifestCreationFinalizer
                         manifestFileReader = new InputStreamReader( new FileInputStream( manifestFile ), "UTF-8" );
                         manifest = new Manifest( manifestFileReader );
                     }
-                    catch ( FileNotFoundException e )
+                    catch ( final FileNotFoundException e )
                     {
                         throw new ArchiverException( "Manifest not found: " + e.getMessage(), e );
                     }
-                    catch ( IOException e )
+                    catch ( final IOException e )
                     {
                         throw new ArchiverException( "Error processing manifest: " + e.getMessage(), e );
                     }
@@ -101,22 +102,22 @@ public class ManifestCreationFinalizer
 
                 if ( ( manifest != null ) && ( archiver instanceof JarArchiver ) )
                 {
-                    JarArchiver jarArchiver = (JarArchiver) archiver;
+                    final JarArchiver jarArchiver = (JarArchiver) archiver;
                     jarArchiver.addConfiguredManifest( manifest );
                 }
             }
-            catch ( ManifestException e )
+            catch ( final ManifestException e )
             {
                 throw new ArchiverException( "Error creating manifest: " + e.getMessage(), e );
             }
-            catch ( DependencyResolutionRequiredException e )
+            catch ( final DependencyResolutionRequiredException e )
             {
                 throw new ArchiverException( "Dependencies were not resolved: " + e.getMessage(), e );
             }
         }
     }
 
-    public List getVirtualFiles()
+    public List<String> getVirtualFiles()
     {
         if ( archiveConfiguration != null )
         {
@@ -127,10 +128,10 @@ public class ManifestCreationFinalizer
                     return Collections.singletonList( "META-INF/MANIFEST.MF" );
                 }
             }
-            catch ( ManifestException e )
+            catch ( final ManifestException e )
             {
             }
-            catch ( DependencyResolutionRequiredException e )
+            catch ( final DependencyResolutionRequiredException e )
             {
             }
         }

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java Tue Sep 21 20:34:50 2010
@@ -53,7 +53,7 @@ import java.util.Set;
  * <li>prefixing (where all paths have a set global prefix prepended before addition)</li>
  * <li>duplication checks on archive additions (for archive-file path + prefix)</li>
  * </ul>
- *
+ * 
  * @author jdcasey
  * @version $Id$
  */
@@ -61,28 +61,33 @@ public class AssemblyProxyArchiver
     implements Archiver
 {
 
-    private Archiver delegate;
+    private final Archiver delegate;
 
     private String rootPrefix;
 
     private FileSelector[] selectors;
 
-    private ThreadLocal inPublicApi = new ThreadLocal();
+    private final ThreadLocal<Boolean> inPublicApi = new ThreadLocal<Boolean>();
 
     private final Logger logger;
 
     private final boolean dryRun;
 
-    private Set seenPaths = new HashSet();
+    private final Set<String> seenPaths = new HashSet<String>();
 
-    public AssemblyProxyArchiver( String rootPrefix, Archiver delegate, List containerDescriptorHandlers,
-                                   List extraSelectors, List extraFinalizers, Logger logger )
+    public AssemblyProxyArchiver( final String rootPrefix, final Archiver delegate,
+                                  final List<ContainerDescriptorHandler> containerDescriptorHandlers,
+                                  final List<FileSelector> extraSelectors,
+                                  final List<ArchiveFinalizer> extraFinalizers, final Logger logger )
     {
         this( rootPrefix, delegate, containerDescriptorHandlers, extraSelectors, extraFinalizers, logger, false );
     }
 
-    public AssemblyProxyArchiver( String rootPrefix, Archiver delegate, List containerDescriptorHandlers,
-                                   List extraSelectors, List extraFinalizers, Logger logger, boolean dryRun )
+    public AssemblyProxyArchiver( final String rootPrefix, final Archiver delegate,
+                                  final List<ContainerDescriptorHandler> containerDescriptorHandlers,
+                                  final List<FileSelector> extraSelectors,
+                                  final List<ArchiveFinalizer> extraFinalizers, final Logger logger,
+                                  final boolean dryRun )
     {
         this.rootPrefix = rootPrefix;
         this.delegate = delegate;
@@ -94,15 +99,15 @@ public class AssemblyProxyArchiver
             this.rootPrefix += "/";
         }
 
-        List selectors = new ArrayList();
+        final List<FileSelector> selectors = new ArrayList<FileSelector>();
 
-        boolean isFinalizerEnabled = ( delegate instanceof FinalizerEnabled );
+        final boolean isFinalizerEnabled = ( delegate instanceof FinalizerEnabled );
 
         if ( containerDescriptorHandlers != null )
         {
-            for ( Iterator it = containerDescriptorHandlers.iterator(); it.hasNext(); )
+            for ( final Iterator<ContainerDescriptorHandler> it = containerDescriptorHandlers.iterator(); it.hasNext(); )
             {
-                ContainerDescriptorHandler handler = (ContainerDescriptorHandler) it.next();
+                final ContainerDescriptorHandler handler = it.next();
 
                 selectors.add( handler );
 
@@ -115,31 +120,31 @@ public class AssemblyProxyArchiver
 
         if ( extraSelectors != null )
         {
-            for ( Iterator it = extraSelectors.iterator(); it.hasNext(); )
+            for ( final Iterator<FileSelector> it = extraSelectors.iterator(); it.hasNext(); )
             {
-                FileSelector selector = (FileSelector) it.next();
+                final FileSelector selector = it.next();
                 selectors.add( selector );
             }
         }
 
         if ( ( extraFinalizers != null ) && isFinalizerEnabled )
         {
-            for ( Iterator it = extraFinalizers.iterator(); it.hasNext(); )
+            for ( final Iterator<ArchiveFinalizer> it = extraFinalizers.iterator(); it.hasNext(); )
             {
-                ( (FinalizerEnabled) delegate ).addArchiveFinalizer( (ArchiveFinalizer) it.next() );
+                ( (FinalizerEnabled) delegate ).addArchiveFinalizer( it.next() );
             }
         }
 
         if ( !selectors.isEmpty() )
         {
-            this.selectors = (FileSelector[]) selectors.toArray( new FileSelector[0] );
+            this.selectors = selectors.toArray( new FileSelector[0] );
         }
     }
 
-    public void addArchivedFileSet( File archiveFile, String prefix, String[] includes, String[] excludes )
-        throws ArchiverException
+    public void addArchivedFileSet( final File archiveFile, final String prefix, final String[] includes,
+                                    final String[] excludes ) throws ArchiverException
     {
-        String archiveKey = getArchiveKey( archiveFile, prefix );
+        final String archiveKey = getArchiveKey( archiveFile, prefix );
         if ( seenPaths.contains( archiveKey ) )
         {
             warn( "Archive: " + archiveFile + " has already been added. Skipping." );
@@ -149,7 +154,7 @@ public class AssemblyProxyArchiver
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            DefaultArchivedFileSet fs = new DefaultArchivedFileSet();
+            final DefaultArchivedFileSet fs = new DefaultArchivedFileSet();
 
             fs.setArchive( archiveFile );
             fs.setIncludes( includes );
@@ -175,12 +180,12 @@ public class AssemblyProxyArchiver
         }
     }
 
-    private String getArchiveKey( File archiveFile, String prefix )
+    private String getArchiveKey( final File archiveFile, final String prefix )
     {
         return archiveFile.getAbsolutePath() + ":" + prefix;
     }
 
-    private void debug( String message )
+    private void debug( final String message )
     {
         if ( ( logger != null ) && logger.isDebugEnabled() )
         {
@@ -188,7 +193,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    private void warn( String message )
+    private void warn( final String message )
     {
         if ( ( logger != null ) && logger.isWarnEnabled() )
         {
@@ -196,10 +201,9 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addArchivedFileSet( File archiveFile, String prefix )
-        throws ArchiverException
+    public void addArchivedFileSet( final File archiveFile, final String prefix ) throws ArchiverException
     {
-        String archiveKey = getArchiveKey( archiveFile, prefix );
+        final String archiveKey = getArchiveKey( archiveFile, prefix );
         if ( seenPaths.contains( archiveKey ) )
         {
             warn( "Archive: " + archiveFile + " has already been added. Skipping." );
@@ -209,7 +213,7 @@ public class AssemblyProxyArchiver
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            DefaultArchivedFileSet fs = new DefaultArchivedFileSet();
+            final DefaultArchivedFileSet fs = new DefaultArchivedFileSet();
 
             fs.setArchive( archiveFile );
             fs.setPrefix( rootPrefix + prefix );
@@ -233,10 +237,10 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addArchivedFileSet( File archiveFile, String[] includes, String[] excludes )
+    public void addArchivedFileSet( final File archiveFile, final String[] includes, final String[] excludes )
         throws ArchiverException
     {
-        String archiveKey = getArchiveKey( archiveFile, "" );
+        final String archiveKey = getArchiveKey( archiveFile, "" );
         if ( seenPaths.contains( archiveKey ) )
         {
             warn( "Archive: " + archiveFile + " has already been added. Skipping." );
@@ -246,7 +250,7 @@ public class AssemblyProxyArchiver
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            DefaultArchivedFileSet fs = new DefaultArchivedFileSet();
+            final DefaultArchivedFileSet fs = new DefaultArchivedFileSet();
 
             fs.setArchive( archiveFile );
             fs.setIncludes( includes );
@@ -272,10 +276,9 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addArchivedFileSet( File archiveFile )
-        throws ArchiverException
+    public void addArchivedFileSet( final File archiveFile ) throws ArchiverException
     {
-        String archiveKey = getArchiveKey( archiveFile, "" );
+        final String archiveKey = getArchiveKey( archiveFile, "" );
         if ( seenPaths.contains( archiveKey ) )
         {
             warn( "Archive: " + archiveFile + " has already been added. Skipping." );
@@ -285,7 +288,7 @@ public class AssemblyProxyArchiver
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            DefaultArchivedFileSet fs = new DefaultArchivedFileSet();
+            final DefaultArchivedFileSet fs = new DefaultArchivedFileSet();
 
             fs.setArchive( archiveFile );
             fs.setPrefix( rootPrefix );
@@ -309,13 +312,13 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addDirectory( File directory, String prefix, String[] includes, String[] excludes )
-        throws ArchiverException
+    public void addDirectory( final File directory, final String prefix, final String[] includes,
+                              final String[] excludes ) throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            DefaultFileSet fs = new DefaultFileSet();
+            final DefaultFileSet fs = new DefaultFileSet();
 
             fs.setDirectory( directory );
             fs.setIncludes( includes );
@@ -340,13 +343,12 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addDirectory( File directory, String prefix )
-        throws ArchiverException
+    public void addDirectory( final File directory, final String prefix ) throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            DefaultFileSet fs = new DefaultFileSet();
+            final DefaultFileSet fs = new DefaultFileSet();
 
             fs.setDirectory( directory );
             fs.setPrefix( rootPrefix + prefix );
@@ -369,13 +371,13 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addDirectory( File directory, String[] includes, String[] excludes )
+    public void addDirectory( final File directory, final String[] includes, final String[] excludes )
         throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            DefaultFileSet fs = new DefaultFileSet();
+            final DefaultFileSet fs = new DefaultFileSet();
 
             fs.setDirectory( directory );
             fs.setIncludes( includes );
@@ -400,13 +402,12 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addDirectory( File directory )
-        throws ArchiverException
+    public void addDirectory( final File directory ) throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            DefaultFileSet fs = new DefaultFileSet();
+            final DefaultFileSet fs = new DefaultFileSet();
 
             fs.setDirectory( directory );
             fs.setPrefix( rootPrefix );
@@ -429,7 +430,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addFile( File inputFile, String destFileName, int permissions )
+    public void addFile( final File inputFile, final String destFileName, final int permissions )
         throws ArchiverException
     {
         if ( acceptFile( inputFile ) )
@@ -455,8 +456,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addFile( File inputFile, String destFileName )
-        throws ArchiverException
+    public void addFile( final File inputFile, final String destFileName ) throws ArchiverException
     {
         if ( acceptFile( inputFile ) )
         {
@@ -481,8 +481,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void createArchive()
-        throws ArchiverException, IOException
+    public void createArchive() throws ArchiverException, IOException
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -541,6 +540,7 @@ public class AssemblyProxyArchiver
         }
     }
 
+    @SuppressWarnings( { "rawtypes", "deprecation" } )
     public Map getFiles()
     {
         inPublicApi.set( Boolean.TRUE );
@@ -593,7 +593,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void setDefaultDirectoryMode( int mode )
+    public void setDefaultDirectoryMode( final int mode )
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -606,7 +606,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void setDefaultFileMode( int mode )
+    public void setDefaultFileMode( final int mode )
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -619,7 +619,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void setDestFile( File destFile )
+    public void setDestFile( final File destFile )
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -632,7 +632,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void setForced( boolean forced )
+    public void setForced( final boolean forced )
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -645,7 +645,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void setIncludeEmptyDirs( boolean includeEmptyDirs )
+    public void setIncludeEmptyDirs( final boolean includeEmptyDirs )
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -658,15 +658,14 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void setDotFileDirectory( File dotFileDirectory )
+    public void setDotFileDirectory( final File dotFileDirectory )
     {
         throw new UnsupportedOperationException( "Undocumented feature of plexus-archiver; this is not yet supported." );
     }
 
-    public void addArchivedFileSet( ArchivedFileSet fileSet )
-        throws ArchiverException
+    public void addArchivedFileSet( final ArchivedFileSet fileSet ) throws ArchiverException
     {
-        String archiveKey = getArchiveKey( fileSet.getArchive(), "" );
+        final String archiveKey = getArchiveKey( fileSet.getArchive(), "" );
         if ( seenPaths.contains( archiveKey ) )
         {
             warn( "Archive: " + fileSet.getArchive() + " has already been added. Skipping." );
@@ -676,7 +675,7 @@ public class AssemblyProxyArchiver
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            PrefixedArchivedFileSet fs = new PrefixedArchivedFileSet( fileSet, rootPrefix, selectors );
+            final PrefixedArchivedFileSet fs = new PrefixedArchivedFileSet( fileSet, rootPrefix, selectors );
 
             debug( "Adding archived file-set in: " + fileSet.getArchive() + " to archive location: " + fs.getPrefix() );
 
@@ -696,13 +695,12 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addFileSet( FileSet fileSet )
-        throws ArchiverException
+    public void addFileSet( final FileSet fileSet ) throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
         try
         {
-            PrefixedFileSet fs = new PrefixedFileSet( fileSet, rootPrefix, selectors );
+            final PrefixedFileSet fs = new PrefixedFileSet( fileSet, rootPrefix, selectors );
 
             debug( "Adding file-set in: " + fileSet.getDirectory() + " to archive location: " + fs.getPrefix() );
 
@@ -723,26 +721,25 @@ public class AssemblyProxyArchiver
 
     private String getMethodName()
     {
-        NullPointerException npe = new NullPointerException();
-        StackTraceElement[] trace = npe.getStackTrace();
+        final NullPointerException npe = new NullPointerException();
+        final StackTraceElement[] trace = npe.getStackTrace();
 
-        StackTraceElement methodElement = trace[1];
+        final StackTraceElement methodElement = trace[1];
 
         return methodElement.getMethodName() + " (archiver line: " + methodElement.getLineNumber() + ")";
     }
 
-    private boolean acceptFile( File inputFile )
-        throws ArchiverException
+    private boolean acceptFile( final File inputFile ) throws ArchiverException
     {
         if ( Boolean.TRUE != inPublicApi.get() )
         {
             if ( selectors != null )
             {
-                FileInfo fileInfo = new DefaultFileInfo( inputFile );
+                final FileInfo fileInfo = new DefaultFileInfo( inputFile );
 
                 for ( int i = 0; i < selectors.length; i++ )
                 {
-                    FileSelector selector = selectors[i];
+                    final FileSelector selector = selectors[i];
 
                     try
                     {
@@ -751,10 +748,10 @@ public class AssemblyProxyArchiver
                             return false;
                         }
                     }
-                    catch ( IOException e )
+                    catch ( final IOException e )
                     {
                         throw new ArchiverException( "Error processing file: " + inputFile + " using selector: "
-                                                     + selectors[i], e );
+                                        + selectors[i], e );
                     }
                 }
             }
@@ -769,13 +766,12 @@ public class AssemblyProxyArchiver
 
         private final File inputFile;
 
-        DefaultFileInfo( File inputFile )
+        DefaultFileInfo( final File inputFile )
         {
             this.inputFile = inputFile;
         }
 
-        public InputStream getContents()
-            throws IOException
+        public InputStream getContents() throws IOException
         {
             return new FileInputStream( inputFile );
         }
@@ -797,9 +793,7 @@ public class AssemblyProxyArchiver
 
     }
 
-    public void addResource( PlexusIoResource resource,
-                             String destFileName,
-                             int permissions )
+    public void addResource( final PlexusIoResource resource, final String destFileName, final int permissions )
         throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
@@ -813,8 +807,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void addResources( PlexusIoResourceCollection resources )
-        throws ArchiverException
+    public void addResources( final PlexusIoResourceCollection resources ) throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -827,8 +820,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public ResourceIterator getResources()
-        throws ArchiverException
+    public ResourceIterator getResources() throws ArchiverException
     {
         return delegate.getResources();
     }
@@ -838,7 +830,7 @@ public class AssemblyProxyArchiver
         return delegate.getDuplicateBehavior();
     }
 
-    public void setDuplicateBehavior( String duplicate )
+    public void setDuplicateBehavior( final String duplicate )
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -871,7 +863,7 @@ public class AssemblyProxyArchiver
         return delegate.getOverrideFileMode();
     }
 
-    public void setDirectoryMode( int mode )
+    public void setDirectoryMode( final int mode )
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -884,7 +876,7 @@ public class AssemblyProxyArchiver
         }
     }
 
-    public void setFileMode( int mode )
+    public void setFileMode( final int mode )
     {
         inPublicApi.set( Boolean.TRUE );
         try

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java Tue Sep 21 20:34:50 2010
@@ -21,7 +21,6 @@ package org.apache.maven.plugin.assembly
 
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
 import org.apache.maven.plugin.assembly.AssemblyContext;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
@@ -29,8 +28,8 @@ import org.apache.maven.plugin.assembly.
 import org.codehaus.plexus.archiver.Archiver;
 
 /**
- * Handles one top-level section of the assembly descriptor, to determine which 
- * files to include in the assembly archive for that section.
+ * Handles one top-level section of the assembly descriptor, to determine which files to include in the assembly archive
+ * for that section.
  * 
  * @version $Id$
  */
@@ -41,34 +40,16 @@ public interface AssemblyArchiverPhase
     /**
      * Handle the associated section of the assembly descriptor.
      * 
-     * @param assembly The assembly descriptor to use
-     * @param archiver The archiver used to create the assembly archive, to 
-     *                 which files/directories/artifacts are added
-     * @param configSource The configuration for this assembly build, normally 
-     *                     derived from the plugin that launched the assembly 
-     *                     process.
-     *                     
-     * @deprecated Use {@link AssemblyArchiverPhase#execute(Assembly, Archiver, AssemblerConfigurationSource, AssemblyContext)}
-     *             instead. This method should be the equivalent of calling the new execute() method with a newly-minted
-     *             instance of {@link DefaultAssemblyContext}.
+     * @param assembly
+     *            The assembly descriptor to use
+     * @param archiver
+     *            The archiver used to create the assembly archive, to which files/directories/artifacts are added
+     * @param configSource
+     *            The configuration for this assembly build, normally derived from the plugin that launched the assembly
+     *            process.
+     * @param context
      */
-    void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource )
+    void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource,
+                  AssemblyContext context )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException;
-
-    /**
-     * Handle the associated section of the assembly descriptor.
-     * 
-     * @param assembly The assembly descriptor to use
-     * @param archiver The archiver used to create the assembly archive, to 
-     *                 which files/directories/artifacts are added
-     * @param configSource The configuration for this assembly build, normally 
-     *                     derived from the plugin that launched the assembly 
-     *                     process.
-     * @param context Context instance that contains the collected managed 
-     *                versions for dependencies, and potentially any caches that 
-     *                may be useful for the assembly process.
-     */
-    void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource, AssemblyContext context )
-        throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException;
-
 }

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java?rev=999612&r1=999611&r2=999612&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java Tue Sep 21 20:34:50 2010
@@ -21,15 +21,15 @@ package org.apache.maven.plugin.assembly
 
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
 import org.apache.maven.plugin.assembly.AssemblyContext;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.archive.task.AddDependencySetsTask;
-import org.apache.maven.plugin.assembly.artifact.DependencyResolver;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.project.MavenProjectBuilder;
 import org.codehaus.plexus.archiver.Archiver;
+import org.codehaus.plexus.component.annotations.Component;
+import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
 import org.codehaus.plexus.logging.Logger;
 
@@ -37,56 +37,37 @@ import org.codehaus.plexus.logging.Logge
  * Handles the top-level &lt;dependencySets/&gt; section of the assembly descriptor.
  * 
  * @version $Id$
- * @plexus.component role="org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase"
- *                   role-hint="dependency-sets"
  */
+@Component( role = AssemblyArchiverPhase.class, hint = "dependency-sets" )
 public class DependencySetAssemblyPhase
     extends AbstractLogEnabled
     implements AssemblyArchiverPhase
 {
 
-    /**
-     * @plexus.requirement
-     */
+    @Requirement
     private MavenProjectBuilder projectBuilder;
 
-    /**
-     * @plexus.requirement
-     */
-    private DependencyResolver dependencyResolver;
-
     public DependencySetAssemblyPhase()
     {
         // used for plexus init
     }
 
-    public DependencySetAssemblyPhase( MavenProjectBuilder projectBuilder, DependencyResolver dependencyResolver, Logger logger )
+    public DependencySetAssemblyPhase( final MavenProjectBuilder projectBuilder, final Logger logger )
     {
         this.projectBuilder = projectBuilder;
-        this.dependencyResolver = dependencyResolver;
-
         enableLogging( logger );
     }
 
     /**
      * {@inheritDoc}
      */
-    public void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource )
-        throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
-    {
-        execute( assembly, archiver, configSource, new DefaultAssemblyContext() );
-    }
-    
-    /**
-     * {@inheritDoc}
-     */
-    public void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource,
-                         AssemblyContext context )
+    public void execute( final Assembly assembly, final Archiver archiver,
+                         final AssemblerConfigurationSource configSource, final AssemblyContext context )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
-        AddDependencySetsTask task =
-            new AddDependencySetsTask( assembly.getDependencySets(), configSource.getProject(),
-                                       context.getManagedVersionMap(), projectBuilder, dependencyResolver, getLogger() );
+        final AddDependencySetsTask task =
+            new AddDependencySetsTask( assembly.getDependencySets(), context.getResolvedArtifacts(),
+                                       configSource.getProject(), projectBuilder, getLogger() );
 
         task.execute( archiver, configSource );
     }