From 242bbaeff9a68d79a00e1c24b17cf9bd2e1764e0 Mon Sep 17 00:00:00 2001 From: Michael <35783820+mib1185@users.noreply.github.com> Date: Sun, 9 Feb 2025 14:48:15 +0100 Subject: [PATCH] Explicitly pass in the config_entry in technove coordinator (#137910) explicitly pass in the config_entry in coordinator --- homeassistant/components/technove/__init__.py | 7 ++----- homeassistant/components/technove/binary_sensor.py | 3 +-- homeassistant/components/technove/coordinator.py | 13 +++++++------ homeassistant/components/technove/diagnostics.py | 2 +- homeassistant/components/technove/number.py | 3 +-- homeassistant/components/technove/sensor.py | 3 +-- homeassistant/components/technove/switch.py | 3 +-- 7 files changed, 14 insertions(+), 20 deletions(-) diff --git a/homeassistant/components/technove/__init__.py b/homeassistant/components/technove/__init__.py index b886dabc80c..df4fc7713aa 100644 --- a/homeassistant/components/technove/__init__.py +++ b/homeassistant/components/technove/__init__.py @@ -2,16 +2,13 @@ from __future__ import annotations -from homeassistant.config_entries import ConfigEntry from homeassistant.const import Platform from homeassistant.core import HomeAssistant -from .coordinator import TechnoVEDataUpdateCoordinator +from .coordinator import TechnoVEConfigEntry, TechnoVEDataUpdateCoordinator PLATFORMS = [Platform.BINARY_SENSOR, Platform.NUMBER, Platform.SENSOR, Platform.SWITCH] -TechnoVEConfigEntry = ConfigEntry[TechnoVEDataUpdateCoordinator] - async def async_setup_entry(hass: HomeAssistant, entry: TechnoVEConfigEntry) -> bool: """Set up TechnoVE from a config entry.""" @@ -25,6 +22,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: TechnoVEConfigEntry) -> return True -async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: +async def async_unload_entry(hass: HomeAssistant, entry: TechnoVEConfigEntry) -> bool: """Unload a config entry.""" return await hass.config_entries.async_unload_platforms(entry, PLATFORMS) diff --git a/homeassistant/components/technove/binary_sensor.py b/homeassistant/components/technove/binary_sensor.py index f231e206c96..4c0e1111e9a 100644 --- a/homeassistant/components/technove/binary_sensor.py +++ b/homeassistant/components/technove/binary_sensor.py @@ -16,8 +16,7 @@ from homeassistant.const import EntityCategory from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import TechnoVEConfigEntry -from .coordinator import TechnoVEDataUpdateCoordinator +from .coordinator import TechnoVEConfigEntry, TechnoVEDataUpdateCoordinator from .entity import TechnoVEEntity diff --git a/homeassistant/components/technove/coordinator.py b/homeassistant/components/technove/coordinator.py index 8527c6e543a..53108463301 100644 --- a/homeassistant/components/technove/coordinator.py +++ b/homeassistant/components/technove/coordinator.py @@ -2,10 +2,9 @@ from __future__ import annotations -from typing import TYPE_CHECKING - from technove import Station as TechnoVEStation, TechnoVE, TechnoVEError +from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_HOST from homeassistant.core import HomeAssistant from homeassistant.helpers.aiohttp_client import async_get_clientsession @@ -13,22 +12,24 @@ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, Upda from .const import DOMAIN, LOGGER, SCAN_INTERVAL -if TYPE_CHECKING: - from . import TechnoVEConfigEntry +type TechnoVEConfigEntry = ConfigEntry[TechnoVEDataUpdateCoordinator] class TechnoVEDataUpdateCoordinator(DataUpdateCoordinator[TechnoVEStation]): """Class to manage fetching TechnoVE data from single endpoint.""" - def __init__(self, hass: HomeAssistant, entry: TechnoVEConfigEntry) -> None: + config_entry: TechnoVEConfigEntry + + def __init__(self, hass: HomeAssistant, config_entry: TechnoVEConfigEntry) -> None: """Initialize global TechnoVE data updater.""" self.technove = TechnoVE( - entry.data[CONF_HOST], + config_entry.data[CONF_HOST], session=async_get_clientsession(hass), ) super().__init__( hass, LOGGER, + config_entry=config_entry, name=DOMAIN, update_interval=SCAN_INTERVAL, ) diff --git a/homeassistant/components/technove/diagnostics.py b/homeassistant/components/technove/diagnostics.py index f070d58ab6f..7ac0f6f44fd 100644 --- a/homeassistant/components/technove/diagnostics.py +++ b/homeassistant/components/technove/diagnostics.py @@ -8,7 +8,7 @@ from typing import Any from homeassistant.components.diagnostics import async_redact_data from homeassistant.core import HomeAssistant -from . import TechnoVEConfigEntry +from .coordinator import TechnoVEConfigEntry TO_REDACT = {"unique_id", "mac_address"} diff --git a/homeassistant/components/technove/number.py b/homeassistant/components/technove/number.py index a1cf094c6bf..529ce407c79 100644 --- a/homeassistant/components/technove/number.py +++ b/homeassistant/components/technove/number.py @@ -19,9 +19,8 @@ from homeassistant.core import HomeAssistant from homeassistant.exceptions import ServiceValidationError from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import TechnoVEConfigEntry from .const import DOMAIN -from .coordinator import TechnoVEDataUpdateCoordinator +from .coordinator import TechnoVEConfigEntry, TechnoVEDataUpdateCoordinator from .entity import TechnoVEEntity from .helpers import technove_exception_handler diff --git a/homeassistant/components/technove/sensor.py b/homeassistant/components/technove/sensor.py index e16ac23f89c..ad80f5f419e 100644 --- a/homeassistant/components/technove/sensor.py +++ b/homeassistant/components/technove/sensor.py @@ -24,8 +24,7 @@ from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.typing import StateType -from . import TechnoVEConfigEntry -from .coordinator import TechnoVEDataUpdateCoordinator +from .coordinator import TechnoVEConfigEntry, TechnoVEDataUpdateCoordinator from .entity import TechnoVEEntity STATUS_TYPE = [s.value for s in Status if s != Status.UNKNOWN] diff --git a/homeassistant/components/technove/switch.py b/homeassistant/components/technove/switch.py index a8ad7581da5..943cd62f86e 100644 --- a/homeassistant/components/technove/switch.py +++ b/homeassistant/components/technove/switch.py @@ -14,9 +14,8 @@ from homeassistant.core import HomeAssistant from homeassistant.exceptions import ServiceValidationError from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import TechnoVEConfigEntry from .const import DOMAIN -from .coordinator import TechnoVEDataUpdateCoordinator +from .coordinator import TechnoVEConfigEntry, TechnoVEDataUpdateCoordinator from .entity import TechnoVEEntity from .helpers import technove_exception_handler