Class FastLzDecompressor

    • Method Detail

      • newFactory

        public static Supplier<FastLzDecompressor> newFactory()
        Creates the fastest FastLZ decompressor factory without checksum calculation.
        Returns:
        the factory.
      • newFactory

        public static Supplier<FastLzDecompressor> newFactory​(boolean validateChecksums)
        Creates a FastLZ decompressor factory with calculation of checksums as specified.
        Parameters:
        validateChecksums - If true, the checksum field will be validated against the actual uncompressed data, and if the checksums do not match, a suitable DecompressionException will be thrown. Note, that in this case decoder will use Adler32 as a default checksum calculator.
        Returns:
        the factory.
      • newFactory

        public static Supplier<FastLzDecompressor> newFactory​(Checksum checksum)
        Creates a FastLZ decompressor factory with specified checksum calculator.
        Parameters:
        checksum - the Checksum instance to use to check data for integrity. You may set null if you do not want to validate checksum of each block.
        Returns:
        the factory.
      • decompress

        public Buffer decompress​(Buffer in,
                                 BufferAllocator allocator)
                          throws DecompressionException
        Description copied from interface: Decompressor
        This method will read from the input Buffer and decompress into a new Buffer that will be allocated (if needed) from the BufferAllocator. If there is not enough readable data in the Buffer to process it will return null. This method should be called in a loop as long:
        • something was read from the input
          something was returned
      • Otherwise this method should be called again once there is more data in the input buffer.
Specified by:
decompress in interface Decompressor
Parameters:
in - the Buffer that contains the data to be decompressed.
allocator - the BufferAllocator that is used to allocate a new buffer (if needed) to write the decompressed bytes too.
Returns:
the Buffer that contains the decompressed data. The caller of this method takes ownership of the buffer. The return value will be null if there is not enough data readable in the input to make any progress. In this case the user should call it again once there is more data ready to be consumed.
Throws:
DecompressionException - thrown if an decompression error was encountered or the decompressor was closed before.