Using the previously implemented parts of async deflate/ZipOutputStream would only work as long as the compressed size was lower than the internal deflater buffer.
This fix adds async writing to DeflaterOutputStream and GzipOutputStream, and allows ZipOutputStream to empty it's buffer using asynchronous writes.
This also extends the test for ZipOutputStream to try with a larger source buffer and adds a test for GzipOutputStream for wholly-async IO.
Additionally, GzipOutputStream.ModifiedTime can now also be set. This was added to allow the tests to yield a predicable output.
I certify that I own, and have sufficient rights to contribute, all source code and related material intended to be compiled or integrated with the source code for the SharpZipLib open source product (the "Contribution"). My Contribution is licensed under the MIT License.
Using the previously implemented parts of async deflate/ZipOutputStream would only work as long as the compressed size was lower than the internal deflater buffer. This fix adds async writing to
DeflaterOutputStream
andGzipOutputStream
, and allowsZipOutputStream
to empty it's buffer using asynchronous writes.This also extends the test for
ZipOutputStream
to try with a larger source buffer and adds a test forGzipOutputStream
for wholly-async IO.Additionally,
GzipOutputStream.ModifiedTime
can now also be set. This was added to allow the tests to yield a predicable output.I certify that I own, and have sufficient rights to contribute, all source code and related material intended to be compiled or integrated with the source code for the SharpZipLib open source product (the "Contribution"). My Contribution is licensed under the MIT License.