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); } } } }