Package net.jpountz.lz4
Class LZ4FastDecompressor
- java.lang.Object
-
- net.jpountz.lz4.LZ4FastDecompressor
-
- All Implemented Interfaces:
LZ4Decompressor
public abstract class LZ4FastDecompressor extends java.lang.Object implements LZ4Decompressor
LZ4 decompressor that requires the size of the original input to be known. UseLZ4SafeDecompressor
if you only know the size of the compressed stream.From lz4-java 1.6.0, it is deprecated to use a JNI-binding instance of this class; i.e., an instasnce returned by
LZ4Factory.fastDecompressor()
ofLZ4Factory.nativeInstance()
. Please seeLZ4Factory.nativeInstance()
for details.Instances of this class are thread-safe.
- See Also:
LZ4Factory.nativeInstance()
-
-
Constructor Summary
Constructors Constructor Description LZ4FastDecompressor()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description int
decompress(byte[] src, byte[] dest)
Convenience method, equivalent to callingdecompress(src, dest, dest.length)
.int
decompress(byte[] src, byte[] dest, int destLen)
Convenience method, equivalent to callingdecompress(src, 0, dest, 0, destLen)
.byte[]
decompress(byte[] src, int destLen)
Convenience method, equivalent to callingdecompress(src, 0, destLen)
.abstract int
decompress(byte[] src, int srcOff, byte[] dest, int destOff, int destLen)
Decompressessrc[srcOff:]
intodest[destOff:destOff+destLen]
and returns the number of bytes read fromsrc
.byte[]
decompress(byte[] src, int srcOff, int destLen)
Convenience method which returnssrc[srcOff:?]
decompressed.abstract int
decompress(java.nio.ByteBuffer src, int srcOff, java.nio.ByteBuffer dest, int destOff, int destLen)
Decompressessrc[srcOff:]
intodest[destOff:destOff+destLen]
and returns the number of bytes read fromsrc
.void
decompress(java.nio.ByteBuffer src, java.nio.ByteBuffer dest)
Decompressessrc
intodest
.java.lang.String
toString()
-
-
-
Method Detail
-
decompress
public abstract int decompress(byte[] src, int srcOff, byte[] dest, int destOff, int destLen)
Decompressessrc[srcOff:]
intodest[destOff:destOff+destLen]
and returns the number of bytes read fromsrc
.destLen
must be exactly the size of the decompressed data.- Specified by:
decompress
in interfaceLZ4Decompressor
- Parameters:
src
- the compressed datasrcOff
- the start offset in srcdest
- the destination buffer to store the decompressed datadestOff
- the start offset in destdestLen
- the exact size of the original input- Returns:
- the number of bytes read to restore the original input
-
decompress
public abstract int decompress(java.nio.ByteBuffer src, int srcOff, java.nio.ByteBuffer dest, int destOff, int destLen)
Decompressessrc[srcOff:]
intodest[destOff:destOff+destLen]
and returns the number of bytes read fromsrc
.destLen
must be exactly the size of the decompressed data. The positions and limits of theByteBuffer
s remain unchanged.- Parameters:
src
- the compressed datasrcOff
- the start offset in srcdest
- the destination buffer to store the decompressed datadestOff
- the start offset in destdestLen
- the exact size of the original input- Returns:
- the number of bytes read to restore the original input
-
decompress
public final int decompress(byte[] src, byte[] dest, int destLen)
Convenience method, equivalent to callingdecompress(src, 0, dest, 0, destLen)
.- Parameters:
src
- the compressed datadest
- the destination buffer to store the decompressed datadestLen
- the exact size of the original input- Returns:
- the number of bytes read to restore the original input
-
decompress
public final int decompress(byte[] src, byte[] dest)
Convenience method, equivalent to callingdecompress(src, dest, dest.length)
.- Parameters:
src
- the compressed datadest
- the destination buffer to store the decompressed data- Returns:
- the number of bytes read to restore the original input
-
decompress
public final byte[] decompress(byte[] src, int srcOff, int destLen)
Convenience method which returnssrc[srcOff:?]
decompressed.Warning: this method has an important overhead due to the fact that it needs to allocate a buffer to decompress into.
Here is how this method is implemented:
final byte[] decompressed = new byte[destLen]; decompress(src, srcOff, decompressed, 0, destLen); return decompressed;
- Parameters:
src
- the compressed datasrcOff
- the start offset in srcdestLen
- the exact size of the original input- Returns:
- the decompressed data
-
decompress
public final byte[] decompress(byte[] src, int destLen)
Convenience method, equivalent to callingdecompress(src, 0, destLen)
.- Parameters:
src
- the compressed datadestLen
- the exact size of the original input- Returns:
- the decompressed data
-
decompress
public final void decompress(java.nio.ByteBuffer src, java.nio.ByteBuffer dest)
Decompressessrc
intodest
.dest
'sBuffer.remaining()
must be exactly the size of the decompressed data. This method moves the positions of the buffers.- Parameters:
src
- the compressed datadest
- the destination buffer to store the decompressed data
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-