|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.tools.zip.AsiExtraField
public class AsiExtraField
Adds Unix file permission and UID/GID fields as well as symbolic link handling.
This class uses the ASi extra field in the format:
Value Size Description
----- ---- -----------
(Unix3) 0x756e Short tag for this extra block type
TSize Short total data size for this block
CRC Long CRC-32 of the remaining data
Mode Short file permissions
SizDev Long symlink'd size OR major/minor dev num
UID Short user ID
GID Short group ID
(var.) variable symbolic link filename
taken from appnote.iz (Info-ZIP note, 981119) found at ftp://ftp.uu.net/pub/archiving/zip/doc/
Short is two bytes and Long is four bytes in big endian byte and word order, device numbers are currently not supported.
| Field Summary |
|---|
| Fields inherited from interface org.apache.tools.zip.UnixStat |
|---|
DEFAULT_DIR_PERM, DEFAULT_FILE_PERM, DEFAULT_LINK_PERM, DIR_FLAG, FILE_FLAG, LINK_FLAG, PERM_MASK |
| Constructor Summary | |
|---|---|
AsiExtraField()
Constructor for AsiExtraField. |
|
| Method Summary | |
|---|---|
byte[] |
getCentralDirectoryData()
Delegate to local file data. |
ZipShort |
getCentralDirectoryLength()
Delegate to local file data. |
int |
getGroupId()
Get the group id. |
ZipShort |
getHeaderId()
The Header-ID. |
java.lang.String |
getLinkedFile()
Name of linked file |
byte[] |
getLocalFileDataData()
The actual data to put into local file data - without Header-ID or length specifier. |
ZipShort |
getLocalFileDataLength()
Length of the extra field in the local file data - without Header-ID or length specifier. |
int |
getMode()
File mode of this file. |
protected int |
getMode(int mode)
Get the file mode for given permissions with the correct file type. |
int |
getUserId()
Get the user id. |
boolean |
isDirectory()
Is this entry a directory? |
boolean |
isLink()
Is this entry a symbolic link? |
void |
parseFromLocalFileData(byte[] data,
int offset,
int length)
Populate data from this array as if it was in local file data. |
void |
setDirectory(boolean dirFlag)
Indicate whether this entry is a directory. |
void |
setGroupId(int gid)
Set the group id. |
void |
setLinkedFile(java.lang.String name)
Indicate that this entry is a symbolic link to the given filename. |
void |
setMode(int mode)
File mode of this file. |
void |
setUserId(int uid)
Set the user id. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public AsiExtraField()
| Method Detail |
|---|
public ZipShort getHeaderId()
getHeaderId in interface ZipExtraFieldpublic ZipShort getLocalFileDataLength()
getLocalFileDataLength in interface ZipExtraFieldZipShort for the length of the data of this extra fieldpublic ZipShort getCentralDirectoryLength()
getCentralDirectoryLength in interface ZipExtraFieldpublic byte[] getLocalFileDataData()
getLocalFileDataData in interface ZipExtraFieldpublic byte[] getCentralDirectoryData()
getCentralDirectoryData in interface ZipExtraFieldpublic void setUserId(int uid)
uid - the user idpublic int getUserId()
public void setGroupId(int gid)
gid - the group idpublic int getGroupId()
public void setLinkedFile(java.lang.String name)
name - Name of the file this entry links to, empty String
if it is not a symbolic link.public java.lang.String getLinkedFile()
public boolean isLink()
public void setMode(int mode)
mode - the file modepublic int getMode()
public void setDirectory(boolean dirFlag)
dirFlag - if true, this entry is a directorypublic boolean isDirectory()
public void parseFromLocalFileData(byte[] data,
int offset,
int length)
throws java.util.zip.ZipException
parseFromLocalFileData in interface ZipExtraFielddata - an array of bytesoffset - the start offsetlength - the number of bytes in the array from offset
java.util.zip.ZipException - on errorprotected int getMode(int mode)
mode - the mode
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||