Package tigase.util

# Class ZLibWrapper

java.lang.Object
tigase.util.ZLibWrapper

public class ZLibWrapper extends Object

This is a warpper for java.util.zip package and Deflater/Inflater classes specifically. This implementation allows for easy interaction between Deflater/Inflater and java.nio API which operates on ByteBuffer data. It also does some tricky stuff to flush Deflater without reseting it and allow a better compression ration on the data.

There are a few convenience methods allowing to directly compress String to ByteBuffer and other way around - from ByteBuffer to String decompression. For these methods data are assumed to be UTF-8 character String.
Created: Jul 30, 2009 11:46:55 AM

Version:
  $Rev$
Author:
  Artur Hefczyc

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `COMPRESSED_BUFF_SIZE`
  `static final int`
  `DECOMPRESSED_BUFF_SIZE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ZLibWrapper()`
  `ZLibWrapper(int level)`
  `ZLibWrapper(int level, int comp_buff_size)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `float`
  `averageCompressionRate()`
  `float`
  `averageDecompressionRate()`
  `ByteBuffer`
  `compress(String input)`
  `ByteBuffer`
  `compress(ByteBuffer input)`
  `ByteBuffer`
  `decompress(ByteBuffer input)`
  `String`
  `decompressToString(ByteBuffer input)`
  `void`
  `end()`
  `float`
  `lastCompressionRate()`
  `float`
  `lastDecompressionRate()`
  `static void`
  `main(String[] args)`
  `void`
  `setIOListener(IOListener listener)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### COMPRESSED_BUFF_SIZE

    public static final int COMPRESSED_BUFF_SIZE
    See Also:
      - Constant Field Values

  - ### DECOMPRESSED_BUFF_SIZE

    public static final int DECOMPRESSED_BUFF_SIZE
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### ZLibWrapper

    public ZLibWrapper()

  - ### ZLibWrapper

    public ZLibWrapper(int level)

  - ### ZLibWrapper

    public ZLibWrapper(int level, int comp_buff_size)

- ## Method Details

  - ### main

    public static void main(String[] args) throws Exception
    Throws:
      `Exception`

  - ### averageCompressionRate

    public float averageCompressionRate()

  - ### averageDecompressionRate

    public float averageDecompressionRate()

  - ### compress

    public ByteBuffer compress(ByteBuffer input)

  - ### compress

    public ByteBuffer compress(String input) throws CharacterCodingException
    Throws:
      `CharacterCodingException`

  - ### decompress

    public ByteBuffer decompress(ByteBuffer input) throws IOException
    Throws:
      `IOException`

  - ### decompressToString

    public String decompressToString(ByteBuffer input) throws CharacterCodingException, IOException
    Throws:
      `CharacterCodingException`
      `IOException`

  - ### end

    public void end()

  - ### lastCompressionRate

    public float lastCompressionRate()

  - ### lastDecompressionRate

    public float lastDecompressionRate()

  - ### setIOListener

    public void setIOListener(IOListener listener)