public DirectToArchiveWriterStream(CheckSumAndSizeWriteStream crcSizeStream, ZipArchiveEntry entry) { _crcSizeStream = crcSizeStream; _everWritten = false; _isDisposed = false; _entry = entry; _usedZip64inLH = false; _canWrite = true; }
private Stream OpenInWriteMode() { if (_everOpenedForWrite) { throw new IOException(Messages.CreateModeWriteOnceAndOneEntryAtATime); } _everOpenedForWrite = true; CheckSumAndSizeWriteStream crcSizeStream = GetDataCompressor(_archive.ArchiveStream, true, delegate(object o, EventArgs e) { _archive.ReleaseArchiveStream(this); _outstandingWriteStream = null; }); _outstandingWriteStream = new DirectToArchiveWriterStream(crcSizeStream, this); return(new WrappedStream(_outstandingWriteStream, delegate(object o, EventArgs e) { _outstandingWriteStream.Close(); })); }