Package org.apache.tools.zip

## Class UnrecognizedExtraField

- java.lang.Object
- - org.apache.tools.zip.UnrecognizedExtraField

All Implemented Interfaces:
  `CentralDirectoryParsingZipExtraField`, `ZipExtraField`

    public class UnrecognizedExtraField
    extends java.lang.Object
    implements CentralDirectoryParsingZipExtraField

Simple placeholder for all those extra fields we don't want to deal with.

Assumes local file data and central directory entries are identical - unless told the opposite.

### Constructor Summary

Constructors
`UnrecognizedExtraField()`

### Method Summary

All Methods Instance Methods Concrete Methods
`byte[]` `getCentralDirectoryData()` Get the central data.
`ZipShort` `getCentralDirectoryLength()` Get the central data length.
`ZipShort` `getHeaderId()` Get the header id.
`byte[]` `getLocalFileDataData()` Get the local data.
`ZipShort` `getLocalFileDataLength()` Get the length of the local data.
`void` `parseFromCentralDirectoryData​(byte[] data, int offset, int length)` Populate data from this array as if it was in central directory data.
`void` `parseFromLocalFileData​(byte[] data, int offset, int length)` Populate data from this array as if it was in local file data.
`void` `setCentralDirectoryData​(byte[] data)` Set the extra field data in central directory.
`void` `setHeaderId​(ZipShort headerId)` Set the header id.
`void` `setLocalFileDataData​(byte[] data)` Set the extra field data in the local file data - without Header-ID or length specifier.

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

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

### Constructor Detail

#### UnrecognizedExtraField

    public UnrecognizedExtraField()

### Method Detail

#### setHeaderId

    public void setHeaderId​(ZipShort headerId)

Set the header id.

Parameters:
  `headerId` - the header id to use

#### getHeaderId

    public ZipShort getHeaderId()

Get the header id.

Specified by:
  `getHeaderId` in interface `ZipExtraField`
Returns:
  the header id

#### setLocalFileDataData

    public void setLocalFileDataData​(byte[] data)

Set the extra field data in the local file data - without Header-ID or length specifier.

Parameters:
  `data` - the field data to use

#### getLocalFileDataLength

    public ZipShort getLocalFileDataLength()

Get the length of the local data.

Specified by:
  `getLocalFileDataLength` in interface `ZipExtraField`
Returns:
  the length of the local data

#### getLocalFileDataData

    public byte[] getLocalFileDataData()

Get the local data.

Specified by:
  `getLocalFileDataData` in interface `ZipExtraField`
Returns:
  the local data

#### setCentralDirectoryData

    public void setCentralDirectoryData​(byte[] data)

Set the extra field data in central directory.

Parameters:
  `data` - the data to use

#### getCentralDirectoryLength

    public ZipShort getCentralDirectoryLength()

Get the central data length. If there is no central data, get the local file data length.

Specified by:
  `getCentralDirectoryLength` in interface `ZipExtraField`
Returns:
  the central data length

#### getCentralDirectoryData

    public byte[] getCentralDirectoryData()

Get the central data.

Specified by:
  `getCentralDirectoryData` in interface `ZipExtraField`
Returns:
  the central data if present, else return the local file data

#### parseFromLocalFileData

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

Description copied from interface: `ZipExtraField`
Populate data from this array as if it was in local file data.

Specified by:
  `parseFromLocalFileData` in interface `ZipExtraField`
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.parseFromLocalFileData(byte[], int, int)`

#### parseFromCentralDirectoryData

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

Description copied from interface: `CentralDirectoryParsingZipExtraField`
Populate data from this array as if it was in central directory data.

Specified by:
  `parseFromCentralDirectoryData` in interface `CentralDirectoryParsingZipExtraField`
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.