public abstract class AbstractArchiver extends org.codehaus.plexus.logging.AbstractLogEnabled implements Archiver, org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable, FilterEnabled, FinalizerEnabled
DEFAULT_DIR_MODE, DEFAULT_FILE_MODE, DEFAULT_SYMLILNK_MODE, DUPLICATES_ADD, DUPLICATES_FAIL, DUPLICATES_PRESERVE, DUPLICATES_SKIP, DUPLICATES_VALID_BEHAVIORS, ROLE| Constructor and Description |
|---|
AbstractArchiver() |
| Modifier and Type | Method and Description |
|---|---|
void |
addArchivedFileSet(ArchivedFileSet fileSet)
Adds the given archive file set to the archive.
|
void |
addArchivedFileSet(File archiveFile)
Obsolete, use
Archiver.addArchivedFileSet(ArchivedFileSet). |
void |
addArchivedFileSet(File archiveFile,
String prefix)
Obsolete, use
Archiver.addArchivedFileSet(ArchivedFileSet). |
void |
addArchivedFileSet(File archiveFile,
String[] includes,
String[] excludes)
Obsolete, use
Archiver.addArchivedFileSet(ArchivedFileSet). |
void |
addArchivedFileSet(File archiveFile,
String prefix,
String[] includes,
String[] excludes)
Obsolete, use
Archiver.addArchivedFileSet(ArchivedFileSet). |
void |
addArchiveFinalizer(ArchiveFinalizer finalizer) |
void |
addDirectory(File directory)
Obsolete, use
Archiver.addFileSet(FileSet). |
void |
addDirectory(File directory,
String prefix)
Obsolete, use
Archiver.addFileSet(FileSet). |
void |
addDirectory(File directory,
String[] includes,
String[] excludes)
Obsolete, use
Archiver.addFileSet(FileSet).You can use "inline" of this method in your
IDE to get the proper implementation for this release. |
void |
addDirectory(File directory,
String prefix,
String[] includes,
String[] excludes)
Obsolete, use
Archiver.addFileSet(FileSet). |
void |
addFile(File inputFile,
String destFileName) |
void |
addFile(File inputFile,
String destFileName,
int permissions) |
void |
addFileSet(FileSet fileSet)
Adds the given file set to the archive.
|
void |
addResource(org.codehaus.plexus.components.io.resources.PlexusIoResource resource,
String destFileName,
int permissions)
Adds the given resource collection to the archive.
|
void |
addResources(org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection collection)
Adds a resource collection to the archive.
|
void |
addSymlink(String symlinkName,
int permissions,
String symlinkDestination) |
void |
addSymlink(String symlinkName,
String symlinkDestination) |
protected ArchiveEntry |
asArchiveEntry(org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection collection,
org.codehaus.plexus.components.io.resources.PlexusIoResource resource) |
protected ArchiveEntry |
asArchiveEntry(org.codehaus.plexus.components.io.resources.PlexusIoResource resource,
String destFileName,
int permissions) |
protected org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection |
asResourceCollection(ArchivedFileSet fileSet) |
protected boolean |
checkForced() |
protected void |
cleanUp() |
protected abstract void |
close() |
void |
contextualize(org.codehaus.plexus.context.Context context)
Allows us to pull the ArchiverManager instance out of the container without causing a chicken-and-egg
instantiation/composition problem.
|
void |
createArchive() |
protected abstract void |
execute() |
protected List |
getArchiveFinalizers() |
protected abstract String |
getArchiveType() |
int |
getDefaultDirectoryMode() |
int |
getDefaultFileMode() |
File |
getDestFile() |
int |
getDirectoryMode() |
Map |
getDirs() |
String |
getDuplicateBehavior()
Returns the behavior of this archiver when duplicate files are detected.
|
int |
getFileMode() |
Map<String,ArchiveEntry> |
getFiles() |
boolean |
getIncludeEmptyDirs() |
protected org.codehaus.plexus.logging.Logger |
getLogger() |
int |
getOverrideDirectoryMode() |
int |
getOverrideFileMode() |
int |
getRawDefaultDirectoryMode()
Deprecated.
|
int |
getRawDefaultFileMode()
Deprecated.
|
ResourceIterator |
getResources()
Returns an iterator over instances of
ArchiveEntry, which have previously been added by calls to
Archiver.addResources(PlexusIoResourceCollection), Archiver.addResource(PlexusIoResource, String, int),
Archiver.addFileSet(FileSet), etc. |
protected boolean |
hasVirtualFiles() |
boolean |
isForced()
Returns, whether recreating the archive is forced (default).
|
boolean |
isIgnorePermissions() |
boolean |
isSupportingForced()
Returns, whether the archive supports uptodate checks.
|
protected boolean |
isUptodate() |
boolean |
isUseJvmChmod()
For java7 and above, new java method will be used, regardless of this setting
|
protected boolean |
revert(StringBuffer messageBuffer) |
protected void |
runArchiveFinalizers() |
void |
setArchiveFilters(List filters) |
void |
setArchiveFinalizers(List<ArchiveFinalizer> archiveFinalizers) |
void |
setDefaultDirectoryMode(int mode) |
void |
setDefaultFileMode(int mode) |
void |
setDestFile(File destFile) |
void |
setDirectoryMode(int mode) |
void |
setDotFileDirectory(File dotFileDirectory) |
void |
setDuplicateBehavior(String duplicate)
Set the behavior of this archiver when duplicate files are detected.
|
void |
setFileMode(int mode) |
void |
setForced(boolean forced)
Sets, whether recreating the archive is forced (default).
|
void |
setIgnorePermissions(boolean ignorePermissions) |
void |
setIncludeEmptyDirs(boolean includeEmptyDirs) |
void |
setUseJvmChmod(boolean useJvmChmod)
For java7 and above, new java method will be used, regardless of this setting
to use or not the jvm method for file permissions : user all not active for group permissions
|
protected void |
validate() |
public String getDuplicateBehavior()
ArchivergetDuplicateBehavior in interface Archiverpublic void setDuplicateBehavior(String duplicate)
ArchiverArchiverExceptionArchiver.DUPLICATES_ADD, Archiver.DUPLICATES_SKIP, Archiver.DUPLICATES_PRESERVE,
Archiver.DUPLICATES_FAIL.setDuplicateBehavior in interface Archiverpublic final void setFileMode(int mode)
setFileMode in interface Archiverpublic final void setDefaultFileMode(int mode)
setDefaultFileMode in interface Archiverpublic final int getOverrideFileMode()
getOverrideFileMode in interface Archiverpublic final int getFileMode()
getFileMode in interface Archiverpublic final int getDefaultFileMode()
getDefaultFileMode in interface Archiverpublic final int getRawDefaultFileMode()
Archiver.getDefaultFileMode().public final void setDirectoryMode(int mode)
setDirectoryMode in interface Archiverpublic final void setDefaultDirectoryMode(int mode)
setDefaultDirectoryMode in interface Archiverpublic final int getOverrideDirectoryMode()
getOverrideDirectoryMode in interface Archiverpublic final int getDirectoryMode()
getDirectoryMode in interface Archiverpublic final int getDefaultDirectoryMode()
getDefaultDirectoryMode in interface Archiverpublic final int getRawDefaultDirectoryMode()
Archiver.getDefaultDirectoryMode().public boolean getIncludeEmptyDirs()
getIncludeEmptyDirs in interface Archiverpublic void setIncludeEmptyDirs(boolean includeEmptyDirs)
setIncludeEmptyDirs in interface Archiverpublic void addDirectory(@Nonnull
File directory)
throws ArchiverException
ArchiverArchiver.addFileSet(FileSet).
You can use "inline" of this method in your
IDE to get the proper implementation for this release.addDirectory in interface ArchiverArchiverExceptionpublic void addDirectory(@Nonnull
File directory,
String prefix)
throws ArchiverException
ArchiverArchiver.addFileSet(FileSet).
You can use "inline" of this method in your
IDE to get the proper implementation for this release.addDirectory in interface ArchiverArchiverExceptionpublic void addDirectory(@Nonnull
File directory,
String[] includes,
String[] excludes)
throws ArchiverException
ArchiverArchiver.addFileSet(FileSet).You can use "inline" of this method in your
IDE to get the proper implementation for this release.addDirectory in interface ArchiverArchiverExceptionpublic void addDirectory(@Nonnull
File directory,
String prefix,
String[] includes,
String[] excludes)
throws ArchiverException
ArchiverArchiver.addFileSet(FileSet).
You can use "inline" of this method in your
IDE to get the proper implementation for this release.addDirectory in interface ArchiverArchiverExceptionpublic void addFileSet(@Nonnull
FileSet fileSet)
throws ArchiverException
ArchiverArchiver.addDirectory(File),
Archiver.addDirectory(File, String), Archiver.addDirectory(File, String[], String[]), and
Archiver.addDirectory(File, String, String[], String[]). However, as these methods are in widespread use, they
cannot easily be made deprecated.addFileSet in interface ArchiverArchiverException - Adding the file set failed.public void addFile(@Nonnull
File inputFile,
@Nonnull
String destFileName)
throws ArchiverException
addFile in interface ArchiverArchiverExceptionpublic void addSymlink(String symlinkName, String symlinkDestination) throws ArchiverException
addSymlink in interface ArchiverArchiverExceptionpublic void addSymlink(String symlinkName, int permissions, String symlinkDestination) throws ArchiverException
addSymlink in interface ArchiverArchiverExceptionprotected ArchiveEntry asArchiveEntry(@Nonnull org.codehaus.plexus.components.io.resources.PlexusIoResource resource, String destFileName, int permissions) throws ArchiverException
ArchiverExceptionprotected ArchiveEntry asArchiveEntry(org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection collection, org.codehaus.plexus.components.io.resources.PlexusIoResource resource) throws ArchiverException
ArchiverExceptionpublic void addResource(org.codehaus.plexus.components.io.resources.PlexusIoResource resource,
String destFileName,
int permissions)
throws ArchiverException
ArchiveraddResource in interface ArchiverArchiverExceptionpublic void addFile(@Nonnull
File inputFile,
@Nonnull
String destFileName,
int permissions)
throws ArchiverException
addFile in interface ArchiverArchiverException@Nonnull public ResourceIterator getResources() throws ArchiverException
ArchiverArchiveEntry, which have previously been added by calls to
Archiver.addResources(PlexusIoResourceCollection), Archiver.addResource(PlexusIoResource, String, int),
Archiver.addFileSet(FileSet), etc.getResources in interface ArchiverArchiverExceptionpublic Map<String,ArchiveEntry> getFiles()
public File getDestFile()
getDestFile in interface Archiverpublic void setDestFile(File destFile)
setDestFile in interface Archiverprotected org.codehaus.plexus.logging.Logger getLogger()
getLogger in class org.codehaus.plexus.logging.AbstractLogEnabledpublic Map getDirs()
protected org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection asResourceCollection(ArchivedFileSet fileSet) throws ArchiverException
ArchiverExceptionpublic void addResources(org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection collection)
throws ArchiverException
addResources in interface ArchiverArchiverExceptionpublic void addArchivedFileSet(ArchivedFileSet fileSet) throws ArchiverException
ArchiverArchiver.addArchivedFileSet(File), Archiver.addArchivedFileSet(File, String[], String[]), and
Archiver.addArchivedFileSet(File, String, String[], String[]). However, as these methods are in widespread use,
they cannot easily be made deprecated.
Stream transformers are supported on this methodaddArchivedFileSet in interface ArchiverArchiverExceptionpublic void addArchivedFileSet(@Nonnull
File archiveFile,
String prefix,
String[] includes,
String[] excludes)
throws ArchiverException
ArchiverArchiver.addArchivedFileSet(ArchivedFileSet). You can use "inline" of this method in your
IDE to get the proper implementation for this release.addArchivedFileSet in interface ArchiverArchiverExceptionpublic void addArchivedFileSet(@Nonnull
File archiveFile,
String prefix)
throws ArchiverException
ArchiverArchiver.addArchivedFileSet(ArchivedFileSet). You can use "inline" of this method in your
IDE to get the proper implementation for this release.addArchivedFileSet in interface ArchiverArchiverExceptionpublic void addArchivedFileSet(@Nonnull
File archiveFile,
String[] includes,
String[] excludes)
throws ArchiverException
ArchiverArchiver.addArchivedFileSet(ArchivedFileSet). You can use "inline" of this method in your
IDE to get the proper implementation for this release.addArchivedFileSet in interface ArchiverArchiverExceptionpublic void addArchivedFileSet(@Nonnull
File archiveFile)
throws ArchiverException
ArchiverArchiver.addArchivedFileSet(ArchivedFileSet). You can use "inline" of this method in your
IDE to get the proper implementation for this release.addArchivedFileSet in interface ArchiverArchiverExceptionpublic void contextualize(org.codehaus.plexus.context.Context context)
throws org.codehaus.plexus.context.ContextException
contextualize in interface org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizableorg.codehaus.plexus.context.ContextExceptionpublic boolean isForced()
ArchiverReturns, whether recreating the archive is forced (default). Setting this option to false means, that the archiver should compare the timestamps of included files with the timestamp of the target archive and rebuild the archive only, if the latter timestamp precedes the former timestamps. Checking for timestamps will typically offer a performance gain (in particular, if the following steps in a build can be suppressed, if an archive isn't recrated) on the cost that you get inaccurate results from time to time. In particular, removal of source files won't be detected.
An archiver doesn't necessarily support checks for uptodate. If so, setting this option to true will simply be
ignored. The method Archiver.isSupportingForced() may be called to check whether an archiver does support
uptodate checks.
isForced in interface ArchiverArchiver.setForced(boolean),
Archiver.isSupportingForced()public void setForced(boolean forced)
ArchiverSets, whether recreating the archive is forced (default). Setting this option to false means, that the archiver should compare the timestamps of included files with the timestamp of the target archive and rebuild the archive only, if the latter timestamp precedes the former timestamps. Checking for timestamps will typically offer a performance gain (in particular, if the following steps in a build can be suppressed, if an archive isn't recrated) on the cost that you get inaccurate results from time to time. In particular, removal of source files won't be detected.
An archiver doesn't necessarily support checks for uptodate. If so, setting this option to true will simply be
ignored. The method Archiver.isSupportingForced() may be called to check whether an archiver does support
uptodate checks.
setForced in interface Archiverforced - True, if the target archive should always be created; false otherwiseArchiver.isForced(),
Archiver.isSupportingForced()public void setArchiveFilters(List filters)
setArchiveFilters in interface FilterEnabledpublic void addArchiveFinalizer(ArchiveFinalizer finalizer)
addArchiveFinalizer in interface FinalizerEnabledpublic void setArchiveFinalizers(List<ArchiveFinalizer> archiveFinalizers)
setArchiveFinalizers in interface FinalizerEnabledpublic void setDotFileDirectory(File dotFileDirectory)
setDotFileDirectory in interface Archiverprotected boolean isUptodate()
throws ArchiverException
ArchiverExceptionprotected boolean checkForced()
throws ArchiverException
ArchiverExceptionpublic boolean isSupportingForced()
ArchiverArchiver.setForced(boolean) to true.isSupportingForced in interface ArchiverArchiver.setForced(boolean),
Archiver.isForced()protected List getArchiveFinalizers()
protected void runArchiveFinalizers()
throws ArchiverException
ArchiverExceptionpublic final void createArchive()
throws ArchiverException,
IOException
createArchive in interface ArchiverArchiverExceptionIOExceptionprotected boolean hasVirtualFiles()
protected boolean revert(StringBuffer messageBuffer)
protected void validate()
throws ArchiverException,
IOException
ArchiverExceptionIOExceptionprotected abstract String getArchiveType()
protected abstract void close()
throws IOException
IOExceptionprotected void cleanUp()
throws IOException
IOExceptionprotected abstract void execute()
throws ArchiverException,
IOException
ArchiverExceptionIOExceptionpublic boolean isUseJvmChmod()
ArchiverisUseJvmChmod in interface Archiverpublic void setUseJvmChmod(boolean useJvmChmod)
ArchiversetUseJvmChmod in interface Archiverpublic boolean isIgnorePermissions()
isIgnorePermissions in interface Archiverpublic void setIgnorePermissions(boolean ignorePermissions)
setIgnorePermissions in interface ArchiverCopyright © 2001-2014 Codehaus. All Rights Reserved.