Package org.zeroturnaround.zip.extra
Class ZipLong
- java.lang.Object
-
- org.zeroturnaround.zip.extra.ZipLong
-
- All Implemented Interfaces:
java.lang.Cloneable
public final class ZipLong extends java.lang.Object implements java.lang.Cloneable
This is a class that has been made significantly smaller (deleted a bunch of methods) and originally is from the Apache Ant Project (http://ant.apache.org), org.apache.tools.zip package. All license and other documentation is intact. 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 private static int
BYTE_1
private static int
BYTE_1_MASK
private static int
BYTE_1_SHIFT
private static int
BYTE_2
private static int
BYTE_2_MASK
private static int
BYTE_2_SHIFT
private static int
BYTE_3
private static long
BYTE_3_MASK
private static int
BYTE_3_SHIFT
static ZipLong
CFH_SIG
Central File Header Signaturestatic ZipLong
DD_SIG
Data Descriptor signaturestatic ZipLong
LFH_SIG
Local File Header Signatureprivate long
value
(package private) static ZipLong
ZIP64_MAGIC
Value stored in size and similar fields if ZIP64 extensions are used.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods 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 arraystatic long
getValue(byte[] bytes, int offset)
Helper method to get the value as a Java long from four bytes starting at given array offsetint
hashCode()
Override to make two instances with same value equal.java.lang.String
toString()
-
-
-
Field Detail
-
BYTE_1
private static final int BYTE_1
- See Also:
- Constant Field Values
-
BYTE_1_MASK
private static final int BYTE_1_MASK
- See Also:
- Constant Field Values
-
BYTE_1_SHIFT
private static final int BYTE_1_SHIFT
- See Also:
- Constant Field Values
-
BYTE_2
private static final int BYTE_2
- See Also:
- Constant Field Values
-
BYTE_2_MASK
private static final int BYTE_2_MASK
- See Also:
- Constant Field Values
-
BYTE_2_SHIFT
private static final int BYTE_2_SHIFT
- See Also:
- Constant Field Values
-
BYTE_3
private static final int BYTE_3
- See Also:
- Constant Field Values
-
BYTE_3_MASK
private static final long BYTE_3_MASK
- See Also:
- Constant Field Values
-
BYTE_3_SHIFT
private static final int BYTE_3_SHIFT
- See Also:
- Constant Field Values
-
value
private final long value
-
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
-
ZIP64_MAGIC
static final ZipLong ZIP64_MAGIC
Value stored in size and similar fields if ZIP64 extensions are used.
-
-
Constructor Detail
-
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 ZipLongoffset
- the offset to start- Since:
- 1.1
-
-
Method Detail
-
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
-
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 bytesoffset
- 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 classjava.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 classjava.lang.Object
- Returns:
- the value stored in the ZipLong
- Since:
- 1.1
-
clone
public java.lang.Object clone()
- Overrides:
clone
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-