public ActionResult <List <ISensor> > GetSensor(string id) { if (string.IsNullOrEmpty(id)) { logger.LogInformation($"Returning information of all existing sensors."); return(Ok(sensorManager.GetSensors().ToList())); } logger.LogInformation($"Sensor information requested at ID: {id}"); if (!Guid.TryParse(id, out Guid guid)) { logger.LogError(WrongIdFormatMessage(id)); return(BadRequest(WrongIdFormatMessage(id))); } var sensor = sensorManager.GetSensor(guid); if (sensor == null) { logger.LogError(SensorIdNotFoundMessage(id)); return(NotFound(SensorIdNotFoundMessage(id))); } logger.LogInformation($"Sensor information has been returned for ID = {sensor.Id}"); return(Ok(sensor)); }
private void Alarm_SensorStatusChangedEvent(object sender, SensorAlarmStatusArgs e) { var sensorsInAlarm = (from sensor in ParentSensorManager.GetSensors() where sensor.Alarm.Status != SensorAlarm.eStatus.Normalized select sensor).ToArray(); Status = sensorsInAlarm.Count() > 0 ? eStatus.Alarm : eStatus.Normalized; }