1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- #if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
- using System;
- using System.Diagnostics;
- using System.IO;
- namespace Org.BouncyCastle.Utilities.IO
- {
- public class TeeOutputStream
- : BaseOutputStream
- {
- private readonly Stream output, tee;
- public TeeOutputStream(Stream output, Stream tee)
- {
- Debug.Assert(output.CanWrite);
- Debug.Assert(tee.CanWrite);
- this.output = output;
- this.tee = tee;
- }
- #if PORTABLE || NETFX_CORE
- protected override void Dispose(bool disposing)
- {
- if (disposing)
- {
- Org.BouncyCastle.Utilities.Platform.Dispose(output);
- Org.BouncyCastle.Utilities.Platform.Dispose(tee);
- }
- base.Dispose(disposing);
- }
- #else
- public override void Close()
- {
- Org.BouncyCastle.Utilities.Platform.Dispose(output);
- Org.BouncyCastle.Utilities.Platform.Dispose(tee);
- base.Close();
- }
- #endif
- public override void Write(byte[] buffer, int offset, int count)
- {
- output.Write(buffer, offset, count);
- tee.Write(buffer, offset, count);
- }
- public override void WriteByte(byte b)
- {
- output.WriteByte(b);
- tee.WriteByte(b);
- }
- }
- }
- #endif
|