Beispiel #1
0
        /// <summary>Initializes a new instance of the <see cref="TelnetStream"/> class.</summary>
        /// <exception cref="ArgumentNullException"><paramref name="readAsync"/>, <paramref name="writeAsync"/> and/or
        /// <paramref name="dataAvailable"/> equal <c>null</c>.</exception>
        public TelnetStream(ReadAsyncCallback readAsync, WriteAsyncCallback writeAsync, Func<bool> dataAvailable)
            : base(
                new ReadBuffer(readAsync, Defaults.PhysicalStreamBufferSize),
                new WriteBuffer(writeAsync, Defaults.PhysicalStreamBufferSize))
        {
            if (readAsync == null)
            {
                throw new ArgumentNullException(nameof(readAsync));
            }

            if (writeAsync == null)
            {
                throw new ArgumentNullException(nameof(writeAsync));
            }

            if (dataAvailable == null)
            {
                throw new ArgumentNullException(nameof(dataAvailable));
            }

            this.dataAvailable = dataAvailable;
        }
Beispiel #2
0
 public S101Writer(WriteAsyncCallback writeAsync, int bufferSize)
 {
     this.writeBuffer = new WriteBuffer(writeAsync, bufferSize);
 }
Beispiel #3
0
 public S101Writer(WriteAsyncCallback writeAsync)
     : this(writeAsync, Constants.PhysicalStreamBufferSize)
 {
 }
Beispiel #4
0
        public WriteBuffer(WriteAsyncCallback writeAsync, int bufferSize)
            : base(bufferSize)
        {
            if (writeAsync == null)
            {
                throw new ArgumentNullException(nameof(writeAsync));
            }

            this.writeAsync = writeAsync;
            this.write = (b, o, c) => ThrowInvalidSyncOperationException();
        }