예제 #1
0
 /// <summary>
 /// new
 /// </summary>
 /// <param name="socketBufferSize"></param>
 /// <param name="messageBufferSize"></param>
 /// <param name="millisecondsSendTimeout"></param>
 /// <param name="millisecondsReceiveTimeout"></param>
 /// <param name="protocolFactory"></param>
 public ThriftClient(int socketBufferSize,
                     int messageBufferSize,
                     int millisecondsSendTimeout,
                     int millisecondsReceiveTimeout,
                     ISyncClientProtocolHandlerFactory <ISyncClientProtocolHandler <ISyncMessageInfo <ClientThriftMessage>, ClientThriftMessage>, ISyncMessageInfo <ClientThriftMessage>, ClientThriftMessage> protocolFactory)
     : base(protocolFactory,
            socketBufferSize,
            messageBufferSize,
            millisecondsSendTimeout,
            millisecondsReceiveTimeout)
 {
 }
예제 #2
0
        /// <summary>
        /// new
        /// </summary>
        /// <param name="clientProtocolHandlerFactory"></param>
        /// <param name="socketBufferSize"></param>
        /// <param name="messageBufferSize"></param>
        /// <param name="millisecondsSendTimeout"></param>
        /// <param name="millisecondsReceiveTimeout"></param>
        /// <exception cref="ArgumentNullException">protocol is null</exception>
        public SocketClient(ISyncClientProtocolHandlerFactory <ISyncClientProtocolHandler <TMessageInfo, TMessage>, TMessageInfo, TMessage> clientProtocolHandlerFactory,
                            int socketBufferSize,
                            int messageBufferSize,
                            int millisecondsSendTimeout,
                            int millisecondsReceiveTimeout)
            : base(socketBufferSize, messageBufferSize)
        {
            this._protocolHandlerFactory = clientProtocolHandlerFactory ?? throw new ArgumentNullException("protocol");

            this._connectionPool = new SyncPool <TMessageInfo, TMessage>();

            this._millisecondsSendTimeout    = millisecondsSendTimeout;
            this._millisecondsReceiveTimeout = millisecondsReceiveTimeout;

            this._pendingQueue   = new PendingSendQueue(this);
            this._receivingQueue = new ReceivingQueue <TMessageInfo, TMessage>(this);

            this._endPointManager            = new EndPointManager <TMessageInfo, TMessage>(this);
            this._endPointManager.Connected += this.OnEndPointConnected;
            this._endPointManager.Already   += this.OnEndPointAlready;
        }
예제 #3
0
 /// <summary>
 /// new
 /// </summary>
 /// <param name="clientProtocolHandlerFactory"></param>
 public SocketClient(ISyncClientProtocolHandlerFactory <ISyncClientProtocolHandler <TMessageInfo, TMessage>, TMessageInfo, TMessage> clientProtocolHandlerFactory)
     : this(clientProtocolHandlerFactory, 8192, 8192, 3000, 3000)
 {
 }
예제 #4
0
 /// <summary>
 /// new
 /// </summary>
 /// <param name="socketBufferSize"></param>
 /// <param name="messageBufferSize"></param>
 /// <param name="protocolFactory"></param>
 public ThriftClient(int socketBufferSize, int messageBufferSize, ISyncClientProtocolHandlerFactory <ISyncClientProtocolHandler <ISyncMessageInfo <ClientThriftMessage>, ClientThriftMessage>, ISyncMessageInfo <ClientThriftMessage>, ClientThriftMessage> protocolFactory)
     : this(socketBufferSize, messageBufferSize, 3000, 3000, protocolFactory)
 {
 }
예제 #5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="protocolFactory"></param>
 public ThriftClient(ISyncClientProtocolHandlerFactory <ISyncClientProtocolHandler <ISyncMessageInfo <ClientThriftMessage>, ClientThriftMessage>, ISyncMessageInfo <ClientThriftMessage>, ClientThriftMessage> protocolFactory)
     : this(8192, 8192, protocolFactory)
 {
 }