@Component(role=AssemblyArchiver.class, instantiationStrategy="per-lookup") public class DefaultAssemblyArchiver extends org.codehaus.plexus.logging.AbstractLogEnabled implements AssemblyArchiver, org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
Archiver
instances, executing multiple .archive.phase.AssemblyArchiverPhase
instances to
interpret the various sections of the assembly descriptor and determine which files to add, and other associated
activities.Modifier and Type | Field and Description |
---|---|
private org.codehaus.plexus.archiver.manager.ArchiverManager |
archiverManager |
private java.util.List<AssemblyArchiverPhase> |
assemblyPhases |
private org.codehaus.plexus.PlexusContainer |
container |
private java.util.Map<java.lang.String,ContainerDescriptorHandler> |
containerDescriptorHandlers |
ROLE
Modifier | Constructor and Description |
---|---|
|
DefaultAssemblyArchiver() |
protected |
DefaultAssemblyArchiver(org.codehaus.plexus.archiver.manager.ArchiverManager archiverManager,
java.util.List<AssemblyArchiverPhase> assemblyPhases) |
Modifier and Type | Method and Description |
---|---|
private void |
configureArchiver(org.codehaus.plexus.archiver.Archiver archiver,
AssemblerConfigurationSource configSource) |
private void |
configureComponent(java.lang.Object component,
org.codehaus.plexus.util.xml.Xpp3Dom config,
AssemblerConfigurationSource configSource) |
private void |
configureContainerDescriptorHandler(ContainerDescriptorHandler handler,
org.codehaus.plexus.util.xml.Xpp3Dom config,
AssemblerConfigurationSource configSource) |
void |
contextualize(org.codehaus.plexus.context.Context context) |
java.io.File |
createArchive(Assembly assembly,
java.lang.String fullName,
java.lang.String format,
AssemblerConfigurationSource configSource,
boolean recompressZippedFiles,
java.lang.String mergeManifestMode)
Create the assembly archive.
|
protected org.codehaus.plexus.archiver.Archiver |
createArchiver(java.lang.String format,
boolean includeBaseDir,
java.lang.String finalName,
AssemblerConfigurationSource configSource,
java.util.List<ContainerDescriptorHandler> containerHandlers,
boolean recompressZippedFiles,
java.lang.String mergeManifestMode)
Creates the necessary archiver to build the distribution file.
|
protected org.codehaus.plexus.archiver.Archiver |
createTarArchiver(java.lang.String format,
org.codehaus.plexus.archiver.tar.TarLongFileMode tarLongFileMode) |
protected org.codehaus.plexus.archiver.Archiver |
createWarArchiver() |
private java.lang.Object[] |
getContainerRealm() |
private java.util.List<ContainerDescriptorHandler> |
selectContainerDescriptorHandlers(java.util.List<ContainerDescriptorHandlerConfig> requestedContainerDescriptorHandlers,
AssemblerConfigurationSource configSource) |
protected void |
setContainer(org.codehaus.plexus.PlexusContainer container) |
private java.util.List<AssemblyArchiverPhase> |
sortedPhases() |
private void |
validate(Assembly assembly) |
@Requirement private org.codehaus.plexus.archiver.manager.ArchiverManager archiverManager
@Requirement(role=AssemblyArchiverPhase.class) private java.util.List<AssemblyArchiverPhase> assemblyPhases
@Requirement(role=ContainerDescriptorHandler.class) private java.util.Map<java.lang.String,ContainerDescriptorHandler> containerDescriptorHandlers
private org.codehaus.plexus.PlexusContainer container
public DefaultAssemblyArchiver()
protected DefaultAssemblyArchiver(org.codehaus.plexus.archiver.manager.ArchiverManager archiverManager, java.util.List<AssemblyArchiverPhase> assemblyPhases)
archiverManager
- The archive manager.assemblyPhases
- The list of AssemblyArchiverPhase
private java.util.List<AssemblyArchiverPhase> sortedPhases()
public java.io.File createArchive(Assembly assembly, java.lang.String fullName, java.lang.String format, AssemblerConfigurationSource configSource, boolean recompressZippedFiles, java.lang.String mergeManifestMode) throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
Archiver
to be usedAssemblyArchiverPhase
instances, executing each to handle a different
top-level section of the assembly descriptor, if that section is present.createArchive
in interface AssemblyArchiver
assembly
- The Assembly
fullName
- The full name.format
- The format.configSource
- The AssemblerConfigurationSource
recompressZippedFiles
- recompress zipped files.mergeManifestMode
- How to handle already existing Manifest files (skip, merge, mergewithoutmain)ArchiveCreationException
- when creation failsAssemblyFormattingException
- when formatting failsInvalidAssemblerConfigurationException
- when the configurationis badprivate void validate(Assembly assembly) throws InvalidAssemblerConfigurationException
private java.util.List<ContainerDescriptorHandler> selectContainerDescriptorHandlers(java.util.List<ContainerDescriptorHandlerConfig> requestedContainerDescriptorHandlers, AssemblerConfigurationSource configSource) throws InvalidAssemblerConfigurationException
protected org.codehaus.plexus.archiver.Archiver createArchiver(java.lang.String format, boolean includeBaseDir, java.lang.String finalName, AssemblerConfigurationSource configSource, java.util.List<ContainerDescriptorHandler> containerHandlers, boolean recompressZippedFiles, java.lang.String mergeManifestMode) throws org.codehaus.plexus.archiver.manager.NoSuchArchiverException
format
- Archive formatincludeBaseDir
- the base directory for include.finalName
- The final name.configSource
- AssemblerConfigurationSource
containerHandlers
- The list of ContainerDescriptorHandler
recompressZippedFiles
- recompress zipped files.mergeManifestMode
- how to handle already existing Manifest filesorg.codehaus.plexus.archiver.ArchiverException
org.codehaus.plexus.archiver.manager.NoSuchArchiverException
private void configureContainerDescriptorHandler(ContainerDescriptorHandler handler, org.codehaus.plexus.util.xml.Xpp3Dom config, AssemblerConfigurationSource configSource) throws InvalidAssemblerConfigurationException
private void configureArchiver(org.codehaus.plexus.archiver.Archiver archiver, AssemblerConfigurationSource configSource)
private void configureComponent(java.lang.Object component, org.codehaus.plexus.util.xml.Xpp3Dom config, AssemblerConfigurationSource configSource) throws org.codehaus.plexus.component.repository.exception.ComponentLookupException, org.codehaus.plexus.component.configurator.ComponentConfigurationException
org.codehaus.plexus.component.repository.exception.ComponentLookupException
org.codehaus.plexus.component.configurator.ComponentConfigurationException
private java.lang.Object[] getContainerRealm()
protected org.codehaus.plexus.archiver.Archiver createWarArchiver() throws org.codehaus.plexus.archiver.manager.NoSuchArchiverException
org.codehaus.plexus.archiver.manager.NoSuchArchiverException
protected org.codehaus.plexus.archiver.Archiver createTarArchiver(java.lang.String format, org.codehaus.plexus.archiver.tar.TarLongFileMode tarLongFileMode) throws org.codehaus.plexus.archiver.manager.NoSuchArchiverException
org.codehaus.plexus.archiver.manager.NoSuchArchiverException
public void contextualize(org.codehaus.plexus.context.Context context) throws org.codehaus.plexus.context.ContextException
contextualize
in interface org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
org.codehaus.plexus.context.ContextException
protected void setContainer(org.codehaus.plexus.PlexusContainer container)