org.apache.maven.plugin.assembly.archive
Class DefaultAssemblyArchiver

java.lang.Object
  extended by org.codehaus.plexus.logging.AbstractLogEnabled
      extended by org.apache.maven.plugin.assembly.archive.DefaultAssemblyArchiver
All Implemented Interfaces:
AssemblyArchiver, org.codehaus.plexus.logging.LogEnabled, org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable

@Component(role=AssemblyArchiver.class)
public class DefaultAssemblyArchiver
extends org.codehaus.plexus.logging.AbstractLogEnabled
implements AssemblyArchiver, org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable

Controller component designed to organize the many activities involved in creating an assembly archive. This includes locating and configuring Archiver instances, executing multiple AssemblyArchiverPhase instances to interpret the various sections of the assembly descriptor and determine which files to add, and other associated activities.

Version:
$Id: DefaultAssemblyArchiver.java 1641677 2014-11-25 19:44:07Z krosenvold $

Field Summary
 
Fields inherited from interface org.apache.maven.plugin.assembly.archive.AssemblyArchiver
ROLE
 
Constructor Summary
  DefaultAssemblyArchiver()
           
protected DefaultAssemblyArchiver(org.codehaus.plexus.archiver.manager.ArchiverManager archiverManager, List<AssemblyArchiverPhase> assemblyPhases)
           
 
Method Summary
 void contextualize(org.codehaus.plexus.context.Context context)
           
 File createArchive(Assembly assembly, String fullName, String format, AssemblerConfigurationSource configSource, boolean recompressZippedFiles)
          Create the assembly archive.
protected  org.codehaus.plexus.archiver.Archiver createArchiver(String format, boolean includeBaseDir, String finalName, AssemblerConfigurationSource configSource, List<ContainerDescriptorHandler> containerHandlers, boolean recompressZippedFiles)
          Creates the necessary archiver to build the distribution file.
protected  org.codehaus.plexus.archiver.Archiver createTarArchiver(String format, org.codehaus.plexus.archiver.tar.TarLongFileMode tarLongFileMode)
           
protected  org.codehaus.plexus.archiver.Archiver createWarArchiver()
           
protected  void setContainer(org.codehaus.plexus.PlexusContainer container)
           
 
Methods inherited from class org.codehaus.plexus.logging.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultAssemblyArchiver

public DefaultAssemblyArchiver()

DefaultAssemblyArchiver

protected DefaultAssemblyArchiver(org.codehaus.plexus.archiver.manager.ArchiverManager archiverManager,
                                  List<AssemblyArchiverPhase> assemblyPhases)
Parameters:
archiverManager - The archive manager.
assemblyPhases - The list of AssemblyArchiverPhase
Method Detail

createArchive

public File createArchive(Assembly assembly,
                          String fullName,
                          String format,
                          AssemblerConfigurationSource configSource,
                          boolean recompressZippedFiles)
                   throws ArchiveCreationException,
                          AssemblyFormattingException,
                          InvalidAssemblerConfigurationException
Create the assembly archive. Generally:
  1. Setup any directory structures for temporary files
  2. Calculate the output directory/file for the assembly
  3. Setup any handler components for special descriptor files we may encounter
  4. Lookup and configure the Archiver to be used
  5. 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.
  6. Iterate through the available AssemblyArchiverPhase instances, executing each to handle a different top-level section of the assembly descriptor, if that section is present.

Specified by:
createArchive in interface AssemblyArchiver
Parameters:
assembly - The Assembly
fullName - The full name.
format - The format.
configSource - The AssemblerConfigurationSource
recompressZippedFiles - recompress zipped files.
Returns:
The resulting archive file.
Throws:
ArchiveCreationException - when creation fails
AssemblyFormattingException - when formatting fails
InvalidAssemblerConfigurationException - when the configurationis bad

createArchiver

protected org.codehaus.plexus.archiver.Archiver createArchiver(String format,
                                                               boolean includeBaseDir,
                                                               String finalName,
                                                               AssemblerConfigurationSource configSource,
                                                               List<ContainerDescriptorHandler> containerHandlers,
                                                               boolean recompressZippedFiles)
                                                        throws org.codehaus.plexus.archiver.manager.NoSuchArchiverException
Creates the necessary archiver to build the distribution file.

Parameters:
format - Archive format
includeBaseDir - the base directory for include.
finalName - The final name.
configSource - AssemblerConfigurationSource
containerHandlers - The list of ContainerDescriptorHandler
recompressZippedFiles - recompress zipped files.
Returns:
archiver Archiver generated
Throws:
org.codehaus.plexus.archiver.ArchiverException
org.codehaus.plexus.archiver.manager.NoSuchArchiverException

createWarArchiver

protected org.codehaus.plexus.archiver.Archiver createWarArchiver()
                                                           throws org.codehaus.plexus.archiver.manager.NoSuchArchiverException
Throws:
org.codehaus.plexus.archiver.manager.NoSuchArchiverException

createTarArchiver

protected org.codehaus.plexus.archiver.Archiver createTarArchiver(String format,
                                                                  org.codehaus.plexus.archiver.tar.TarLongFileMode tarLongFileMode)
                                                           throws org.codehaus.plexus.archiver.manager.NoSuchArchiverException
Throws:
org.codehaus.plexus.archiver.manager.NoSuchArchiverException

contextualize

public void contextualize(org.codehaus.plexus.context.Context context)
                   throws org.codehaus.plexus.context.ContextException
Specified by:
contextualize in interface org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
Throws:
org.codehaus.plexus.context.ContextException

setContainer

protected void setContainer(org.codehaus.plexus.PlexusContainer container)


Copyright © 2002–2015 The Apache Software Foundation. All rights reserved.