Skip to content

Commit

Permalink
Explicitly pass in the config_entry in knocki coordinator (home-assis…
Browse files Browse the repository at this point in the history
…tant#138125)

explicitly pass in the config_entry in coordinator
  • Loading branch information
mib1185 authored Feb 9, 2025
1 parent b6afe13 commit db56052
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 6 deletions.
7 changes: 2 additions & 5 deletions homeassistant/components/knocki/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,22 @@

from knocki import Event, EventType, KnockiClient

from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_TOKEN, Platform
from homeassistant.core import HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession

from .coordinator import KnockiCoordinator
from .coordinator import KnockiConfigEntry, KnockiCoordinator

PLATFORMS: list[Platform] = [Platform.EVENT]

type KnockiConfigEntry = ConfigEntry[KnockiCoordinator]


async def async_setup_entry(hass: HomeAssistant, entry: KnockiConfigEntry) -> bool:
"""Set up Knocki from a config entry."""
client = KnockiClient(
session=async_get_clientsession(hass), token=entry.data[CONF_TOKEN]
)

coordinator = KnockiCoordinator(hass, client)
coordinator = KnockiCoordinator(hass, entry, client)

await coordinator.async_config_entry_first_refresh()

Expand Down
10 changes: 9 additions & 1 deletion homeassistant/components/knocki/coordinator.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,29 @@
from knocki import Event, KnockiClient, KnockiConnectionError, Trigger

from homeassistant.components.event import DOMAIN as EVENT_DOMAIN
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers import entity_registry as er
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed

from .const import DOMAIN, LOGGER

type KnockiConfigEntry = ConfigEntry[KnockiCoordinator]


class KnockiCoordinator(DataUpdateCoordinator[dict[int, Trigger]]):
"""The Knocki coordinator."""

def __init__(self, hass: HomeAssistant, client: KnockiClient) -> None:
config_entry: KnockiConfigEntry

def __init__(
self, hass: HomeAssistant, config_entry: KnockiConfigEntry, client: KnockiClient
) -> None:
"""Initialize the coordinator."""
super().__init__(
hass,
logger=LOGGER,
config_entry=config_entry,
name=DOMAIN,
)
self.client = client
Expand Down

0 comments on commit db56052

Please sign in to comment.