X0016_CertificateIdForCentralDirectory
Date: 2017-02-08

org.apache.commons.compress.archivers.zip

## Class X0016_CertificateIdForCentralDirectory

- java.lang.Object
- - org.apache.commons.compress.archivers.zip.PKWareExtraHeader
  - - org.apache.commons.compress.archivers.zip.X0016_CertificateIdForCentralDirectory

- All Implemented Interfaces:
    ZipExtraField

      public class X0016_CertificateIdForCentralDirectory
      extends PKWareExtraHeader

  X.509 Certificate ID and Signature for central directory (0x0016).

  This field contains the information about which certificate in the PKCS#7 store was used to sign the central directory structure. When the Central Directory Encryption feature is enabled for a ZIP file, this record will appear in the Archive Extra Data Record, otherwise it will appear in the first central directory record.

  Note: all fields stored in Intel low-byte/high-byte order.

               Value     Size     Description
               -----     ----     -----------
       (CDID)  0x0016    2 bytes  Tag for this "extra" block type
               TSize     2 bytes  Size of data that follows
               RCount    4 bytes  Number of recipients. (inferred)
               HashAlg   2 bytes  Hash algorithm identifier. (inferred)
               TData     TSize    Data

  Since:
    1.11

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.commons.compress.archivers.zip.PKWareExtraHeader

      `PKWareExtraHeader.EncryptionAlgorithm, PKWareExtraHeader.HashAlgorithm`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `X0016_CertificateIdForCentralDirectory()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `PKWareExtraHeader.HashAlgorithm` | `getHashAlgorithm()` Get hash algorithm.
    `int` | `getRecordCount()` Get record count.
    `void` | `parseFromCentralDirectoryData(byte[] data, int offset, int length)` Populate data from this array as if it was in central directory data.

    - ### Methods inherited from class org.apache.commons.compress.archivers.zip.PKWareExtraHeader

      `getCentralDirectoryData, getCentralDirectoryLength, getHeaderId, getLocalFileDataData, getLocalFileDataLength, parseFromLocalFileData, setCentralDirectoryData, setLocalFileDataData`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### X0016_CertificateIdForCentralDirectory

          public X0016_CertificateIdForCentralDirectory()

  - ### Method Detail

    - #### getRecordCount

          public int getRecordCount()

      Get record count.
      Returns:
        the record count

    - #### getHashAlgorithm

          public PKWareExtraHeader.HashAlgorithm getHashAlgorithm()

      Get hash algorithm.
      Returns:
        the hash algorithm

    - #### parseFromCentralDirectoryData

          public void parseFromCentralDirectoryData(byte[] data,
                                           int offset,
                                           int length)

      Description copied from interface: `ZipExtraField`
      Populate data from this array as if it was in central directory data.
      Specified by:
        `parseFromCentralDirectoryData` in interface `ZipExtraField`
      Overrides:
        `parseFromCentralDirectoryData` in class `PKWareExtraHeader`
      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:
        `ZipExtraField.parseFromCentralDirectoryData(byte[], int, int)`