From 1e17150e9f834d0846bb97ba10f4167c87ef1353 Mon Sep 17 00:00:00 2001 From: Michael <35783820+mib1185@users.noreply.github.com> Date: Thu, 2 Oct 2025 11:54:20 +0200 Subject: [PATCH] Explicit pass in the config entry to coordinator in airtouch4 (#153361) Co-authored-by: Josef Zweck Co-authored-by: Franck Nijhof --- homeassistant/components/airtouch4/__init__.py | 7 ++----- homeassistant/components/airtouch4/coordinator.py | 10 +++++++++- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/homeassistant/components/airtouch4/__init__.py b/homeassistant/components/airtouch4/__init__.py index 1a4c87a940c8..b7a96ddc77e3 100644 --- a/homeassistant/components/airtouch4/__init__.py +++ b/homeassistant/components/airtouch4/__init__.py @@ -2,17 +2,14 @@ from airtouch4pyapi import AirTouch -from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_HOST, Platform from homeassistant.core import HomeAssistant from homeassistant.exceptions import ConfigEntryNotReady -from .coordinator import AirtouchDataUpdateCoordinator +from .coordinator import AirTouch4ConfigEntry, AirtouchDataUpdateCoordinator PLATFORMS = [Platform.CLIMATE] -type AirTouch4ConfigEntry = ConfigEntry[AirtouchDataUpdateCoordinator] - async def async_setup_entry(hass: HomeAssistant, entry: AirTouch4ConfigEntry) -> bool: """Set up AirTouch4 from a config entry.""" @@ -22,7 +19,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: AirTouch4ConfigEntry) -> info = airtouch.GetAcs() if not info: raise ConfigEntryNotReady - coordinator = AirtouchDataUpdateCoordinator(hass, airtouch) + coordinator = AirtouchDataUpdateCoordinator(hass, entry, airtouch) await coordinator.async_config_entry_first_refresh() entry.runtime_data = coordinator diff --git a/homeassistant/components/airtouch4/coordinator.py b/homeassistant/components/airtouch4/coordinator.py index 5a0805664165..e0feb2052509 100644 --- a/homeassistant/components/airtouch4/coordinator.py +++ b/homeassistant/components/airtouch4/coordinator.py @@ -2,26 +2,34 @@ import logging +from airtouch4pyapi import AirTouch from airtouch4pyapi.airtouch import AirTouchStatus from homeassistant.components.climate import SCAN_INTERVAL +from homeassistant.config_entries import ConfigEntry +from homeassistant.core import HomeAssistant from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed from .const import DOMAIN _LOGGER = logging.getLogger(__name__) +type AirTouch4ConfigEntry = ConfigEntry[AirtouchDataUpdateCoordinator] + class AirtouchDataUpdateCoordinator(DataUpdateCoordinator): """Class to manage fetching Airtouch data.""" - def __init__(self, hass, airtouch): + def __init__( + self, hass: HomeAssistant, entry: AirTouch4ConfigEntry, airtouch: AirTouch + ) -> None: """Initialize global Airtouch data updater.""" self.airtouch = airtouch super().__init__( hass, _LOGGER, + config_entry=entry, name=DOMAIN, update_interval=SCAN_INTERVAL, )