Package net.i2p.util
Class ReusableGZIPOutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.util.zip.DeflaterOutputStream
net.i2p.util.ResettableGZIPOutputStream
net.i2p.util.ReusableGZIPOutputStream
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
public class ReusableGZIPOutputStream extends ResettableGZIPOutputStream
Provide a cache of reusable GZIP streams, each handling up to 40 KB output without
expansion.
This compresses to memory only. Retrieve the compressed data with getData().
There is no facility to compress to an output stream.
Do NOT use this for compression of unlimited-size data, as it will
expand, but never release, the BAOS memory buffer.
-
Field Summary
-
Method Summary
Modifier and Type Method Description static ReusableGZIPOutputStream
acquire()
Pull a cached instancestatic void
clearCache()
Clear the cache.byte[]
getData()
pull the contents of the stream writtenstatic void
release(ReusableGZIPOutputStream out)
Release an instance back into the cache (this will discard any state)void
reset()
clear the data so we can start again afreshvoid
setLevel(int level)
-
Method Details
-
acquire
Pull a cached instance -
release
Release an instance back into the cache (this will discard any state) -
reset
public void reset()clear the data so we can start again afresh- Overrides:
reset
in classResettableGZIPOutputStream
-
setLevel
public void setLevel(int level) -
getData
public byte[] getData()pull the contents of the stream written -
clearCache
public static void clearCache()Clear the cache.- Since:
- 0.9.21
-