Esempio n. 1
0
        public void GetMessageFromClient(object sender, string message)
        {
            //If message if log - handle and notify, else ignore.
            CommandRecievedEventArgs command = CommandRecievedEventArgs.FromJson(message);

            if (command.CommandID == (int)CommandEnum.LogCommand)
            {
                ObservableCollection <LogType> list = new ObservableCollection <LogType>();
                string[] logsStrings = command.Args[0].Split(';');
                foreach (string s in logsStrings)
                {
                    if (s.Contains("Status") && s.Contains("Message"))
                    {
                        try
                        {
                            MessageRecievedEventArgs m = MessageRecievedEventArgs.FromJson(s);
                            list.Add(LogType.LogTypeFromMessageRecieved(m));
                        }
                        catch (Exception e)
                        {
                            continue;
                        }
                    }
                }
                Logs = list;
                NotifyRefresh?.Invoke();
            }
            else if (command.CommandID == (int)CommandEnum.NewLogEntryCommand)
            {
                try
                {
                    MessageRecievedEventArgs       m        = MessageRecievedEventArgs.FromJson(command.Args[0]);
                    ObservableCollection <LogType> tempList = new ObservableCollection <LogType>(Logs);
                    tempList.Add(LogType.LogTypeFromMessageRecieved(m));
                    this.Logs = tempList;
                    NotifyRefresh?.Invoke();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.ToString());
                }
            }
        }