Example #1
0
 public TFramedTransport(TTransport transport)
     : base(transport)
 {
     ReadBuffer  = new Client.TMemoryBufferTransport(Configuration);
     WriteBuffer = new Client.TMemoryBufferTransport(Configuration);
     InitWriteBuffer();
 }
Example #2
0
        //TODO: should support only specified input transport?
        public TBufferedTransport(TTransport transport, int bufSize = 1024)
            : base(transport)
        {
            if (bufSize <= 0)
            {
                throw new ArgumentOutOfRangeException(nameof(bufSize), "Buffer size must be a positive number.");
            }

            DesiredBufferSize = bufSize;

            WriteBuffer = new Client.TMemoryBufferTransport(InnerTransport.Configuration, bufSize);
            ReadBuffer  = new Client.TMemoryBufferTransport(InnerTransport.Configuration, bufSize);

            Debug.Assert(DesiredBufferSize == ReadBuffer.Capacity);
            Debug.Assert(DesiredBufferSize == WriteBuffer.Capacity);
        }