Class UnsafeChunkEncoderLE

All Implemented Interfaces:
Closeable, AutoCloseable

public class UnsafeChunkEncoderLE extends UnsafeChunkEncoder
Implementation to use on Little Endian architectures.
  • Constructor Details

    • UnsafeChunkEncoderLE

      public UnsafeChunkEncoderLE(int totalLength)
    • UnsafeChunkEncoderLE

      public UnsafeChunkEncoderLE(int totalLength, boolean bogus)
    • UnsafeChunkEncoderLE

      public UnsafeChunkEncoderLE(int totalLength, BufferRecycler bufferRecycler)
    • UnsafeChunkEncoderLE

      public UnsafeChunkEncoderLE(int totalLength, BufferRecycler bufferRecycler, boolean bogus)
  • Method Details

    • tryCompress

      protected int tryCompress(byte[] in, int inPos, int inEnd, byte[] out, int outPos)
      Description copied from class: ChunkEncoder
      Main workhorse method that will try to compress given chunk, and return end position (offset to byte after last included byte). Result will be "raw" encoded contents without chunk header information: caller is responsible for prepending header, if it chooses to use encoded data; it may also choose to instead create an uncompressed chunk.
      Specified by:
      tryCompress in class ChunkEncoder
      Returns:
      Output pointer after handling content, such that result - originalOutPost is the actual length of compressed chunk (without header)
    • _getInt

      private static final int _getInt(byte[] in, int inPos)
    • _findMatchLength

      private static final int _findMatchLength(byte[] in, int ptr1, int ptr2, int maxPtr1)
    • _findLongMatchLength

      private static final int _findLongMatchLength(byte[] in, int ptr1, int ptr2, int maxPtr1)
    • _leadingBytes

      private static final int _leadingBytes(int i1, int i2)
    • _leadingBytes

      private static final int _leadingBytes(long l1, long l2)