org.apache.tools.zip
Class GeneralPurposeBit

java.lang.Object
  extended by org.apache.tools.zip.GeneralPurposeBit

public final class GeneralPurposeBit
extends java.lang.Object

Parser/encoder for the "general purpose bit" field in ZIP's local file and central directory headers.

Since:
Ant 1.9.0

Field Summary
static int UFT8_NAMES_FLAG
          Indicates that filenames are written in utf-8.
 
Constructor Summary
GeneralPurposeBit()
           
 
Method Summary
 byte[] encode()
          Encodes the set bits in a form suitable for ZIP archives.
 boolean equals(java.lang.Object o)
           
 int hashCode()
           
static GeneralPurposeBit parse(byte[] data, int offset)
          Parses the supported flags from the given archive data.
 void useDataDescriptor(boolean b)
          whether the current entry will use the data descriptor to store CRC and size information
 void useEncryption(boolean b)
          whether the current entry will be encrypted
 boolean usesDataDescriptor()
          whether the current entry uses the data descriptor to store CRC and size information
 boolean usesEncryption()
          whether the current entry is encrypted
 boolean usesStrongEncryption()
          whether the current entry is encrypted using strong encryption
 void useStrongEncryption(boolean b)
          whether the current entry will be encrypted using strong encryption
 boolean usesUTF8ForNames()
          whether the current entry uses UTF8 for file name and comment.
 void useUTF8ForNames(boolean b)
          whether the current entry will use UTF8 for file name and comment.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

UFT8_NAMES_FLAG

public static final int UFT8_NAMES_FLAG
Indicates that filenames are written in utf-8.

The only reason this is public is that ZipOutputStream.EFS_FLAG was public in several versions of Apache Ant and we needed a substitute for it.

See Also:
Constant Field Values
Constructor Detail

GeneralPurposeBit

public GeneralPurposeBit()
Method Detail

usesUTF8ForNames

public boolean usesUTF8ForNames()
whether the current entry uses UTF8 for file name and comment.


useUTF8ForNames

public void useUTF8ForNames(boolean b)
whether the current entry will use UTF8 for file name and comment.


usesDataDescriptor

public boolean usesDataDescriptor()
whether the current entry uses the data descriptor to store CRC and size information


useDataDescriptor

public void useDataDescriptor(boolean b)
whether the current entry will use the data descriptor to store CRC and size information


usesEncryption

public boolean usesEncryption()
whether the current entry is encrypted


useEncryption

public void useEncryption(boolean b)
whether the current entry will be encrypted


usesStrongEncryption

public boolean usesStrongEncryption()
whether the current entry is encrypted using strong encryption


useStrongEncryption

public void useStrongEncryption(boolean b)
whether the current entry will be encrypted using strong encryption


encode

public byte[] encode()
Encodes the set bits in a form suitable for ZIP archives.


parse

public static GeneralPurposeBit parse(byte[] data,
                                      int offset)
Parses the supported flags from the given archive data.

Parameters:
data - local file header or a central directory entry.
offset - offset at which the general purpose bit starts

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object