Explicitly pass in the config_entry in Proximity coordinator init (#136775)

This commit is contained in:
Michael 2025-01-29 01:19:16 +01:00 committed by GitHub
parent 01b278c547
commit e07e8b8706
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 13 additions and 14 deletions

View File

@ -4,7 +4,6 @@ from __future__ import annotations
import logging
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant
from homeassistant.helpers.event import (
@ -22,7 +21,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ProximityConfigEntry) ->
"""Set up Proximity from a config entry."""
_LOGGER.debug("setup %s with config:%s", entry.title, entry.data)
coordinator = ProximityDataUpdateCoordinator(hass, entry.title, dict(entry.data))
coordinator = ProximityDataUpdateCoordinator(hass, entry)
entry.async_on_unload(
async_track_state_change_event(
@ -48,11 +47,13 @@ async def async_setup_entry(hass: HomeAssistant, entry: ProximityConfigEntry) ->
return True
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
async def async_unload_entry(hass: HomeAssistant, entry: ProximityConfigEntry) -> bool:
"""Unload a config entry."""
return await hass.config_entries.async_unload_platforms(entry, [Platform.SENSOR])
async def _async_update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None:
async def _async_update_listener(
hass: HomeAssistant, entry: ProximityConfigEntry
) -> None:
"""Handle options update."""
await hass.config_entries.async_reload(entry.entry_id)

View File

@ -23,7 +23,6 @@ from homeassistant.core import (
)
from homeassistant.helpers import entity_registry as er
from homeassistant.helpers.issue_registry import IssueSeverity, async_create_issue
from homeassistant.helpers.typing import ConfigType
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator
from homeassistant.util.location import distance
@ -75,16 +74,14 @@ class ProximityDataUpdateCoordinator(DataUpdateCoordinator[ProximityData]):
config_entry: ProximityConfigEntry
def __init__(
self, hass: HomeAssistant, friendly_name: str, config: ConfigType
) -> None:
def __init__(self, hass: HomeAssistant, config_entry: ProximityConfigEntry) -> None:
"""Initialize the Proximity coordinator."""
self.ignored_zone_ids: list[str] = config[CONF_IGNORED_ZONES]
self.tracked_entities: list[str] = config[CONF_TRACKED_ENTITIES]
self.tolerance: int = config[CONF_TOLERANCE]
self.proximity_zone_id: str = config[CONF_ZONE]
self.ignored_zone_ids: list[str] = config_entry.data[CONF_IGNORED_ZONES]
self.tracked_entities: list[str] = config_entry.data[CONF_TRACKED_ENTITIES]
self.tolerance: int = config_entry.data[CONF_TOLERANCE]
self.proximity_zone_id: str = config_entry.data[CONF_ZONE]
self.proximity_zone_name: str = self.proximity_zone_id.split(".")[-1]
self.unit_of_measurement: str = config.get(
self.unit_of_measurement: str = config_entry.data.get(
CONF_UNIT_OF_MEASUREMENT, hass.config.units.length_unit
)
self.entity_mapping: dict[str, list[str]] = defaultdict(list)
@ -92,7 +89,8 @@ class ProximityDataUpdateCoordinator(DataUpdateCoordinator[ProximityData]):
super().__init__(
hass,
_LOGGER,
name=friendly_name,
config_entry=config_entry,
name=config_entry.title,
update_interval=None,
)