Use find_id_list in sachsen module
This commit is contained in:
parent
080c4aff81
commit
ae616bbb5b
1 changed files with 4 additions and 16 deletions
|
|
@ -20,6 +20,7 @@
|
||||||
from .browser import SachsenBrowser
|
from .browser import SachsenBrowser
|
||||||
from weboob.capabilities.gauge import ICapGauge, GaugeSensor, Gauge,\
|
from weboob.capabilities.gauge import ICapGauge, GaugeSensor, Gauge,\
|
||||||
SensorNotFound
|
SensorNotFound
|
||||||
|
from weboob.capabilities.base import find_id_list
|
||||||
from weboob.tools.backend import BaseBackend
|
from weboob.tools.backend import BaseBackend
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -37,8 +38,7 @@ class SachsenLevelBackend(BaseBackend, ICapGauge):
|
||||||
|
|
||||||
def iter_gauges(self, pattern=None):
|
def iter_gauges(self, pattern=None):
|
||||||
if pattern is None:
|
if pattern is None:
|
||||||
for gauge in self.browser.get_rivers_list():
|
return self.browser.get_rivers_list()
|
||||||
yield gauge
|
|
||||||
else:
|
else:
|
||||||
lowpattern = pattern.lower()
|
lowpattern = pattern.lower()
|
||||||
for gauge in self.browser.get_rivers_list():
|
for gauge in self.browser.get_rivers_list():
|
||||||
|
|
@ -46,24 +46,16 @@ class SachsenLevelBackend(BaseBackend, ICapGauge):
|
||||||
or lowpattern in gauge.object.lower():
|
or lowpattern in gauge.object.lower():
|
||||||
yield gauge
|
yield gauge
|
||||||
|
|
||||||
def _get_gauge_by_id(self, id):
|
|
||||||
for gauge in self.browser.get_rivers_list():
|
|
||||||
if id == gauge.id:
|
|
||||||
return gauge
|
|
||||||
return None
|
|
||||||
|
|
||||||
def _get_sensor_by_id(self, id):
|
def _get_sensor_by_id(self, id):
|
||||||
for gauge in self.browser.get_rivers_list():
|
for gauge in self.browser.get_rivers_list():
|
||||||
for sensor in gauge.sensors:
|
for sensor in gauge.sensors:
|
||||||
if id == sensor.id:
|
if id == sensor.id:
|
||||||
return sensor
|
return sensor
|
||||||
return None
|
raise SensorNotFound()
|
||||||
|
|
||||||
def iter_sensors(self, gauge, pattern=None):
|
def iter_sensors(self, gauge, pattern=None):
|
||||||
if not isinstance(gauge, Gauge):
|
if not isinstance(gauge, Gauge):
|
||||||
gauge = self._get_gauge_by_id(gauge)
|
gauge = find_id_list(self.browser.get_rivers_list(), _id, error=SensorNotFound)
|
||||||
if gauge is None:
|
|
||||||
raise SensorNotFound()
|
|
||||||
if pattern is None:
|
if pattern is None:
|
||||||
for sensor in gauge.sensors:
|
for sensor in gauge.sensors:
|
||||||
yield sensor
|
yield sensor
|
||||||
|
|
@ -76,13 +68,9 @@ class SachsenLevelBackend(BaseBackend, ICapGauge):
|
||||||
def iter_gauge_history(self, sensor):
|
def iter_gauge_history(self, sensor):
|
||||||
if not isinstance(sensor, GaugeSensor):
|
if not isinstance(sensor, GaugeSensor):
|
||||||
sensor = self._get_sensor_by_id(sensor)
|
sensor = self._get_sensor_by_id(sensor)
|
||||||
if sensor is None:
|
|
||||||
raise SensorNotFound()
|
|
||||||
return self.browser.iter_history(sensor)
|
return self.browser.iter_history(sensor)
|
||||||
|
|
||||||
def get_last_measure(self, sensor):
|
def get_last_measure(self, sensor):
|
||||||
if not isinstance(sensor, GaugeSensor):
|
if not isinstance(sensor, GaugeSensor):
|
||||||
sensor = self._get_sensor_by_id(sensor)
|
sensor = self._get_sensor_by_id(sensor)
|
||||||
if sensor is None:
|
|
||||||
raise SensorNotFound()
|
|
||||||
return sensor.lastvalue
|
return sensor.lastvalue
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue