Deprecate and remove lazy_error from modbus (#105037)
This commit is contained in:
parent
5b59e043fa
commit
0638088aee
16 changed files with 66 additions and 273 deletions
|
@ -54,7 +54,7 @@ async def async_setup_platform(
|
|||
slave_count = entry.get(CONF_SLAVE_COUNT, None) or entry.get(
|
||||
CONF_VIRTUAL_COUNT, 0
|
||||
)
|
||||
sensor = ModbusBinarySensor(hub, entry, slave_count)
|
||||
sensor = ModbusBinarySensor(hass, hub, entry, slave_count)
|
||||
if slave_count > 0:
|
||||
sensors.extend(await sensor.async_setup_slaves(hass, slave_count, entry))
|
||||
sensors.append(sensor)
|
||||
|
@ -64,12 +64,18 @@ async def async_setup_platform(
|
|||
class ModbusBinarySensor(BasePlatform, RestoreEntity, BinarySensorEntity):
|
||||
"""Modbus binary sensor."""
|
||||
|
||||
def __init__(self, hub: ModbusHub, entry: dict[str, Any], slave_count: int) -> None:
|
||||
def __init__(
|
||||
self,
|
||||
hass: HomeAssistant,
|
||||
hub: ModbusHub,
|
||||
entry: dict[str, Any],
|
||||
slave_count: int,
|
||||
) -> None:
|
||||
"""Initialize the Modbus binary sensor."""
|
||||
self._count = slave_count + 1
|
||||
self._coordinator: DataUpdateCoordinator[list[int] | None] | None = None
|
||||
self._result: list[int] = []
|
||||
super().__init__(hub, entry)
|
||||
super().__init__(hass, hub, entry)
|
||||
|
||||
async def async_setup_slaves(
|
||||
self, hass: HomeAssistant, slave_count: int, entry: dict[str, Any]
|
||||
|
@ -109,14 +115,9 @@ class ModbusBinarySensor(BasePlatform, RestoreEntity, BinarySensorEntity):
|
|||
)
|
||||
self._call_active = False
|
||||
if result is None:
|
||||
if self._lazy_errors:
|
||||
self._lazy_errors -= 1
|
||||
return
|
||||
self._lazy_errors = self._lazy_error_count
|
||||
self._attr_available = False
|
||||
self._result = []
|
||||
else:
|
||||
self._lazy_errors = self._lazy_error_count
|
||||
self._attr_available = True
|
||||
if self._input_type in (CALL_TYPE_COIL, CALL_TYPE_DISCRETE):
|
||||
self._result = result.bits
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue