Package com.ning.compress.lzf.impl
Class UnsafeChunkEncoder
java.lang.Object
com.ning.compress.lzf.ChunkEncoder
com.ning.compress.lzf.impl.UnsafeChunkEncoder
- All Implemented Interfaces:
Closeable,AutoCloseable
- Direct Known Subclasses:
UnsafeChunkEncoderBE,UnsafeChunkEncoderLE
ChunkEncoder implementation that handles actual encoding of individual chunks,
using Sun's sun.misc.Unsafe functionality, which gives
nice extra boost for speed.-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final long(package private) static final sun.misc.UnsafeFields inherited from class com.ning.compress.lzf.ChunkEncoder
_encodeBuffer, _hashModulo, _hashTable, _headerBuffer, _recycler, MAX_HASH_SIZE, MAX_OFF, MAX_REF, MIN_BLOCK_TO_COMPRESS, MIN_HASH_SIZE, TAIL_LENGTH -
Constructor Summary
ConstructorsConstructorDescriptionUnsafeChunkEncoder(int totalLength) UnsafeChunkEncoder(int totalLength, boolean bogus) UnsafeChunkEncoder(int totalLength, BufferRecycler bufferRecycler) UnsafeChunkEncoder(int totalLength, BufferRecycler bufferRecycler, boolean bogus) -
Method Summary
Modifier and TypeMethodDescription(package private) static void_checkArrayIndices(byte[] array, int start, int end) (package private) static void_checkOutputLength(int inputLen, int outputLen) (package private) static final int_copyFullLiterals(byte[] in, int inPos, byte[] out, int outPos) (package private) static final int_copyLongLiterals(byte[] in, int inPos, byte[] out, int outPos, int literals) (package private) static final int_copyPartialLiterals(byte[] in, int inPos, byte[] out, int outPos, int literals) (package private) static final int_findTailMatchLength(byte[] in, int ptr1, int ptr2, int maxPtr1) (package private) static final int_handleTail(byte[] in, int inPos, int inEnd, byte[] out, int outPos, int literals) Methods inherited from class com.ning.compress.lzf.ChunkEncoder
appendEncodedChunk, appendEncodedIfCompresses, close, encodeAndWriteChunk, encodeAndWriteChunkIfCompresses, encodeChunk, encodeChunkIfCompresses, getBufferRecycler, hash, tryCompress
-
Field Details
-
unsafe
static final sun.misc.Unsafe unsafe -
BYTE_ARRAY_OFFSET
static final long BYTE_ARRAY_OFFSET
-
-
Constructor Details
-
UnsafeChunkEncoder
UnsafeChunkEncoder(int totalLength) -
UnsafeChunkEncoder
UnsafeChunkEncoder(int totalLength, boolean bogus) -
UnsafeChunkEncoder
UnsafeChunkEncoder(int totalLength, BufferRecycler bufferRecycler) -
UnsafeChunkEncoder
UnsafeChunkEncoder(int totalLength, BufferRecycler bufferRecycler, boolean bogus)
-
-
Method Details
-
_checkArrayIndices
static void _checkArrayIndices(byte[] array, int start, int end) - Parameters:
start- start index, inclusiveend- end index, exclusive
-
_checkOutputLength
static void _checkOutputLength(int inputLen, int outputLen) -
_copyPartialLiterals
static final int _copyPartialLiterals(byte[] in, int inPos, byte[] out, int outPos, int literals) -
_copyLongLiterals
static final int _copyLongLiterals(byte[] in, int inPos, byte[] out, int outPos, int literals) -
_copyFullLiterals
static final int _copyFullLiterals(byte[] in, int inPos, byte[] out, int outPos) -
_handleTail
static final int _handleTail(byte[] in, int inPos, int inEnd, byte[] out, int outPos, int literals) -
_findTailMatchLength
static final int _findTailMatchLength(byte[] in, int ptr1, int ptr2, int maxPtr1)
-