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