org.apache.tools.zip

Class ZipLong

Implemented Interfaces:
Cloneable

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

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

Constructor Summary

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

boolean
equals(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.

Constructor Details

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

ZipLong

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

Method Details

equals

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

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

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

getValue

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

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 correspondanding Java long value

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 correspondanding Java long value

hashCode

public int hashCode()
Override to make two instances with same value equal.
Returns:
the value stored in the ZipLong
Since:
1.1