java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.util.zip.DeflaterOutputStream
net.i2p.util.ResettableGZIPOutputStream
- All Implemented Interfaces:
Closeable, Flushable, AutoCloseable
- Direct Known Subclasses:
ReusableGZIPOutputStream
GZIP implementation per RFC 1952, reusing java's standard CRC32 and Deflater implementations. The main difference is that this implementation allows its state to be reset to initial values, and hence reused, while the standard GZIPOutputStream writes the GZIP header to the stream on instantiation, rather than on first write.
Field Summary
Fields inherited from class DeflaterOutputStream
buf, defFields inherited from class FilterOutputStream
outConstructor Summary
ConstructorsConstructorDescriptionStream writing gzip data to the given output stream.Method Summary
All MethodsMethods inherited from class DeflaterOutputStream
deflate, flushMethods inherited from class OutputStream
nullOutputStream
Constructor Details
ResettableGZIPOutputStream
Stream writing gzip data to the given output stream.- Parameters:
o- the underlying output stream
Method Details
reset
public void reset()Reinitialize everything so we can write a brand new gzip output stream again.destroy
Calls super.close(). May not be reused after this.- Throws:
IOException- if the wrapped stream cannot be written to or closed
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classDeflaterOutputStream- Throws:
IOException
finish
- Overrides:
finishin classDeflaterOutputStream- Throws:
IOException
write
- Overrides:
writein classDeflaterOutputStream- Throws:
IOException
write
- Overrides:
writein classFilterOutputStream- Throws:
IOException
write
- Overrides:
writein classDeflaterOutputStream- Throws:
IOException