Explicitly pass in the config_entry in rainbird coordinator (#137982)

explicitly pass in the config_entry in coordinator
This commit is contained in:
Michael 2025-02-09 04:29:36 +01:00 committed by GitHub
parent 54c4ee7838
commit 932c2f794e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 18 deletions

View File

@ -101,18 +101,8 @@ async def async_setup_entry(hass: HomeAssistant, entry: RainbirdConfigEntry) ->
data = RainbirdData(
controller,
model_info,
coordinator=RainbirdUpdateCoordinator(
hass,
name=entry.title,
controller=controller,
unique_id=entry.unique_id,
model_info=model_info,
),
schedule_coordinator=RainbirdScheduleUpdateCoordinator(
hass,
name=f"{entry.title} Schedule",
controller=controller,
),
coordinator=RainbirdUpdateCoordinator(hass, entry, controller, model_info),
schedule_coordinator=RainbirdScheduleUpdateCoordinator(hass, entry, controller),
)
await data.coordinator.async_config_entry_first_refresh()

View File

@ -58,26 +58,28 @@ def async_create_clientsession() -> aiohttp.ClientSession:
class RainbirdUpdateCoordinator(DataUpdateCoordinator[RainbirdDeviceState]):
"""Coordinator for rainbird API calls."""
config_entry: RainbirdConfigEntry
def __init__(
self,
hass: HomeAssistant,
name: str,
config_entry: RainbirdConfigEntry,
controller: AsyncRainbirdController,
unique_id: str | None,
model_info: ModelAndVersion,
) -> None:
"""Initialize RainbirdUpdateCoordinator."""
super().__init__(
hass,
_LOGGER,
name=name,
config_entry=config_entry,
name=config_entry.title,
update_interval=UPDATE_INTERVAL,
request_refresh_debouncer=Debouncer(
hass, _LOGGER, cooldown=DEBOUNCER_COOLDOWN, immediate=False
),
)
self._controller = controller
self._unique_id = unique_id
self._unique_id = config_entry.unique_id
self._zones: set[int] | None = None
self._model_info = model_info
@ -145,14 +147,15 @@ class RainbirdScheduleUpdateCoordinator(DataUpdateCoordinator[Schedule]):
def __init__(
self,
hass: HomeAssistant,
name: str,
config_entry: RainbirdConfigEntry,
controller: AsyncRainbirdController,
) -> None:
"""Initialize ZoneStateUpdateCoordinator."""
super().__init__(
hass,
_LOGGER,
name=name,
config_entry=config_entry,
name=f"{config_entry.title} Schedule",
update_method=self._async_update_data,
update_interval=CALENDAR_UPDATE_INTERVAL,
)