Beispiel #1
0
        public void LoadAllWorkers()
        {
            workers.Clear();
            json = File.ReadAllText("Data/commands_simple.json");
            JArray jArray = JArray.Parse(json);

            foreach (JToken tok in jArray)
            {
                string type = tok["type"].Value <string>();
                Type   t    = Type.GetType("Wolfy.Commands.Workers." + type);
                if (t != null)
                {
                    if (typeof(CommandWorker).IsAssignableFrom(t))
                    {
                        CommandWorker cw = (CommandWorker)Activator.CreateInstance(t);
                        cw.RegisterClient(Client);
                        cw.LoadDataFromJson(tok);
                        workers.Add(cw);
                        Client.DebugLogger.LogMessage(LogLevel.Debug, "Wolfy", $"Loaded command {cw}", DateTime.Now);
                    }
                    else
                    {
                        Client.DebugLogger.LogMessage(LogLevel.Error, "Wolfy", $"Exception loading command workers: Type {t} does not derive from Wolfy.Commands.Workers.CommandWorker\r\n\r\nData: {tok}", DateTime.Now);
                    }
                }
                else
                {
                    Client.DebugLogger.LogMessage(LogLevel.Error, "Wolfy", $"Exception loading command workers: Could not find type Wolfy.Commands.Workers.{type}\r\n\r\nData: {tok}", DateTime.Now);
                }
            }
        }
Beispiel #2
0
 public Logger2(string name = "Logger", LogMode logMode = LogMode.NONE, AlertMode alertMode = AlertMode.NONE)
 {
     this.name      = name + ": ";
     this.logMode   = logMode;
     this.alertMode = alertMode;
     reseter        = new ManualResetEvent(false);
     worker         = new CommandWorker(this.name);
     worker.Start();
 }
Beispiel #3
0
        public DroneClient()
        {
            _NavigationDataViewModel = new ViewModel.NavigationDataViewModel();
            _configuration           = new DroneConfiguration();

            _CommandWorker       = new CommandWorker(this);
            _NavDataWorker       = new NavDataWorker(this);
            _ConfigurationWorker = new ConfigurationWorker(this);
            //TODO ajouter le _configurationAcquisitionWorker
            _WatchdogWorker = new WatchdogWorker(this, new WorkerBase[] { _NavDataWorker, _CommandWorker });
            _InputTimer     = ThreadPoolTimer.CreatePeriodicTimer(new TimerElapsedHandler(InputTimerElapsedHandler), TimeSpan.FromMilliseconds(1000 / 12));
        }
Beispiel #4
0
 public Logger(string tag = "Logger", LogMode logMode = LogMode.NONE, AlertMode alertMode = AlertMode.NONE, object data = null, Boolean haveToBeSend = false, String path = "")
 {
     this.tag          = tag;
     this.logMode      = logMode;
     this.haveToBeSend = haveToBeSend;
     this.path         = path;
     this.alertMode    = alertMode;
     this.data         = data;
     commandWorker     = new CommandWorker("Logger");
     commandWorker.Start();
     manualResetEvent = new ManualResetEvent(false);
     cancellationTS   = new CancellationTokenSource();
     locker           = new object();
     Console(INIT);
 }
Beispiel #5
0
        static int Main(string[] args)
        {
            string Ip = IPAddress.Any.ToString();

            Console.WriteLine(Ip);

            ServerWorker = new Server(Ip);
            ServerWorker.Start();

            Console.WriteLine("Введите exit что бы завершить работу");
            while (true)
            {
                string input   = Console.ReadLine();
                var    command = Commands.Commands.GetCommand(input);

                switch (command.Type)
                {
                case TypeCommand.Send:
                    CommandWorker.Send(command.FullValue);
                    break;

                case TypeCommand.Ban:
                    CommandWorker.Ban(command.FullValue);
                    break;

                case TypeCommand.Help:
                    CommandWorker.Help();
                    break;

                case TypeCommand.Exit:
                    CommandWorker.Exit();
                    break;

                case TypeCommand.Userlist:
                    CommandWorker.UserList();
                    break;

                default:
                    break;
                }
            }
        }
 public void Init(DataConnectionResource connectionStringEnum)
 {
     this.ConnectionString = EnumString.GetStringValue(connectionStringEnum);
     this.commandWorker    = new CommandWorker("MysqlOpenHelper");
     this.commandWorker.Start();
 }
Beispiel #7
0
 public void RunCommand(CommandInterface command)
 {
     Save();
     CommandWorker.RunWorkerAsync(command);
 }