private void HandleDataMessage(NetIncomingMessage incomingMessage) { if (IsAuthenticated) { //incomingMessage.Decrypt(cryptoAlgorithm); } var p = incomingMessage.ReadProtocol(); ushort messageType = incomingMessage.ReadUInt16(); //Trace.WriteLine("Received " + ((CustomMessageType)messageType).ToString() + "."); var protocol = Protocols.Where(x => x.Equals(p)).First(); var mHandlers = GetHandlers(protocol, messageType); var message = protocol.Create(messageType); message.ReadPayload(incomingMessage); if (OnMessageReceived != null) OnMessageReceived(null, new MessageEventArgs(this, message)); if (mHandlers != null) { for (int n = 0; n < mHandlers.Count; ++n) mHandlers[n](new MessageEventArgs(this, message)); } }
private void HandleUnconnectedDataMessage(NetIncomingMessage message) { var p = message.ReadProtocol(); ushort messageType = message.ReadUInt16(); //Trace.WriteLine("Received " + ((CustomMessageType)messageType).ToString() + " unconnected."); var protocol = Protocols.Where(x => x.Equals(p)).First(); var mHandlers = GetUnconnectedHandlers(protocol, messageType); var customMessage = protocol.Create(messageType); customMessage.ReadPayload(message); if (OnUnconnectedMessageReceived != null) OnUnconnectedMessageReceived(null, new UnconnectedMessageEventArgs(customMessage, message.SenderEndpoint)); if (mHandlers != null) { for (int n = 0; n < mHandlers.Count; ++n) mHandlers[n](new UnconnectedMessageEventArgs(customMessage, message.SenderEndpoint)); } }