Class CompressionTools


  • public class CompressionTools
    extends Object
    Simple utility class providing static methods to compress and decompress binary data for stored fields. This class uses java.util.zip.Deflater and Inflater classes to compress and decompress.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static byte[] compress​(byte[] value)
      Compresses all bytes in the array, with default BEST_COMPRESSION level
      static byte[] compress​(byte[] value, int offset, int length)
      Compresses the specified byte range, with default BEST_COMPRESSION level
      static byte[] compress​(byte[] value, int offset, int length, int compressionLevel)
      Compresses the specified byte range using the specified compressionLevel (constants are defined in java.util.zip.Deflater).
      static byte[] compressString​(String value)
      Compresses the String value, with default BEST_COMPRESSION level
      static byte[] compressString​(String value, int compressionLevel)
      Compresses the String value using the specified compressionLevel (constants are defined in java.util.zip.Deflater).
      static byte[] decompress​(byte[] value)
      Decompress the byte array previously returned by compress
      static byte[] decompress​(byte[] value, int offset, int length)
      Decompress the byte array previously returned by compress
      static byte[] decompress​(BytesRef bytes)
      Decompress the byte array previously returned by compress (referenced by the provided BytesRef)
      static String decompressString​(byte[] value)
      Decompress the byte array previously returned by compressString back into a String
      static String decompressString​(byte[] value, int offset, int length)
      Decompress the byte array previously returned by compressString back into a String
      static String decompressString​(BytesRef bytes)
      Decompress the byte array (referenced by the provided BytesRef) previously returned by compressString back into a String
    • Method Detail

      • compress

        public static byte[] compress​(byte[] value,
                                      int offset,
                                      int length,
                                      int compressionLevel)
        Compresses the specified byte range using the specified compressionLevel (constants are defined in java.util.zip.Deflater).
      • compress

        public static byte[] compress​(byte[] value,
                                      int offset,
                                      int length)
        Compresses the specified byte range, with default BEST_COMPRESSION level
      • compress

        public static byte[] compress​(byte[] value)
        Compresses all bytes in the array, with default BEST_COMPRESSION level
      • compressString

        public static byte[] compressString​(String value)
        Compresses the String value, with default BEST_COMPRESSION level
      • compressString

        public static byte[] compressString​(String value,
                                            int compressionLevel)
        Compresses the String value using the specified compressionLevel (constants are defined in java.util.zip.Deflater).
      • decompress

        public static byte[] decompress​(byte[] value,
                                        int offset,
                                        int length)
                                 throws DataFormatException
        Decompress the byte array previously returned by compress
        Throws:
        DataFormatException
      • decompressString

        public static String decompressString​(byte[] value,
                                              int offset,
                                              int length)
                                       throws DataFormatException
        Decompress the byte array previously returned by compressString back into a String
        Throws:
        DataFormatException