Example #1
0
        private void OnMessageReceive(object sender, BasicDeliverEventArgs ea)
        {
            string message = Encoding.UTF8.GetString(ea.Body);

            ControllerMessageDataModel model = JsonConvert.DeserializeObject <ControllerMessageDataModel>(message);

            if (model.Speed > 0)
            {
                _speed = model.Speed;
            }
        }
        private void OnMessageReceive(object sender, BasicDeliverEventArgs ea)
        {
            string message = Encoding.UTF8.GetString(ea.Body);

            ControllerMessageDataModel model = JsonConvert.DeserializeObject <ControllerMessageDataModel>(message);

            if (model?.Lights?.Length > 0)
            {
                foreach (ControllerMessageDataModel.LightDataModel ldm in model.Lights)
                {
                    foreach (TrafficLight trafficLight in _trafficLights.Where(tl => tl.Id == ldm.Id))
                    {
                        trafficLight.Status = ldm.Status;

                        ITimerSupporter timerSupporter = trafficLight as ITimerSupporter;
                        timerSupporter?.SetTime(ldm.Time);
                    }
                }
            }
        }