public void GotMessage(IAsyncResult ar) { Console.WriteLine("got a message"); var details = (ClientDetails)ar.AsyncState; details.client.GetStream().EndRead(ar); Console.Write("== "); for (int i = 0 ; i < 10 ; i++) { Console.Write(details.readBuffer[i]); } Console.WriteLine(" =="); var message = new GenericMessage(details.readBuffer); if (message.ContentType == typeof(GoodbyeMessageContent)) { ClientDisconnected(details); Console.WriteLine("client said goodbye"); } else { HandleMessage(message); ReceiveMessage(details); } }
protected virtual void HandleMessage(GenericMessage message) { }