void AddFileContents(string name, Stream stream)
{
if (stream == null) {
throw new ArgumentNullException(nameof(stream));
}
if (buffer_ == null) {
buffer_ = new byte[4096];
}
if ((events_ != null) && (events_.Progress != null)) {
StreamUtils.Copy(stream, outputStream_, buffer_,
events_.Progress, events_.ProgressInterval, this, name);
} else {
StreamUtils.Copy(stream, outputStream_, buffer_);
}
if (events_ != null) {
continueRunning_ = events_.OnCompletedFile(name);
}
}