Example #1
0
 public WebSocketSession(WebSocket webSocket, DelegateGotMessage gotMessage, CompletionQueue completion_queue)
 {
     this.completion_queue = completion_queue;
     this.send_queue = new SendQueue(completion_queue, new WebsocketSendAsync(webSocket, completion_queue));
     if (null == webSocket)
         throw new Exception("no websocket context");
     this.webSocket = webSocket;
     if (null == gotMessage)
         throw new Exception("no recv message callback");
     this.gotMessage = gotMessage;
     this._Id = Guid.NewGuid();
     ReceiveAsyncLoop();
     SendSessionId();
 }
Example #2
0
 public TcpMessageClientIAR(IPEndPoint server, DelegateConnected connected_callback,
     DelegateMessageWaiting message_callback, CompletionQueue completion_queue)
 {
     send_queue = new SendQueue(completion_queue, new TcpSendIAR(client, completion_queue));
     if (null == server) throw new ArgumentException();
     this.server = server;
     if (null == connected_callback) throw new ArgumentException();
     this.OnConnected = connected_callback;
     if (null == message_callback) throw new ArgumentException();
     this.OnMessageWaiting = message_callback;
     if (null == message_callback) throw new ArgumentException();
     this.completion_queue = completion_queue;
     new TcpConnectIAR(client, server, ConnectedThread);
 }
Example #3
0
 public TcpMessageClient(IPEndPoint server, DelegateConnected connected_callback,
     DelegateMessageWaiting message_callback, CompletionQueue completion_queue, DelegateFactoryTcpReader factoryTcpReader)
 {
     send_queue = new SendQueue(completion_queue, new TcpSendIAR(client, completion_queue));
     if (null == server) throw new ArgumentException();
     this.server = server;
     if (null == connected_callback) throw new ArgumentException();
     this.OnConnected = connected_callback;
     if (null == message_callback) throw new ArgumentException();
     this.OnMessageWaiting = message_callback;
     if (null == message_callback) throw new ArgumentException();
     this.completion_queue = completion_queue;
     if (null == factoryTcpReader) throw new ArgumentException();
     this.factoryTcpReader = factoryTcpReader;
     SocketAsyncEventArgs connectAsyncEventArgs = new SocketAsyncEventArgs();
     connectAsyncEventArgs.RemoteEndPoint = server;
     connectAsyncEventArgs.Completed += connectAsyncEventArgs_Completed;
     client.ConnectAsync(connectAsyncEventArgs);
 }