Class Zlib

java.lang.Object
org.apache.mina.filter.support.Zlib

public class Zlib extends Object
A helper class for interfacing with the JZlib library. This class acts both as a compressor and decompressor, but only as one at a time. The only flush method supported is Z_SYNC_FLUSH also known as Z_PARTIAL_FLUSH
  • Field Details

  • Constructor Details

    • Zlib

      public Zlib(int compressionLevel, int mode)
      Parameters:
      compressionLevel - the level of compression that should be used
      mode - the mode in which the instance will operate. Can be either of MODE_DEFLATER or MODE_INFLATER
  • Method Details

    • inflate

      public org.apache.mina.common.ByteBuffer inflate(org.apache.mina.common.ByteBuffer inBuffer) throws IOException
      Parameters:
      inBuffer - the ByteBuffer to be decompressed. The contents of the buffer are transferred into a local byte array and the buffer is flipped and returned intact.
      Returns:
      the decompressed data. If not passed to the MINA methods that release the buffer automatically, the buffer has to be manually released
      Throws:
      IOException - if the decompression of the data failed for some reason.
    • deflate

      public org.apache.mina.common.ByteBuffer deflate(org.apache.mina.common.ByteBuffer inBuffer) throws IOException
      Parameters:
      inBuffer - the buffer to be compressed. The contents are transferred into a local byte array and the buffer is flipped and returned intact.
      Returns:
      the buffer with the compressed data. If not passed to any of the MINA methods that automatically release the buffer, the buffer has to be released manually.
      Throws:
      IOException - if the compression of teh buffer failed for some reason
    • cleanUp

      public void cleanUp()
      Cleans up the resources used by the compression library.