Package org.apache.tools.zip
Class AbstractUnicodeExtraField
- java.lang.Object
-
- org.apache.tools.zip.AbstractUnicodeExtraField
-
- All Implemented Interfaces:
ZipExtraField
- Direct Known Subclasses:
UnicodeCommentExtraField,UnicodePathExtraField
public abstract class AbstractUnicodeExtraField extends java.lang.Object implements ZipExtraField
A common base class for Unicode extra information extra fields.
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractUnicodeExtraField()protectedAbstractUnicodeExtraField(java.lang.String text, byte[] bytes)Assemble as unicode extension from the name/comment and encoding of the original zip entry.protectedAbstractUnicodeExtraField(java.lang.String text, byte[] bytes, int off, int len)Assemble as unicode extension from the name/comment and encoding of the original zip entry.
-
Method Summary
Modifier and Type Method Description byte[]getCentralDirectoryData()The actual data to put into central directory - without Header-ID or length specifier.ZipShortgetCentralDirectoryLength()Length of the extra field in the central directory - without Header-ID or length specifier.byte[]getLocalFileDataData()The actual data to put into local file data - without Header-ID or length specifier.ZipShortgetLocalFileDataLength()Length of the extra field in the local file data - without Header-ID or length specifier.longgetNameCRC32()byte[]getUnicodeName()voidparseFromLocalFileData(byte[] buffer, int offset, int length)Populate data from this array as if it was in local file data.voidsetNameCRC32(long nameCRC32)voidsetUnicodeName(byte[] unicodeName)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.tools.zip.ZipExtraField
getHeaderId
-
-
-
-
Constructor Detail
-
AbstractUnicodeExtraField
protected AbstractUnicodeExtraField()
-
AbstractUnicodeExtraField
protected AbstractUnicodeExtraField(java.lang.String text, byte[] bytes, int off, int len)Assemble as unicode extension from the name/comment and encoding of the original zip entry.- Parameters:
text- The file name or comment.bytes- The encoded of the filename or comment in the zip file.off- The offset of the encoded filename or comment inbytes.len- The length of the encoded filename or comment inbytes.
-
AbstractUnicodeExtraField
protected AbstractUnicodeExtraField(java.lang.String text, byte[] bytes)Assemble as unicode extension from the name/comment and encoding of the original zip entry.- Parameters:
text- The file name or comment.bytes- The encoded of the filename or comment in the zip file.
-
-
Method Detail
-
getNameCRC32
public long getNameCRC32()
- Returns:
- The CRC32 checksum of the filename or comment as encoded in the central directory of the zip file.
-
setNameCRC32
public void setNameCRC32(long nameCRC32)
- Parameters:
nameCRC32- The CRC32 checksum of the filename as encoded in the central directory of the zip file to set.
-
getUnicodeName
public byte[] getUnicodeName()
- Returns:
- The utf-8 encoded name.
-
setUnicodeName
public void setUnicodeName(byte[] unicodeName)
- Parameters:
unicodeName- The utf-8 encoded name to set.
-
getCentralDirectoryData
public byte[] getCentralDirectoryData()
The actual data to put into central directory - without Header-ID or length specifier.- Specified by:
getCentralDirectoryDatain interfaceZipExtraField- Returns:
- the data
-
getCentralDirectoryLength
public ZipShort getCentralDirectoryLength()
Length of the extra field in the central directory - without Header-ID or length specifier.- Specified by:
getCentralDirectoryLengthin interfaceZipExtraField- Returns:
- the length of the field in the central directory
-
getLocalFileDataData
public byte[] getLocalFileDataData()
The actual data to put into local file data - without Header-ID or length specifier.- Specified by:
getLocalFileDataDatain interfaceZipExtraField- Returns:
- the data
-
getLocalFileDataLength
public ZipShort getLocalFileDataLength()
Length of the extra field in the local file data - without Header-ID or length specifier.- Specified by:
getLocalFileDataLengthin interfaceZipExtraField- Returns:
- the length of the field in the local file data
-
parseFromLocalFileData
public void parseFromLocalFileData(byte[] buffer, int offset, int length) throws java.util.zip.ZipExceptionPopulate data from this array as if it was in local file data.- Specified by:
parseFromLocalFileDatain interfaceZipExtraField- Parameters:
buffer- an array of bytesoffset- the start offsetlength- the number of bytes in the array from offset- Throws:
java.util.zip.ZipException- on error
-
-