Explicitly pass in the config_entry in pure_energie coordinator (#138035)

explicitly pass in the config_entry in coordinator
This commit is contained in:
Michael 2025-02-09 15:02:18 +01:00 committed by GitHub
parent 7e2eef7079
commit 15b8687c53
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 13 additions and 9 deletions

View File

@ -2,22 +2,19 @@
from __future__ import annotations from __future__ import annotations
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import Platform from homeassistant.const import Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.exceptions import ConfigEntryNotReady from homeassistant.exceptions import ConfigEntryNotReady
from .coordinator import PureEnergieDataUpdateCoordinator from .coordinator import PureEnergieConfigEntry, PureEnergieDataUpdateCoordinator
PLATFORMS: list[Platform] = [Platform.SENSOR] PLATFORMS: list[Platform] = [Platform.SENSOR]
type PureEnergieConfigEntry = ConfigEntry[PureEnergieDataUpdateCoordinator]
async def async_setup_entry(hass: HomeAssistant, entry: PureEnergieConfigEntry) -> bool: async def async_setup_entry(hass: HomeAssistant, entry: PureEnergieConfigEntry) -> bool:
"""Set up Pure Energie from a config entry.""" """Set up Pure Energie from a config entry."""
coordinator = PureEnergieDataUpdateCoordinator(hass) coordinator = PureEnergieDataUpdateCoordinator(hass, entry)
try: try:
await coordinator.async_config_entry_first_refresh() await coordinator.async_config_entry_first_refresh()
except ConfigEntryNotReady: except ConfigEntryNotReady:

View File

@ -14,6 +14,8 @@ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator
from .const import DOMAIN, LOGGER, SCAN_INTERVAL from .const import DOMAIN, LOGGER, SCAN_INTERVAL
type PureEnergieConfigEntry = ConfigEntry[PureEnergieDataUpdateCoordinator]
class PureEnergieData(NamedTuple): class PureEnergieData(NamedTuple):
"""Class for defining data in dict.""" """Class for defining data in dict."""
@ -25,16 +27,18 @@ class PureEnergieData(NamedTuple):
class PureEnergieDataUpdateCoordinator(DataUpdateCoordinator[PureEnergieData]): class PureEnergieDataUpdateCoordinator(DataUpdateCoordinator[PureEnergieData]):
"""Class to manage fetching Pure Energie data from single eindpoint.""" """Class to manage fetching Pure Energie data from single eindpoint."""
config_entry: ConfigEntry config_entry: PureEnergieConfigEntry
def __init__( def __init__(
self, self,
hass: HomeAssistant, hass: HomeAssistant,
config_entry: PureEnergieConfigEntry,
) -> None: ) -> None:
"""Initialize global Pure Energie data updater.""" """Initialize global Pure Energie data updater."""
super().__init__( super().__init__(
hass, hass,
LOGGER, LOGGER,
config_entry=config_entry,
name=DOMAIN, name=DOMAIN,
update_interval=SCAN_INTERVAL, update_interval=SCAN_INTERVAL,
) )

View File

@ -9,7 +9,7 @@ from homeassistant.components.diagnostics import async_redact_data
from homeassistant.const import CONF_HOST from homeassistant.const import CONF_HOST
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from . import PureEnergieConfigEntry from .coordinator import PureEnergieConfigEntry
TO_REDACT = { TO_REDACT = {
CONF_HOST, CONF_HOST,

View File

@ -18,9 +18,12 @@ from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.update_coordinator import CoordinatorEntity from homeassistant.helpers.update_coordinator import CoordinatorEntity
from . import PureEnergieConfigEntry
from .const import DOMAIN from .const import DOMAIN
from .coordinator import PureEnergieData, PureEnergieDataUpdateCoordinator from .coordinator import (
PureEnergieConfigEntry,
PureEnergieData,
PureEnergieDataUpdateCoordinator,
)
@dataclass(frozen=True, kw_only=True) @dataclass(frozen=True, kw_only=True)