static void OnClientConnectionAvailable(object sender, SecureConnectionResults args) { if (args.AsyncException != null) { Console.WriteLine(args.AsyncException); return; } SslStream stream = args.SecureStream; Console.WriteLine("Client Connection secured: " + stream.IsAuthenticated); StreamWriter writer = new StreamWriter(stream); writer.AutoFlush = true; writer.WriteLine("Hello from client!"); StreamReader reader = new StreamReader(stream); string line = reader.ReadLine(); Console.WriteLine("Client Recieved: '{0}'", line == null ? "<NULL>" : line); writer.Close(); reader.Close(); stream.Close(); }
static void OnServerConnectionAvailable(object sender, SecureConnectionResults args) { if (args.AsyncException != null) { _Log.ErrorFormat("Client connection failed {0}", args.AsyncException); return; } try { SslStream sslStream = args.SecureStream; Guid session = Guid.NewGuid(); var receiveAgent = new ReceiveManager.ReceiveAgent(ClientRequestHelper.Process); var client = new Communication.Client(sslStream, session); var iClient = client as Trader.Helper.Common.ICommunicationAgent; iClient.DataArrived += ReceiveCenter.Default.DataArrivedHandler; iClient.Closed += AgentController.Default.SenderClosedEventHandle; var iReceiver = receiveAgent as Trader.Helper.Common.IReceiveAgent; iReceiver.ResponseSent += SendCenter.Default.ResponseSentHandle; AgentController.Default.Add(session, receiveAgent, client); } catch (Exception ex) { _Log.Error(ex); } }
private void OnServerConnectionAvailable(object sender, SecureConnectionResults args) { try { if (args.AsyncException != null) { _Log.ErrorFormat("Client connection failed {0}", args.AsyncException); return; } SslInfo sslInfo = args.SecureInfo; Session session = SessionMapping.Get(); Client client = new Client(sslInfo.SslStream, session, sslInfo.NetworkStream.BufferInUsed, sslInfo.Socket); SenderReceiverPair relation = new SenderReceiverPair(client, new ReceiveAgent()); Application.Default.AgentController.Add(session, relation.Receiver, relation.Sender); } catch (Exception ex) { _Log.Error(ex); } }