protected virtual void AcceptCallback(IAsyncResult ar) { // if (true) // ; // todo // it's a base implemtation and virtual AcceptObject obj = ((AcceptObject)ar.AsyncState); obj.allDone.Set(); Socket handler = obj.listener.EndAccept(ar); Console.WriteLine("Accept connection from: " + handler.RemoteEndPoint.ToString()); lock (this._clients) { BaseConnection connection = new BaseConnection(handler, this); // use the same interpretor this.AddID(connection.ID); // OnConnected this._clients.Add(connection); this.OnAcceptedConnection(connection); } }
public virtual void AddConnection(Socket client) { // throw new NotImplementedException(); Debug.WriteLine(this + ".AddConnection from socket"); // Socket handler = client.Accept(); Console.WriteLine("Accept connection from: " + client.RemoteEndPoint.ToString()); lock (this._clients) { BaseConnection connection = new BaseConnection(client, this); // use the same interpretor this.AddID(connection.ID); // OnConnected this._clients.Add(connection); this.OnAcceptedConnection(connection); } }
private void OnAcceptedConnection(BaseConnection connection) { if (this.AcceptedConnection != null) { this.AcceptedConnection(connection); } }