Esempio n. 1
0
 private void Update()
 {
     if (this.controller != null && this.controller.IsReady() && !this.Ready)
     {
         this.Ready = true;
         this.eventSystem.Invoke <ConnectionReadyEvent>(new ConnectionReadyEvent());
     }
     else if (this.controller == null)
     {
         LoggerContext.getMainLogger().Generic("CONTROLLER", false);
     }
     foreach (DefaultPacket pack in this.controller.GetPackets())
     {
         this.eventSystem.Invoke <PacketReceivedEvent>(new PacketReceivedEvent(pack));
     }
     this.controller.SendPackets();
 }
Esempio n. 2
0
        public List <DefaultPacket> GetPackets()
        {
            List <DefaultPacket> list = new List <DefaultPacket>();

            if (this.DataReader == null || !this.DataReader.BaseStream.CanRead)
            {
                return(list);
            }
            if (!this.baseStream.DataAvailable)
            {
                return(list);
            }
            bool   flag = false;
            string text = this.DataReader.ReadLine();

            while (text != null && !flag)
            {
                foreach (string text2 in Regex.Split(text, "<JSON_SPLIT_INDICATOR>"))
                {
                    if (!(text2 == string.Empty))
                    {
                        DefaultPacket item = null;
                        try
                        {
                            item = (DefaultPacket.FromSendable(text2) as DefaultPacket);
                        }
                        catch (Exception ex)
                        {
                            LoggerContext.getMainLogger().Generic("Could not parse: " + text2, false);
                            goto IL_B7;
                        }
                        list.Add(item);
                    }
                    IL_B7 :;
                }
                if (!this.baseStream.DataAvailable)
                {
                    flag = true;
                    break;
                }
                text = this.DataReader.ReadLine();
            }
            return(list);
        }