Class LowercaseAsciiCompression


  • public final class LowercaseAsciiCompression
    extends java.lang.Object
    Utility class that can efficiently compress arrays that mostly contain characters in the [0x1F,0x3F) or [0x5F,0x7F) ranges, which notably include all digits, lowercase characters, '.', '-' and '_'.
    • Constructor Detail

      • LowercaseAsciiCompression

        private LowercaseAsciiCompression()
    • Method Detail

      • isCompressible

        private static final boolean isCompressible​(int b)
      • compress

        public static boolean compress​(byte[] in,
                                       int len,
                                       byte[] tmp,
                                       DataOutput out)
                                throws java.io.IOException
        Compress in[0:len] into out. This returns false if the content cannot be compressed. The number of bytes written is guaranteed to be less than len otherwise.
        Throws:
        java.io.IOException
      • decompress

        public static void decompress​(DataInput in,
                                      byte[] out,
                                      int len)
                               throws java.io.IOException
        Decompress data that has been compressed with compress(byte[], int, byte[], DataOutput). len must be the original length, not the compressed length.
        Throws:
        java.io.IOException