diff --git a/modules/dresdenwetter/backend.py b/modules/dresdenwetter/backend.py index 0e0f58fff43c2dc2ea33f8804fc499c350606a17..1cd2de18a333e7640e8e878435fddfff382ffb48 100644 --- a/modules/dresdenwetter/backend.py +++ b/modules/dresdenwetter/backend.py @@ -21,6 +21,7 @@ from .browser import DresdenWetterBrowser from weboob.capabilities.gauge import ICapGauge, GaugeSensor, Gauge,\ SensorNotFound +from weboob.capabilities.base import find_id_list from weboob.tools.backend import BaseBackend @@ -46,22 +47,16 @@ def iter_gauges(self, pattern=None): gauge.sensors = list(self.browser.get_sensors_list()) yield gauge - def _get_gauge_by_id(self, id): - for gauge in self.iter_gauges(): - if id == gauge.id: - return gauge - return None - def _get_sensor_by_id(self, id): for gauge in self.iter_gauges(): for sensor in gauge.sensors: if id == sensor.id: return sensor - return None + raise SensorNotFound() def iter_sensors(self, gauge, pattern=None): if not isinstance(gauge, Gauge): - gauge = self._get_gauge_by_id(gauge) + gauge = find_id_list(self.iter_gauges(), gauge, error=SensorNotFound) if pattern is None: for sensor in gauge.sensors: yield sensor @@ -78,6 +73,4 @@ def iter_gauge_history(self, sensor): def get_last_measure(self, sensor): if not isinstance(sensor, GaugeSensor): sensor = self._get_sensor_by_id(sensor) - if sensor is None: - raise SensorNotFound() return sensor.lastvalue