Esempio n. 1
0
        private void ClientDataReceived(ClientWrapper client, byte[] data)
        {
            var message = MessagesManager.GetDeserializedMessage(data);

            if (message == null)
            {
                Log.Error($"GetDeserializedMessage returned null. Client N°{Id}.");
                return;
            }

            Log.Debug($"Received {message.GetType().Name} from Client N°{Id}.");
            Dispatcher.DispatchMessage(message);
        }
Esempio n. 2
0
        public void SerializeDeserializeMessage()
        {
            MessagesManager.Initialize();
            var pingMsg = new PingMessage(123456789);

            // Length(int) + Id(short) + Time(long)
            byte[] serializedData = MessagesManager.SerializeMessage(pingMsg);
            Assert.Equal(4 + 2 + 8, serializedData.Length);

            byte[] dataWithoutLength   = serializedData.Skip(4).ToArray();
            var    deserializedPingMsg = (PingMessage)MessagesManager.GetDeserializedMessage(dataWithoutLength);

            Assert.Equal(123456789, deserializedPingMsg.Time);
        }