Class X7875_NewUnix
java.lang.Object
org.apache.commons.compress.archivers.zip.X7875_NewUnix
- All Implemented Interfaces:
Serializable
,Cloneable
,ZipExtraField
An extra field that stores UNIX UID/GID data (owner & group ownership) for a given ZIP entry. We're using the field definition given in Info-Zip's source
archive: zip-3.0.tar.gz/proginfo/extrafld.txt
Local-header version: Value Size Description ----- ---- ----------- 0x7875 Short tag for this extra block type ("ux") TSize Short total data size for this block Version 1 byte version of this extra field, currently 1 UIDSize 1 byte Size of UID field UID Variable UID for this entry (little-endian) GIDSize 1 byte Size of GID field GID Variable GID for this entry (little-endian) Central-header version: Value Size Description ----- ---- ----------- 0x7855 Short tag for this extra block type ("Ux") TSize Short total data size for this block (0)
- Since:
- 1.5
- See Also:
-
Field Summary
Fields inherited from interface org.apache.commons.compress.archivers.zip.ZipExtraField
EXTRAFIELD_HEADER_SIZE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionclone()
boolean
byte[]
The actual data to put into central directory data - without Header-ID or length specifier.Length of the extra field in the central directory data - without Header-ID or length specifier.long
getGID()
Gets the GID as a long.The Header-ID.byte[]
The actual data to put into local file data - without Header-ID or length specifier.Length of the extra field in the local file data - without Header-ID or length specifier.long
getUID()
Gets the UID as a long.int
hashCode()
void
parseFromCentralDirectoryData
(byte[] buffer, int offset, int length) Doesn't do anything since this class doesn't store anything inside the central directory.void
parseFromLocalFileData
(byte[] data, int offset, int length) Populate data from this array as if it was in local file data.void
setGID
(long l) Sets the GID.void
setUID
(long l) Sets the UID.toString()
Returns a String representation of this class useful for debugging purposes.
-
Constructor Details
-
X7875_NewUnix
public X7875_NewUnix()Constructor for X7875_NewUnix.
-
-
Method Details
-
clone
- Overrides:
clone
in classObject
- Throws:
CloneNotSupportedException
-
equals
-
getCentralDirectoryData
The actual data to put into central directory data - without Header-ID or length specifier.- Specified by:
getCentralDirectoryData
in interfaceZipExtraField
- Returns:
- get the data
-
getCentralDirectoryLength
Length of the extra field in the central directory data - without Header-ID or length specifier.- Specified by:
getCentralDirectoryLength
in interfaceZipExtraField
- Returns:
- a
ZipShort
for the length of the data of this extra field
-
getGID
Gets the GID as a long. GID is typically a 32 bit unsigned value on most UNIX systems, so we return a long to avoid integer overflow into the negatives in case values above and including 2^31 are being used.- Returns:
- the GID value.
-
getHeaderId
The Header-ID.- Specified by:
getHeaderId
in interfaceZipExtraField
- Returns:
- the value for the header id for this extrafield
-
getLocalFileDataData
The actual data to put into local file data - without Header-ID or length specifier.- Specified by:
getLocalFileDataData
in interfaceZipExtraField
- Returns:
- get the data
-
getLocalFileDataLength
Length of the extra field in the local file data - without Header-ID or length specifier.- Specified by:
getLocalFileDataLength
in interfaceZipExtraField
- Returns:
- a
ZipShort
for the length of the data of this extra field
-
getUID
Gets the UID as a long. UID is typically a 32 bit unsigned value on most UNIX systems, so we return a long to avoid integer overflow into the negatives in case values above and including 2^31 are being used.- Returns:
- the UID value.
-
hashCode
-
parseFromCentralDirectoryData
public void parseFromCentralDirectoryData(byte[] buffer, int offset, int length) throws ZipException Doesn't do anything since this class doesn't store anything inside the central directory.- Specified by:
parseFromCentralDirectoryData
in interfaceZipExtraField
- Parameters:
buffer
- the buffer to read data fromoffset
- offset into buffer to read datalength
- the length of data- Throws:
ZipException
- on error
-
parseFromLocalFileData
Populate data from this array as if it was in local file data.- Specified by:
parseFromLocalFileData
in interfaceZipExtraField
- Parameters:
data
- an array of bytesoffset
- the start offsetlength
- the number of bytes in the array from offset- Throws:
ZipException
- on error
-
setGID
Sets the GID.- Parameters:
l
- GID value to set on this extra field.
-
setUID
Sets the UID.- Parameters:
l
- UID value to set on this extra field.
-
toString
Returns a String representation of this class useful for debugging purposes.
-