From 04c20b9534256f9bf398040e531b808313c30597 Mon Sep 17 00:00:00 2001 From: Michael <35783820+mib1185@users.noreply.github.com> Date: Sat, 8 Feb 2025 15:33:52 +0100 Subject: [PATCH] Explicitly pass in the config_entry in fyta coordinator (#137828) explicitly pass in the config_entry in coordinator --- homeassistant/components/fyta/__init__.py | 6 ++---- homeassistant/components/fyta/binary_sensor.py | 2 +- homeassistant/components/fyta/coordinator.py | 12 +++++++----- homeassistant/components/fyta/diagnostics.py | 2 +- homeassistant/components/fyta/entity.py | 3 +-- homeassistant/components/fyta/image.py | 3 +-- homeassistant/components/fyta/sensor.py | 3 +-- 7 files changed, 14 insertions(+), 17 deletions(-) diff --git a/homeassistant/components/fyta/__init__.py b/homeassistant/components/fyta/__init__.py index ab4a74c627a..1b00afc9c80 100644 --- a/homeassistant/components/fyta/__init__.py +++ b/homeassistant/components/fyta/__init__.py @@ -7,7 +7,6 @@ import logging from fyta_cli.fyta_connector import FytaConnector -from homeassistant.config_entries import ConfigEntry from homeassistant.const import ( CONF_ACCESS_TOKEN, CONF_PASSWORD, @@ -19,7 +18,7 @@ from homeassistant.helpers.aiohttp_client import async_get_clientsession from homeassistant.util.dt import async_get_time_zone from .const import CONF_EXPIRATION -from .coordinator import FytaCoordinator +from .coordinator import FytaConfigEntry, FytaCoordinator _LOGGER = logging.getLogger(__name__) @@ -28,7 +27,6 @@ PLATFORMS = [ Platform.IMAGE, Platform.SENSOR, ] -type FytaConfigEntry = ConfigEntry[FytaCoordinator] async def async_setup_entry(hass: HomeAssistant, entry: FytaConfigEntry) -> bool: @@ -46,7 +44,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: FytaConfigEntry) -> bool username, password, access_token, expiration, tz, async_get_clientsession(hass) ) - coordinator = FytaCoordinator(hass, fyta) + coordinator = FytaCoordinator(hass, entry, fyta) await coordinator.async_config_entry_first_refresh() diff --git a/homeassistant/components/fyta/binary_sensor.py b/homeassistant/components/fyta/binary_sensor.py index bcef609d01a..66e5b2feeca 100644 --- a/homeassistant/components/fyta/binary_sensor.py +++ b/homeassistant/components/fyta/binary_sensor.py @@ -17,7 +17,7 @@ from homeassistant.const import EntityCategory from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import FytaConfigEntry +from .coordinator import FytaConfigEntry from .entity import FytaPlantEntity diff --git a/homeassistant/components/fyta/coordinator.py b/homeassistant/components/fyta/coordinator.py index a0c42d449d5..012ed3b2af0 100644 --- a/homeassistant/components/fyta/coordinator.py +++ b/homeassistant/components/fyta/coordinator.py @@ -5,7 +5,6 @@ from __future__ import annotations from collections.abc import Callable from datetime import datetime, timedelta import logging -from typing import TYPE_CHECKING from fyta_cli.fyta_connector import FytaConnector from fyta_cli.fyta_exceptions import ( @@ -16,6 +15,7 @@ from fyta_cli.fyta_exceptions import ( ) from fyta_cli.fyta_models import Plant +from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_ACCESS_TOKEN from homeassistant.core import HomeAssistant from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady @@ -24,22 +24,24 @@ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, Upda from .const import CONF_EXPIRATION, DOMAIN -if TYPE_CHECKING: - from . import FytaConfigEntry - _LOGGER = logging.getLogger(__name__) +type FytaConfigEntry = ConfigEntry[FytaCoordinator] + class FytaCoordinator(DataUpdateCoordinator[dict[int, Plant]]): """Fyta custom coordinator.""" config_entry: FytaConfigEntry - def __init__(self, hass: HomeAssistant, fyta: FytaConnector) -> None: + def __init__( + self, hass: HomeAssistant, config_entry: FytaConfigEntry, fyta: FytaConnector + ) -> None: """Initialize my coordinator.""" super().__init__( hass, _LOGGER, + config_entry=config_entry, name="FYTA Coordinator", update_interval=timedelta(minutes=4), ) diff --git a/homeassistant/components/fyta/diagnostics.py b/homeassistant/components/fyta/diagnostics.py index d02f8cacfa3..d6bda70d754 100644 --- a/homeassistant/components/fyta/diagnostics.py +++ b/homeassistant/components/fyta/diagnostics.py @@ -8,7 +8,7 @@ from homeassistant.components.diagnostics import async_redact_data from homeassistant.const import CONF_ACCESS_TOKEN, CONF_PASSWORD, CONF_USERNAME from homeassistant.core import HomeAssistant -from . import FytaConfigEntry +from .coordinator import FytaConfigEntry TO_REDACT = [ CONF_PASSWORD, diff --git a/homeassistant/components/fyta/entity.py b/homeassistant/components/fyta/entity.py index 0d0ec533c44..02cd73c54f9 100644 --- a/homeassistant/components/fyta/entity.py +++ b/homeassistant/components/fyta/entity.py @@ -6,9 +6,8 @@ from homeassistant.helpers.device_registry import DeviceInfo from homeassistant.helpers.entity import EntityDescription from homeassistant.helpers.update_coordinator import CoordinatorEntity -from . import FytaConfigEntry from .const import DOMAIN -from .coordinator import FytaCoordinator +from .coordinator import FytaConfigEntry, FytaCoordinator class FytaPlantEntity(CoordinatorEntity[FytaCoordinator]): diff --git a/homeassistant/components/fyta/image.py b/homeassistant/components/fyta/image.py index f03df969dcc..4a0b32f605b 100644 --- a/homeassistant/components/fyta/image.py +++ b/homeassistant/components/fyta/image.py @@ -9,8 +9,7 @@ from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import FytaConfigEntry -from .coordinator import FytaCoordinator +from .coordinator import FytaConfigEntry, FytaCoordinator from .entity import FytaPlantEntity diff --git a/homeassistant/components/fyta/sensor.py b/homeassistant/components/fyta/sensor.py index 254e4522819..66c96ab697b 100644 --- a/homeassistant/components/fyta/sensor.py +++ b/homeassistant/components/fyta/sensor.py @@ -25,8 +25,7 @@ from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.typing import StateType -from . import FytaConfigEntry -from .coordinator import FytaCoordinator +from .coordinator import FytaConfigEntry, FytaCoordinator from .entity import FytaPlantEntity