Class LZFChunk

java.lang.Object
com.ning.compress.lzf.LZFChunk

public class LZFChunk extends Object
Helper class used to store LZF encoded segments (compressed and non-compressed) that can be sequenced to produce LZF files/streams.
  • Field Details

    • MAX_LITERAL

      public static final int MAX_LITERAL
      Maximum length of literal run for LZF encoding.
      See Also:
    • MAX_CHUNK_LEN

      public static final int MAX_CHUNK_LEN
      Chunk length is limited by 2-byte length indicator, to 64k
      See Also:
    • MAX_HEADER_LEN

      public static final int MAX_HEADER_LEN
      Header 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

      protected LZFChunk _next
  • Constructor Details

    • LZFChunk

      private LZFChunk(byte[] data)
  • Method Details

    • createCompressed

      public static LZFChunk createCompressed(int origLen, byte[] encData, int encPtr, int encLen)
      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

      public static LZFChunk createNonCompressed(byte[] plainData, int ptr, int len)
      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

      public void setNext(LZFChunk next)
    • next

      public LZFChunk next()
    • length

      public int length()
    • getData

      public byte[] getData()
    • copyTo

      public int copyTo(byte[] dst, int ptr)