Package org.apache.tools.zip

# Class ZipLong

java.lang.Object
org.apache.tools.zip.ZipLong

All Implemented Interfaces:
  `java.lang.Cloneable`

    public final class ZipLong
    extends java.lang.Object
    implements java.lang.Cloneable

Utility class that represents a four byte integer with conversion rules for the big endian byte order of ZIP files.

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `static ZipLong` | `CFH_SIG` | Central File Header Signature
  `static ZipLong` | `DD_SIG` | Data Descriptor signature
  `static ZipLong` | `LFH_SIG` | Local File Header Signature

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `ZipLong​(byte[] bytes)` | Create instance from bytes.
  `ZipLong​(byte[] bytes, int offset)` | Create instance from the four bytes starting at offset.
  `ZipLong​(long value)` | Create instance from a number.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `java.lang.Object` | `clone()` |
  `boolean` | `equals​(java.lang.Object o)` | Override to make two instances with same value equal.
  `byte[]` | `getBytes()` | Get value as four bytes in big endian byte order.
  `static byte[]` | `getBytes​(long value)` | Get value as four bytes in big endian byte order.
  `long` | `getValue()` | Get value as Java long.
  `static long` | `getValue​(byte[] bytes)` | Helper method to get the value as a Java long from a four-byte array
  `static long` | `getValue​(byte[] bytes, int offset)` | Helper method to get the value as a Java long from four bytes starting at given array offset
  `int` | `hashCode()` | Override to make two instances with same value equal.
  `void` | `putLong​(byte[] buf, int offset)` |
  `static void` | `putLong​(long value, byte[] buf, int offset)` | put the value as four bytes in big endian byte order.
  `java.lang.String` | `toString()` |

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

  `finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### CFH_SIG

    public static final ZipLong CFH_SIG
    Central File Header Signature

  - ### LFH_SIG

    public static final ZipLong LFH_SIG
    Local File Header Signature

  - ### DD_SIG

    public static final ZipLong DD_SIG
    Data Descriptor signature

- ## Constructor Details

  - ### ZipLong

    public ZipLong​(long value)
    Create instance from a number.
    Parameters:
      `value` - the long to store as a ZipLong
    Since:
      1.1

  - ### ZipLong

    public ZipLong​(byte[] bytes)
    Create instance from bytes.
    Parameters:
      `bytes` - the bytes to store as a ZipLong
    Since:
      1.1

  - ### ZipLong

    public ZipLong​(byte[] bytes, int offset)
    Create instance from the four bytes starting at offset.
    Parameters:
      `bytes` - the bytes to store as a ZipLong
      `offset` - the offset to start
    Since:
      1.1

- ## Method Details

  - ### getBytes

    public byte[] getBytes()
    Get value as four bytes in big endian byte order.
    Returns:
      value as four bytes in big endian order
    Since:
      1.1

  - ### getValue

    public long getValue()
    Get value as Java long.
    Returns:
      value as a long
    Since:
      1.1

  - ### getBytes

    public static byte[] getBytes​(long value)
    Get value as four bytes in big endian byte order.
    Parameters:
      `value` - the value to convert
    Returns:
      value as four bytes in big endian byte order

  - ### putLong

    public static void putLong​(long value, byte[] buf, int offset)
    put the value as four bytes in big endian byte order.
    Parameters:
      `value` - the Java long to convert to bytes
      `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-4`

  - ### putLong

    public void putLong​(byte[] buf, int offset)

  - ### getValue

    public static long getValue​(byte[] bytes, int offset)
    Helper method to get the value as a Java long from four bytes starting at given array offset
    Parameters:
      `bytes` - the array of bytes
      `offset` - the offset to start
    Returns:
      the corresponding Java long value

  - ### getValue

    public static long getValue​(byte[] bytes)
    Helper method to get the value as a Java long from a four-byte array
    Parameters:
      `bytes` - the array of bytes
    Returns:
      the corresponding Java long value

  - ### equals

    public boolean equals​(java.lang.Object o)
    Override to make two instances with same value equal.
    Overrides:
      `equals` in class `java.lang.Object`
    Parameters:
      `o` - an object to compare
    Returns:
      true if the objects are equal
    Since:
      1.1

  - ### hashCode

    public int hashCode()
    Override to make two instances with same value equal.
    Overrides:
      `hashCode` in class `java.lang.Object`
    Returns:
      the value stored in the ZipLong
    Since:
      1.1

  - ### clone

    public java.lang.Object clone()
    Overrides:
      `clone` in class `java.lang.Object`

  - ### toString

    public java.lang.String toString()
    Overrides:
      `toString` in class `java.lang.Object`