Author: jdcasey
Date: Wed Aug 22 08:12:11 2007
New Revision: 568646
URL: http://svn.apache.org/viewvc?rev=568646&view=rev
Log:
Cleaning up component loading for ContainerDescriptorHandler processor
instances.
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
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=568646&r1=568645&r2=568646&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
Wed Aug 22 08:12:11 2007
@@ -11,8 +11,6 @@
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.codehaus.plexus.PlexusConstants;
-import org.codehaus.plexus.PlexusContainer;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.ArchiverException;
import org.codehaus.plexus.archiver.filters.JarSecurityFileSelector;
@@ -23,11 +21,7 @@
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.repository.exception.ComponentLookupException;
-import org.codehaus.plexus.context.Context;
-import org.codehaus.plexus.context.ContextException;
import org.codehaus.plexus.logging.AbstractLogEnabled;
-import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
import java.io.File;
import java.io.IOException;
@@ -35,13 +29,14 @@
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
/**
* @plexus.component
role="org.apache.maven.plugin.assembly.archive.AssemblyArchiver"
role-hint="default"
*/
public class DefaultAssemblyArchiver
extends AbstractLogEnabled
- implements AssemblyArchiver, Contextualizable
+ implements AssemblyArchiver
{
/**
@@ -54,12 +49,10 @@
*/
private List assemblyPhases;
-// /**
-// * @plexus.requirement
-// */
-// private ActiveCollectionManager collectionManager;
-
- private PlexusContainer container;
+ /**
+ * @plexus.requirement
role="org.apache.maven.plugin.assembly.filter.ContainerDescriptorHandler"
+ */
+ private Map containerDescriptorHandlers;
public DefaultAssemblyArchiver()
{
@@ -70,7 +63,6 @@
public DefaultAssemblyArchiver( ArchiverManager archiverManager,
ActiveCollectionManager collectionManager, List assemblyPhases )
{
this.archiverManager = archiverManager;
-// this.collectionManager = collectionManager;
this.assemblyPhases = assemblyPhases;
}
@@ -131,40 +123,27 @@
return destFile;
}
- private List createContainerDescriptorHandlers( List
containerDescriptorHandlers )
+ private List createContainerDescriptorHandlers( List
requestedContainerDescriptorHandlers )
throws InvalidAssemblerConfigurationException
{
- if ( containerDescriptorHandlers == null )
+ if ( requestedContainerDescriptorHandlers == null )
{
- containerDescriptorHandlers = new ArrayList();
+ requestedContainerDescriptorHandlers = new ArrayList();
}
List handlers = new ArrayList();
boolean foundPlexus = false;
- if ( ( containerDescriptorHandlers != null ) &&
!containerDescriptorHandlers.isEmpty() )
+ if ( ( requestedContainerDescriptorHandlers != null ) &&
!requestedContainerDescriptorHandlers.isEmpty() )
{
-// ActiveMap handlerMap = collectionManager.getActiveMap(
ContainerDescriptorHandler.class );
-
- for ( Iterator it = containerDescriptorHandlers.iterator();
it.hasNext(); )
+ for ( Iterator it =
requestedContainerDescriptorHandlers.iterator(); it.hasNext(); )
{
ContainerDescriptorHandlerConfig config =
(ContainerDescriptorHandlerConfig) it.next();
String hint = config.getHandlerName();
- ContainerDescriptorHandler handler;
-
- try
- {
- handler = (ContainerDescriptorHandler) container.lookup(
ContainerDescriptorHandler.class.getName(), hint );
-// handler = (ContainerDescriptorHandler)
handlerMap.checkedGet( hint );
- }
- catch ( ComponentLookupException e )
- {
- getLogger().debug( "Failed to load container descriptor
handler: " + hint, e );
- throw new InvalidAssemblerConfigurationException(
"containerDescriptorHandler: " + hint + " could not be loaded.", e );
- }
+ ContainerDescriptorHandler handler =
(ContainerDescriptorHandler) containerDescriptorHandlers.get( hint );
- System.out.println( "Loaded container descriptor handler with
hint: " + hint + " (component: " + handler + ")" );
+ System.out.println( "Found container descriptor handler with
hint: " + hint + " (component: " + handler + ")" );
handlers.add( handler );
@@ -285,12 +264,6 @@
tarArchiver.setLongfile( tarFileMode );
return tarArchiver;
- }
-
- public void contextualize( Context context )
- throws ContextException
- {
- container = (PlexusContainer) context.get( PlexusConstants.PLEXUS_KEY
);
}
}