TrueZIP 6.8.3

de.schlichtherle.io.archive.zip
Class CheckedZipDriver

java.lang.Object
  extended by de.schlichtherle.io.archive.spi.AbstractArchiveDriver
      extended by de.schlichtherle.io.archive.zip.ZipDriver
          extended by de.schlichtherle.io.archive.zip.CheckedZipDriver
All Implemented Interfaces:
ArchiveDriver, Serializable
Direct Known Subclasses:
CheckedZip32Driver

public class CheckedZipDriver
extends ZipDriver

An archive driver for ZIP files which checks the CRC-32 values for all ZIP entries in input archives. The additional CRC-32 computation makes this class slower than its super class.

If there is a mismatch of the CRC-32 values for a ZIP entry in an input archive, the InputStream.close() method of the corresponding stream for the archive entry will throw a CRC32Exception. This exception is then propagated through the stack up to the corresponding file operation in the package de.schlichtherle.io where it is either allowed to pass on or is catched and processed accordingly. For example, the FilterInputStream.close() method would allow the CRC32Exception to pass on to the client application, whereas the File.catTo(OutputStream) method would simply return false. Other than this, the archive entry will be processed normally. So if just the CRC-32 value for the entry in the archive file has been modified, you can still read its entire contents.

Instances of this class are immutable.

Since:
TrueZIP 6.1
Author:
Christian Schlichtherle
See Also:
CheckedZipInputArchive, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class de.schlichtherle.io.archive.spi.AbstractArchiveDriver
AbstractArchiveDriver.InconsistentCharsetSupportError
 
Field Summary
private static long serialVersionUID
           
 
Fields inherited from class de.schlichtherle.io.archive.zip.ZipDriver
DEFAULT_CHARSET, DEFAULT_LEVEL, TEMP_FILE_PREFIX
 
Constructor Summary
CheckedZipDriver()
          Equivalent to this(DEFAULT_CHARSET, null, null, false, false, DEFAULT_LEVEL).
CheckedZipDriver(int level)
          Equivalent to this(charset, null, null, false, false, DEFAULT_LEVEL).
CheckedZipDriver(String charset)
          Equivalent to this(charset, null, null, false, false, DEFAULT_LEVEL).
CheckedZipDriver(String charset, Icon openIcon, Icon closedIcon, boolean preambled, boolean postambled, int level)
          Constructs a new checked ZIP driver.
 
Method Summary
protected  ZipInputArchive createZipInputArchive(Archive archive, ReadOnlyFile rof)
           
 
Methods inherited from class de.schlichtherle.io.archive.zip.ZipDriver
createArchiveEntry, createInputArchive, createOutputArchive, createZip32InputArchive, createZip32OutputArchive, createZipEntry, createZipEntry, createZipOutputArchive, getLevel, getPostambled, getPreambled
 
Methods inherited from class de.schlichtherle.io.archive.spi.AbstractArchiveDriver
ensureEncodable, getCharset, getClosedIcon, getEncoding, getOpenIcon
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.schlichtherle.io.archive.spi.ArchiveDriver
equals, hashCode
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values
Constructor Detail

CheckedZipDriver

public CheckedZipDriver()
Equivalent to this(DEFAULT_CHARSET, null, null, false, false, DEFAULT_LEVEL).


CheckedZipDriver

public CheckedZipDriver(String charset)
Equivalent to this(charset, null, null, false, false, DEFAULT_LEVEL).


CheckedZipDriver

public CheckedZipDriver(int level)
Equivalent to this(charset, null, null, false, false, DEFAULT_LEVEL).


CheckedZipDriver

public CheckedZipDriver(String charset,
                        Icon openIcon,
                        Icon closedIcon,
                        boolean preambled,
                        boolean postambled,
                        int level)
Constructs a new checked ZIP driver.

Method Detail

createZipInputArchive

protected ZipInputArchive createZipInputArchive(Archive archive,
                                                ReadOnlyFile rof)
                                         throws IOException
Overrides:
createZipInputArchive in class ZipDriver
Throws:
IOException

TrueZIP 6.8.3

Copyright © 2005-2011 Schlichtherle IT Services. All Rights Reserved.