mirror of
https://github.com/home-assistant/core.git
synced 2025-07-28 15:47:12 +00:00
Migrate generic_hygrostat to use async_track_state_change_event (#115001)
This commit is contained in:
parent
7d5b39b9de
commit
34bf4dc962
@ -34,6 +34,7 @@ from homeassistant.const import (
|
|||||||
from homeassistant.core import (
|
from homeassistant.core import (
|
||||||
DOMAIN as HA_DOMAIN,
|
DOMAIN as HA_DOMAIN,
|
||||||
Event,
|
Event,
|
||||||
|
EventStateChangedData,
|
||||||
HomeAssistant,
|
HomeAssistant,
|
||||||
State,
|
State,
|
||||||
callback,
|
callback,
|
||||||
@ -41,7 +42,7 @@ from homeassistant.core import (
|
|||||||
from homeassistant.helpers import condition
|
from homeassistant.helpers import condition
|
||||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
from homeassistant.helpers.event import (
|
from homeassistant.helpers.event import (
|
||||||
async_track_state_change,
|
async_track_state_change_event,
|
||||||
async_track_time_interval,
|
async_track_time_interval,
|
||||||
)
|
)
|
||||||
from homeassistant.helpers.restore_state import RestoreEntity
|
from homeassistant.helpers.restore_state import RestoreEntity
|
||||||
@ -179,11 +180,15 @@ class GenericHygrostat(HumidifierEntity, RestoreEntity):
|
|||||||
await super().async_added_to_hass()
|
await super().async_added_to_hass()
|
||||||
|
|
||||||
# Add listener
|
# Add listener
|
||||||
async_track_state_change(
|
self.async_on_remove(
|
||||||
self.hass, self._sensor_entity_id, self._async_sensor_changed
|
async_track_state_change_event(
|
||||||
|
self.hass, self._sensor_entity_id, self._async_sensor_changed_event
|
||||||
|
)
|
||||||
|
)
|
||||||
|
self.async_on_remove(
|
||||||
|
async_track_state_change_event(
|
||||||
|
self.hass, self._switch_entity_id, self._async_switch_changed_event
|
||||||
)
|
)
|
||||||
async_track_state_change(
|
|
||||||
self.hass, self._switch_entity_id, self._async_switch_changed
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if self._keep_alive:
|
if self._keep_alive:
|
||||||
@ -343,6 +348,15 @@ class GenericHygrostat(HumidifierEntity, RestoreEntity):
|
|||||||
# Get default humidity from super class
|
# Get default humidity from super class
|
||||||
return super().max_humidity
|
return super().max_humidity
|
||||||
|
|
||||||
|
async def _async_sensor_changed_event(
|
||||||
|
self, event: Event[EventStateChangedData]
|
||||||
|
) -> None:
|
||||||
|
"""Handle ambient humidity changes."""
|
||||||
|
data = event.data
|
||||||
|
await self._async_sensor_changed(
|
||||||
|
data["entity_id"], data["old_state"], data["new_state"]
|
||||||
|
)
|
||||||
|
|
||||||
async def _async_sensor_changed(
|
async def _async_sensor_changed(
|
||||||
self, entity_id: str, old_state: State | None, new_state: State | None
|
self, entity_id: str, old_state: State | None, new_state: State | None
|
||||||
) -> None:
|
) -> None:
|
||||||
@ -374,6 +388,14 @@ class GenericHygrostat(HumidifierEntity, RestoreEntity):
|
|||||||
_LOGGER.warning("Sensor is stalled, call the emergency stop")
|
_LOGGER.warning("Sensor is stalled, call the emergency stop")
|
||||||
await self._async_update_humidity("Stalled")
|
await self._async_update_humidity("Stalled")
|
||||||
|
|
||||||
|
@callback
|
||||||
|
def _async_switch_changed_event(self, event: Event[EventStateChangedData]) -> None:
|
||||||
|
"""Handle humidifier switch state changes."""
|
||||||
|
data = event.data
|
||||||
|
self._async_switch_changed(
|
||||||
|
data["entity_id"], data["old_state"], data["new_state"]
|
||||||
|
)
|
||||||
|
|
||||||
@callback
|
@callback
|
||||||
def _async_switch_changed(
|
def _async_switch_changed(
|
||||||
self, entity_id: str, old_state: State | None, new_state: State | None
|
self, entity_id: str, old_state: State | None, new_state: State | None
|
||||||
|
Loading…
x
Reference in New Issue
Block a user