Пример #1
0
        private void HandleAlternativeConnection()
        {
            List <BgoProtocolReader> list = RecvMessage();

            foreach (BgoProtocolReader item in list)
            {
                Protocol.ProtocolID protocolID = (Protocol.ProtocolID)item.ReadByte();

                Log.Add(LogSeverity.INFO, Log.LogDir.In, string.Format("Protocol ID: {0} ({1})", (byte)protocolID, protocolID));

                //ushort num = item.ReadUInt16();
                try
                {
                    Protocol protocol = ProtocolManager.GetProtocol(protocolID);
                    protocol.ParseMessage(index, item);
                }
                catch (Exception ex)
                {
                    string text = "Couldn't handle message for " + protocolID + " Protocol. ";
                    if (ProtocolManager.GetProtocol(protocolID) == null)
                    {
                        text = text + protocolID + " Protocol is not (any more) registered. ";
                    }
                    text = text + "Caught Exception: " + ex.ToString();
                    Log.Add(LogSeverity.ERROR, text);
                }
            }
        }
Пример #2
0
 public static Protocol GetProtocol(Protocol.ProtocolID protoID)
 {
     if (!protocols.ContainsKey(protoID))
     {
         return(null);
     }
     return(protocols[protoID]);
 }