Package com.ning.compress.lzf
Class LZFChunk
java.lang.Object
com.ning.compress.lzf.LZFChunk
Helper class used to store LZF encoded segments (compressed and non-compressed)
that can be sequenced to produce LZF files/streams.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final byte[]
protected LZFChunk
static final int
static final int
static final byte
static final byte
static final int
static final int
static final int
Chunk length is limited by 2-byte length indicator, to 64kstatic final int
Header can be either 7 bytes (compressed) or 5 bytes (uncompressed) longstatic final int
Maximum length of literal run for LZF encoding. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic int
appendCompressedHeader
(int origLen, int encLen, byte[] headerBuffer, int offset) static int
appendNonCompressed
(byte[] plainData, int ptr, int len, byte[] outputBuffer, int outputPtr) Method for appending specific content as non-compressed chunk, in given buffer.static int
appendNonCompressedHeader
(int len, byte[] headerBuffer, int offset) int
copyTo
(byte[] dst, int ptr) static LZFChunk
createCompressed
(int origLen, byte[] encData, int encPtr, int encLen) Factory method for constructing compressed chunkstatic LZFChunk
createNonCompressed
(byte[] plainData, int ptr, int len) Factory method for constructing compressed chunkbyte[]
getData()
int
length()
next()
void
static void
writeCompressedHeader
(int origLen, int encLen, OutputStream out, byte[] headerBuffer) static void
writeNonCompressedHeader
(int len, OutputStream out, byte[] headerBuffer)
-
Field Details
-
MAX_LITERAL
public static final int MAX_LITERALMaximum length of literal run for LZF encoding.- See Also:
-
MAX_CHUNK_LEN
public static final int MAX_CHUNK_LENChunk length is limited by 2-byte length indicator, to 64k- See Also:
-
MAX_HEADER_LEN
public static final int MAX_HEADER_LENHeader can be either 7 bytes (compressed) or 5 bytes (uncompressed) long- See Also:
-
HEADER_LEN_COMPRESSED
public static final int HEADER_LEN_COMPRESSED- See Also:
-
HEADER_LEN_NOT_COMPRESSED
public static final int HEADER_LEN_NOT_COMPRESSED- See Also:
-
BYTE_Z
public static final byte BYTE_Z- See Also:
-
BYTE_V
public static final byte BYTE_V- See Also:
-
BLOCK_TYPE_NON_COMPRESSED
public static final int BLOCK_TYPE_NON_COMPRESSED- See Also:
-
BLOCK_TYPE_COMPRESSED
public static final int BLOCK_TYPE_COMPRESSED- See Also:
-
_data
protected final byte[] _data -
_next
-
-
Constructor Details
-
LZFChunk
private LZFChunk(byte[] data)
-
-
Method Details
-
createCompressed
Factory method for constructing compressed chunk -
appendCompressedHeader
public static int appendCompressedHeader(int origLen, int encLen, byte[] headerBuffer, int offset) -
writeCompressedHeader
public static void writeCompressedHeader(int origLen, int encLen, OutputStream out, byte[] headerBuffer) throws IOException - Throws:
IOException
-
createNonCompressed
Factory method for constructing compressed chunk -
appendNonCompressed
public static int appendNonCompressed(byte[] plainData, int ptr, int len, byte[] outputBuffer, int outputPtr) Method for appending specific content as non-compressed chunk, in given buffer. -
appendNonCompressedHeader
public static int appendNonCompressedHeader(int len, byte[] headerBuffer, int offset) -
writeNonCompressedHeader
public static void writeNonCompressedHeader(int len, OutputStream out, byte[] headerBuffer) throws IOException - Throws:
IOException
-
setNext
-
next
-
length
public int length() -
getData
public byte[] getData() -
copyTo
public int copyTo(byte[] dst, int ptr)
-