Package org.apache.tools.zip
Class UnrecognizedExtraField
java.lang.Object
org.apache.tools.zip.UnrecognizedExtraField
- All Implemented Interfaces:
CentralDirectoryParsingZipExtraField
,ZipExtraField
Simple placeholder for all those extra fields we don't want to deal
with.
Assumes local file data and central directory entries are identical - unless told the opposite.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionbyte[]
Get the central data.Get the central data length.Get the header id.byte[]
Get the local data.Get the length of the local data.void
parseFromCentralDirectoryData
(byte[] data, int offset, int length) Populate data from this array as if it was in central directory data.void
parseFromLocalFileData
(byte[] data, int offset, int length) Populate data from this array as if it was in local file data.void
setCentralDirectoryData
(byte[] data) Set the extra field data in central directory.void
setHeaderId
(ZipShort headerId) Set the header id.void
setLocalFileDataData
(byte[] data) Set the extra field data in the local file data - without Header-ID or length specifier.
-
Constructor Details
-
UnrecognizedExtraField
public UnrecognizedExtraField()
-
-
Method Details
-
setHeaderId
Set the header id.- Parameters:
headerId
- the header id to use
-
getHeaderId
Get the header id.- Specified by:
getHeaderId
in interfaceZipExtraField
- Returns:
- the header id
-
setLocalFileDataData
public void setLocalFileDataData(byte[] data) Set the extra field data in the local file data - without Header-ID or length specifier.- Parameters:
data
- the field data to use
-
getLocalFileDataLength
Get the length of the local data.- Specified by:
getLocalFileDataLength
in interfaceZipExtraField
- Returns:
- the length of the local data
-
getLocalFileDataData
public byte[] getLocalFileDataData()Get the local data.- Specified by:
getLocalFileDataData
in interfaceZipExtraField
- Returns:
- the local data
-
setCentralDirectoryData
public void setCentralDirectoryData(byte[] data) Set the extra field data in central directory.- Parameters:
data
- the data to use
-
getCentralDirectoryLength
Get the central data length. If there is no central data, get the local file data length.- Specified by:
getCentralDirectoryLength
in interfaceZipExtraField
- Returns:
- the central data length
-
getCentralDirectoryData
public byte[] getCentralDirectoryData()Get the central data.- Specified by:
getCentralDirectoryData
in interfaceZipExtraField
- Returns:
- the central data if present, else return the local file data
-
parseFromLocalFileData
public void parseFromLocalFileData(byte[] data, int offset, int length) Description copied from interface:ZipExtraField
Populate data from this array as if it was in local file data.- Specified by:
parseFromLocalFileData
in interfaceZipExtraField
- Parameters:
data
- the array of bytes.offset
- the source location in the data array.length
- the number of bytes to use in the data array.- See Also:
-
parseFromCentralDirectoryData
public void parseFromCentralDirectoryData(byte[] data, int offset, int length) Description copied from interface:CentralDirectoryParsingZipExtraField
Populate data from this array as if it was in central directory data.- Specified by:
parseFromCentralDirectoryData
in interfaceCentralDirectoryParsingZipExtraField
- Parameters:
data
- the array of bytes.offset
- the source location in the data array.length
- the number of bytes to use in the data array.
-