Explicitly pass in the config_entry in modern_forms coordinator (#138085)

explicitly pass in the config_entry in coordinator
This commit is contained in:
Michael 2025-02-09 17:32:55 +01:00 committed by GitHub
parent 659032c4d8
commit a60f30509a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 5 deletions

View File

@ -9,7 +9,7 @@ from typing import Any, Concatenate
from aiomodernforms import ModernFormsConnectionError, ModernFormsError from aiomodernforms import ModernFormsConnectionError, ModernFormsError
from homeassistant.config_entries import ConfigEntry from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_HOST, Platform from homeassistant.const import Platform
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from .const import DOMAIN from .const import DOMAIN
@ -30,7 +30,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Set up a Modern Forms device from a config entry.""" """Set up a Modern Forms device from a config entry."""
# Create Modern Forms instance for this entry # Create Modern Forms instance for this entry
coordinator = ModernFormsDataUpdateCoordinator(hass, host=entry.data[CONF_HOST]) coordinator = ModernFormsDataUpdateCoordinator(hass, entry)
await coordinator.async_config_entry_first_refresh() await coordinator.async_config_entry_first_refresh()
hass.data.setdefault(DOMAIN, {}) hass.data.setdefault(DOMAIN, {})

View File

@ -8,6 +8,8 @@ import logging
from aiomodernforms import ModernFormsDevice, ModernFormsError from aiomodernforms import ModernFormsDevice, ModernFormsError
from aiomodernforms.models import Device as ModernFormsDeviceState from aiomodernforms.models import Device as ModernFormsDeviceState
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_HOST
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
@ -21,20 +23,22 @@ _LOGGER = logging.getLogger(__name__)
class ModernFormsDataUpdateCoordinator(DataUpdateCoordinator[ModernFormsDeviceState]): class ModernFormsDataUpdateCoordinator(DataUpdateCoordinator[ModernFormsDeviceState]):
"""Class to manage fetching Modern Forms data from single endpoint.""" """Class to manage fetching Modern Forms data from single endpoint."""
config_entry: ConfigEntry
def __init__( def __init__(
self, self,
hass: HomeAssistant, hass: HomeAssistant,
*, config_entry: ConfigEntry,
host: str,
) -> None: ) -> None:
"""Initialize global Modern Forms data updater.""" """Initialize global Modern Forms data updater."""
self.modern_forms = ModernFormsDevice( self.modern_forms = ModernFormsDevice(
host, session=async_get_clientsession(hass) config_entry.data[CONF_HOST], session=async_get_clientsession(hass)
) )
super().__init__( super().__init__(
hass, hass,
_LOGGER, _LOGGER,
config_entry=config_entry,
name=DOMAIN, name=DOMAIN,
update_interval=SCAN_INTERVAL, update_interval=SCAN_INTERVAL,
) )