org.codehaus.plexus.archiver.zip
public abstract class AbstractZipArchiver extends AbstractArchiver implements FilterEnabled, FinalizerEnabled
Version: $Revision: 3651 $ $Date: 2006-08-21 17:05:02 -0400 (Mon, 21 Aug 2006) $
Field Summary | |
---|---|
protected Hashtable | addedDirs |
Vector | addedFiles |
protected boolean | addingNewFiles
true when we are adding new files into the Zip file, as opposed
to adding back the unchanged files |
protected String | archiveType |
String | comment |
boolean | doCompress |
boolean | doFilesonly |
protected boolean | doubleFilePass |
boolean | doUpdate |
protected String | duplicate |
String | encoding
Encoding to use for filenames, defaults to the platform's
default encoding. |
protected Hashtable | entries |
static long | EMPTY_CRC |
FilterSupport | filterSupport |
List | finalizers |
boolean | roundUp
Whether the file modification times will be rounded up to the
next even number of seconds. |
boolean | savedDoUpdate |
protected boolean | skipWriting |
Method Summary | |
---|---|
protected void | addParentDirs(File baseDir, String entry, ZipOutputStream zOut, String prefix)
Ensure all parent dirs of a given entry have been added. |
protected void | addResources(Map resources, ZipOutputStream zOut)
Add the given resources.
|
protected void | cleanUp()
Do any clean up necessary to allow this instance to be used again.
|
void | createArchive() |
void | createArchiveMain() |
protected boolean | createEmptyZip(File zipFile)
Create an empty zip file
|
protected void | finalizeZipOutputStream(ZipOutputStream zOut)
method for subclasses to override |
protected List | getArchiveFinalizers() |
String | getComment() |
int | getDirMode() |
String | getEncoding() |
int | getFileMode() |
protected Map | getResourcesToAdd(File file) |
protected Map | getResourcesToUpdate(File file) |
protected void | initZipOutputStream(ZipOutputStream zOut)
method for subclasses to override |
boolean | isCompress() |
boolean | isFilesonly() |
boolean | isInUpdateMode() |
boolean | isRoundUp() |
boolean | isSupportingForced() |
void | reset()
Makes this instance reset all attributes to their default
values and forget all children.
|
protected void | runArchiveFinalizers() |
void | setArchiveFilters(List filters) |
void | setArchiveFinalizers(List archiveFinalizers) |
void | setComment(String comment) |
void | setCompress(boolean compress) |
void | setDirMode(String octalString)
A 3 digit octal string, specify the user, group and
other modes in the standard Unix fashion;
optional, default=0755
|
void | setEncoding(String encoding) |
void | setFileMode(String octalString)
A 3 digit octal string, specify the user, group and
other modes in the standard Unix fashion;
optional, default=0644
|
void | setFilesonly(boolean f)
If true, emulate Sun's jar utility by not adding parent directories;
optional, defaults to false. |
void | setRoundUp(boolean r)
Whether the file modification times will be rounded up to the
next even number of seconds.
|
void | setUpdateMode(boolean update) |
protected void | zipDir(File dir, ZipOutputStream zOut, String vPath, int mode) |
protected void | zipFile(InputStream in, ZipOutputStream zOut, String vPath, long lastModified, File fromArchive, int mode)
Adds a new entry to the archive, takes care of duplicates as well.
|
protected void | zipFile(ArchiveEntry entry, ZipOutputStream zOut, String vPath)
Method that gets called when adding from java.io.File instances.
|
Parameters: resources the resources to add zOut the stream to write to
When we get here, the Zip file has been closed and all we need to do is to reset some globals.
This method will only reset globals that have been changed during execute(), it will not alter the attributes or nested child elements. If you want to reset the instance so that you can later zip a completely different set of files, you must use the reset method.
See Also: AbstractZipArchiver
Returns: true for historic reasons
Deprecated: use AbstractArchiver.getDefaultDirectoryMode() instead.
Deprecated: use AbstractArchiver.getDefaultFileMode() instead.
See Also: AbstractZipArchiver
Deprecated: use AbstractArchiver.setDefaultDirectoryMode(int).
A 3 digit octal string, specify the user, group and other modes in the standard Unix fashion; optional, default=0755Deprecated: use AbstractArchiver.setDefaultFileMode(int) instead.
A 3 digit octal string, specify the user, group and other modes in the standard Unix fashion; optional, default=0644Zip archives store file modification times with a granularity of two seconds, so the times will either be rounded up or down. If you round down, the archive will always seem out-of-date when you rerun the task, so the default is to round up. Rounding up may lead to a different type of problems like JSPs inside a web archive that seem to be slightly more recent than precompiled pages, rendering precompilation useless.
Parameters: in the stream to read data for the entry from. zOut the stream to write to. vPath the name this entry shall have in the archive. lastModified last modification time for the entry. fromArchive the original archive we are copying this entry from, will be null if we are not copying from an archive. mode the Unix permissions to set.
This implementation delegates to the six-arg version.
Parameters: entry the file to add to the archive zOut the stream to write to vPath the name this entry shall have in the archive