void conn_Disconnected(object sender, EventArgs e) { ICommunicationConnection conn = (ICommunicationConnection)sender; connections.Remove(conn); conn.Disconnected -= conn_Disconnected; }
public void Start() { if (IsServer) { server.ConnectionRecieved += server_ConnectionRecieved; server.Start(initArgs); } else { conn = client.Connect(initArgs); while (conn.IsConnected) { MessageReceived.RaiseEvent(this, conn.Receive()); } Environment.Exit(1); } }
public virtual void Start(ICommunicationInitialisation initArgs) { if (listening) { return; } connections = new List <ICommunicationConnection>(); OnStart(initArgs); while (!_stop) { ICommunicationConnection conn = WaitForConnection(); connections.Add(conn); conn.Disconnected += conn_Disconnected; if (ShouldFireConnectionReceived()) { OnConnectionReceived(conn); } if (!MultipleStreams) { break; } } Stopping = false; }
protected virtual void OnConnectionReceived(ICommunicationConnection connection) { ConnectionRecieved.RaiseEvent(this, connection); }
private void server_ConnectionRecieved(object sender, Generic.EventArgs <ICommunicationConnection> e) { conn = e.Value; conn.Disconnected += conn_Disconnected; }
private void server_ConnectionRecieved(object sender, Generic.EventArgs<ICommunicationConnection> e) { conn = e.Value; conn.Disconnected += conn_Disconnected; }