From 1522f7b3a870c2c3fe53257b48d4e5d2e9a9495b Mon Sep 17 00:00:00 2001 From: Michael <35783820+mib1185@users.noreply.github.com> Date: Sat, 8 Feb 2025 12:03:26 +0100 Subject: [PATCH] Explicitly pass in the config_entry in airzone_cloud coordinator init (#137703) explicitly pass in the config_entry in airzone_cloud coordinator init --- homeassistant/components/airzone_cloud/__init__.py | 7 ++----- .../components/airzone_cloud/binary_sensor.py | 3 +-- homeassistant/components/airzone_cloud/climate.py | 3 +-- .../components/airzone_cloud/coordinator.py | 13 ++++++++++++- .../components/airzone_cloud/diagnostics.py | 2 +- homeassistant/components/airzone_cloud/select.py | 3 +-- homeassistant/components/airzone_cloud/sensor.py | 3 +-- homeassistant/components/airzone_cloud/switch.py | 3 +-- .../components/airzone_cloud/water_heater.py | 3 +-- 9 files changed, 21 insertions(+), 19 deletions(-) diff --git a/homeassistant/components/airzone_cloud/__init__.py b/homeassistant/components/airzone_cloud/__init__.py index 5baa0bcea10..a5a29263140 100644 --- a/homeassistant/components/airzone_cloud/__init__.py +++ b/homeassistant/components/airzone_cloud/__init__.py @@ -5,12 +5,11 @@ from __future__ import annotations from aioairzone_cloud.cloudapi import AirzoneCloudApi from aioairzone_cloud.common import ConnectionOptions -from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_ID, CONF_PASSWORD, CONF_USERNAME, Platform from homeassistant.core import HomeAssistant from homeassistant.helpers import aiohttp_client -from .coordinator import AirzoneUpdateCoordinator +from .coordinator import AirzoneCloudConfigEntry, AirzoneUpdateCoordinator PLATFORMS: list[Platform] = [ Platform.BINARY_SENSOR, @@ -21,8 +20,6 @@ PLATFORMS: list[Platform] = [ Platform.WATER_HEATER, ] -type AirzoneCloudConfigEntry = ConfigEntry[AirzoneUpdateCoordinator] - async def async_setup_entry( hass: HomeAssistant, entry: AirzoneCloudConfigEntry @@ -42,7 +39,7 @@ async def async_setup_entry( airzone.select_installation(inst) await airzone.update_installation(inst) - coordinator = AirzoneUpdateCoordinator(hass, airzone) + coordinator = AirzoneUpdateCoordinator(hass, entry, airzone) await coordinator.async_config_entry_first_refresh() entry.runtime_data = coordinator diff --git a/homeassistant/components/airzone_cloud/binary_sensor.py b/homeassistant/components/airzone_cloud/binary_sensor.py index 3d6f6b42901..4a7b5441b68 100644 --- a/homeassistant/components/airzone_cloud/binary_sensor.py +++ b/homeassistant/components/airzone_cloud/binary_sensor.py @@ -28,8 +28,7 @@ from homeassistant.const import EntityCategory from homeassistant.core import HomeAssistant, callback from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import AirzoneCloudConfigEntry -from .coordinator import AirzoneUpdateCoordinator +from .coordinator import AirzoneCloudConfigEntry, AirzoneUpdateCoordinator from .entity import ( AirzoneAidooEntity, AirzoneEntity, diff --git a/homeassistant/components/airzone_cloud/climate.py b/homeassistant/components/airzone_cloud/climate.py index b98473072e4..69b10d2a69e 100644 --- a/homeassistant/components/airzone_cloud/climate.py +++ b/homeassistant/components/airzone_cloud/climate.py @@ -58,8 +58,7 @@ from homeassistant.core import HomeAssistant, callback from homeassistant.exceptions import HomeAssistantError from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import AirzoneCloudConfigEntry -from .coordinator import AirzoneUpdateCoordinator +from .coordinator import AirzoneCloudConfigEntry, AirzoneUpdateCoordinator from .entity import ( AirzoneAidooEntity, AirzoneEntity, diff --git a/homeassistant/components/airzone_cloud/coordinator.py b/homeassistant/components/airzone_cloud/coordinator.py index e510dcfb401..840bfec0d1b 100644 --- a/homeassistant/components/airzone_cloud/coordinator.py +++ b/homeassistant/components/airzone_cloud/coordinator.py @@ -10,6 +10,7 @@ from typing import Any from aioairzone_cloud.cloudapi import AirzoneCloudApi from aioairzone_cloud.exceptions import AirzoneCloudError +from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed @@ -19,11 +20,20 @@ SCAN_INTERVAL = timedelta(seconds=60) _LOGGER = logging.getLogger(__name__) +type AirzoneCloudConfigEntry = ConfigEntry[AirzoneUpdateCoordinator] + class AirzoneUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]): """Class to manage fetching data from the Airzone Cloud device.""" - def __init__(self, hass: HomeAssistant, airzone: AirzoneCloudApi) -> None: + config_entry: AirzoneCloudConfigEntry + + def __init__( + self, + hass: HomeAssistant, + config_entry: AirzoneCloudConfigEntry, + airzone: AirzoneCloudApi, + ) -> None: """Initialize.""" self.airzone = airzone self.airzone.set_update_callback(self.async_set_updated_data) @@ -31,6 +41,7 @@ class AirzoneUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]): super().__init__( hass, _LOGGER, + config_entry=config_entry, name=DOMAIN, update_interval=SCAN_INTERVAL, ) diff --git a/homeassistant/components/airzone_cloud/diagnostics.py b/homeassistant/components/airzone_cloud/diagnostics.py index b6744e36d8c..04aac7e2aa8 100644 --- a/homeassistant/components/airzone_cloud/diagnostics.py +++ b/homeassistant/components/airzone_cloud/diagnostics.py @@ -25,7 +25,7 @@ from homeassistant.components.diagnostics import async_redact_data from homeassistant.const import CONF_PASSWORD, CONF_USERNAME from homeassistant.core import HomeAssistant -from . import AirzoneCloudConfigEntry +from .coordinator import AirzoneCloudConfigEntry TO_REDACT_API = [ API_CITY, diff --git a/homeassistant/components/airzone_cloud/select.py b/homeassistant/components/airzone_cloud/select.py index 895796a1073..e0c595a80e8 100644 --- a/homeassistant/components/airzone_cloud/select.py +++ b/homeassistant/components/airzone_cloud/select.py @@ -23,8 +23,7 @@ from homeassistant.const import EntityCategory from homeassistant.core import HomeAssistant, callback from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import AirzoneCloudConfigEntry -from .coordinator import AirzoneUpdateCoordinator +from .coordinator import AirzoneCloudConfigEntry, AirzoneUpdateCoordinator from .entity import AirzoneEntity, AirzoneZoneEntity diff --git a/homeassistant/components/airzone_cloud/sensor.py b/homeassistant/components/airzone_cloud/sensor.py index 70d2fd079d4..4b13e09d126 100644 --- a/homeassistant/components/airzone_cloud/sensor.py +++ b/homeassistant/components/airzone_cloud/sensor.py @@ -49,8 +49,7 @@ from homeassistant.const import ( from homeassistant.core import HomeAssistant, callback from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import AirzoneCloudConfigEntry -from .coordinator import AirzoneUpdateCoordinator +from .coordinator import AirzoneCloudConfigEntry, AirzoneUpdateCoordinator from .entity import ( AirzoneAidooEntity, AirzoneEntity, diff --git a/homeassistant/components/airzone_cloud/switch.py b/homeassistant/components/airzone_cloud/switch.py index 0eb907ff792..8de0685e15e 100644 --- a/homeassistant/components/airzone_cloud/switch.py +++ b/homeassistant/components/airzone_cloud/switch.py @@ -15,8 +15,7 @@ from homeassistant.components.switch import ( from homeassistant.core import HomeAssistant, callback from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import AirzoneCloudConfigEntry -from .coordinator import AirzoneUpdateCoordinator +from .coordinator import AirzoneCloudConfigEntry, AirzoneUpdateCoordinator from .entity import AirzoneEntity, AirzoneZoneEntity diff --git a/homeassistant/components/airzone_cloud/water_heater.py b/homeassistant/components/airzone_cloud/water_heater.py index 51228ae6b90..381dce913fe 100644 --- a/homeassistant/components/airzone_cloud/water_heater.py +++ b/homeassistant/components/airzone_cloud/water_heater.py @@ -31,8 +31,7 @@ from homeassistant.const import ATTR_TEMPERATURE, STATE_OFF, UnitOfTemperature from homeassistant.core import HomeAssistant, callback from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import AirzoneCloudConfigEntry -from .coordinator import AirzoneUpdateCoordinator +from .coordinator import AirzoneCloudConfigEntry, AirzoneUpdateCoordinator from .entity import AirzoneHotWaterEntity OPERATION_LIB_TO_HASS: Final[dict[HotWaterOperation, str]] = {