public override void SetUp() { base.SetUp(); var adapter = new StreamDataAdapter(this.Stream); Writer = new AsyncTextWriter(adapter, Encoding.ASCII); }
public void SetUp() { var dataPath = System.IO.Path.GetFullPath(System.IO.Directory.GetCurrentDirectory() + @"\..\..\data\"); var testFile = dataPath + "test.py"; Stream = System.IO.File.OpenRead(testFile); var encoding = Util.IO.DetectStreamEncoding(Stream); var adapter = new StreamDataAdapter(Stream); Reader = new AsyncTextReader(adapter, encoding); }
public void TestFlushStream() { var stream = new MockStream(); var adapter = new StreamDataAdapter(stream, true); Assert.AreEqual(0, stream._FlushCount); var f = adapter.Flush(); f.GetCompletionEvent().Wait(); Assert.AreEqual(1, stream._FlushCount); adapter.Dispose(); }
public static AsyncTextWriter GetResponseWriter(this HttpListenerContext context, Encoding encoding) { var adapter = new StreamDataAdapter(context.Response.OutputStream, true); var result = new AsyncTextWriter(adapter, encoding); result.AutoFlush = true; return result; }
public static AsyncTextReader GetRequestReader(this HttpListenerContext context) { var encoding = context.Request.ContentEncoding ?? Encoding.UTF8; var adapter = new StreamDataAdapter(context.Request.InputStream, true); var result = new AsyncTextReader(adapter, encoding); return result; }
public void SetUp () { var dataPath = System.IO.Path.GetFullPath(System.IO.Directory.GetCurrentDirectory() + @"\..\..\data\"); var testFile = dataPath + "test.py"; Stream = System.IO.File.OpenRead(testFile); var encoding = Util.IO.DetectStreamEncoding(Stream); var adapter = new StreamDataAdapter(Stream); Reader = new AsyncTextReader(adapter, encoding); }
private IEnumerator<object> SendResponseTask(Stream source, int? count) { var length = Math.Min( (int)source.Length, count.GetValueOrDefault(int.MaxValue) ); ContentLength = length; if (!HeadersSent) { HeadersSent = true; yield return SendHeadersTask(); } ResponseSent = true; const int blockSize = 1024 * 128; var bytesLeft = length; using (var sda = new StreamDataAdapter(source, false)) using (var buffer = BufferPool<byte>.Allocate(blockSize)) while (bytesLeft > 0) { var readSize = Math.Min(blockSize, bytesLeft); var fBlock = sda.Read(buffer.Data, 0, blockSize); yield return fBlock; bytesLeft -= fBlock.Result; yield return Adapter.Write(buffer.Data, 0, fBlock.Result); } }