Class GeneralPurposeBit

  • All Implemented Interfaces:
    Cloneable

    public final class GeneralPurposeBit
    extends Object
    implements Cloneable
    Parser/encoder for the "general purpose bit" field in ZIP's local file and central directory headers.
    Since:
    1.1
    • Field Detail

      • UFT8_NAMES_FLAG

        public static final int UFT8_NAMES_FLAG
        Indicates that file names are written in UTF-8.

        The only reason this is public is that ZipArchiveOutputStream.EFS_FLAG was public in Apache Commons Compress 1.0 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.
        Returns:
        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.
        Parameters:
        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.
        Returns:
        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.
        Parameters:
        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.
        Returns:
        whether the current entry is encrypted
      • useEncryption

        public void useEncryption​(boolean b)
        whether the current entry will be encrypted.
        Parameters:
        b - whether the current entry will be encrypted
      • usesStrongEncryption

        public boolean usesStrongEncryption()
        whether the current entry is encrypted using strong encryption.
        Returns:
        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.
        Parameters:
        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.
        Returns:
        the encoded general purpose bits
      • encode

        public void encode​(byte[] buf,
                           int offset)
        Encodes the set bits in a form suitable for ZIP archives.
        Parameters:
        buf - the output buffer
        offset - The offset within the output buffer of the first byte to be written. must be non-negative and no larger than buf.length-2
      • 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
        Returns:
        parsed flags
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • clone

        public Object clone()