Esempio n. 1
0
 public static MessageType GetMessageType(byte[] buffer, int offset)
 {
     using (var stream = new MemoryStream(buffer, offset, buffer.Length - offset, false))
     {
         var deserializer = new StreamDeserializer(stream);
         deserializer.ReadInt();
         var messageType = (MessageType)deserializer.ReadInt();
         return(messageType);
     }
 }
Esempio n. 2
0
 public static MessageContainer ReadFromBuffer(byte[] buffer, int offset, IConnectionUtility utility)
 {
     using (var stream = new MemoryStream(buffer, offset, buffer.Length - offset, false))
     {
         var deserializer = new StreamDeserializer(stream);
         deserializer.ReadInt();
         var messageType = (MessageType)deserializer.ReadInt();
         if (!Enum.IsDefined(typeof(MessageType), messageType))
         {
             //Console.WriteLine("Invalid message type!");
             return(null);
         }
         //Console.WriteLine(" !! MessageType = " + messageType);
         return(new MessageContainer(MessageHelper.GetDeserializeMethod(messageType, utility)(deserializer)));
     }
 }
Esempio n. 3
0
 public static int GetNeededLength(byte[] buffer, int offset)
 {
     using (var stream = new MemoryStream(buffer, offset, buffer.Length - offset, false))
     {
         var deserializer  = new StreamDeserializer(stream);
         var messageLength = deserializer.ReadInt();
         return(messageLength + HeaderSize);
     }
 }