diff --git a/homeassistant/components/cert_expiry/__init__.py b/homeassistant/components/cert_expiry/__init__.py index bc6ae29ee8e..adf1e0e981c 100644 --- a/homeassistant/components/cert_expiry/__init__.py +++ b/homeassistant/components/cert_expiry/__init__.py @@ -2,24 +2,21 @@ from __future__ import annotations -from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_HOST, CONF_PORT, Platform from homeassistant.core import HomeAssistant from homeassistant.helpers.start import async_at_started -from .coordinator import CertExpiryDataUpdateCoordinator +from .coordinator import CertExpiryConfigEntry, CertExpiryDataUpdateCoordinator PLATFORMS = [Platform.SENSOR] -type CertExpiryConfigEntry = ConfigEntry[CertExpiryDataUpdateCoordinator] - async def async_setup_entry(hass: HomeAssistant, entry: CertExpiryConfigEntry) -> bool: """Load the saved entities.""" host: str = entry.data[CONF_HOST] port: int = entry.data[CONF_PORT] - coordinator = CertExpiryDataUpdateCoordinator(hass, host, port) + coordinator = CertExpiryDataUpdateCoordinator(hass, entry, host, port) entry.runtime_data = coordinator @@ -34,6 +31,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: CertExpiryConfigEntry) - return True -async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: +async def async_unload_entry(hass: HomeAssistant, entry: CertExpiryConfigEntry) -> bool: """Unload a config entry.""" return await hass.config_entries.async_unload_platforms(entry, PLATFORMS) diff --git a/homeassistant/components/cert_expiry/coordinator.py b/homeassistant/components/cert_expiry/coordinator.py index 80c91f1d890..644e3ee3d00 100644 --- a/homeassistant/components/cert_expiry/coordinator.py +++ b/homeassistant/components/cert_expiry/coordinator.py @@ -5,6 +5,7 @@ from __future__ import annotations from datetime import datetime, timedelta import logging +from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed @@ -14,11 +15,21 @@ from .helper import get_cert_expiry_timestamp _LOGGER = logging.getLogger(__name__) +type CertExpiryConfigEntry = ConfigEntry[CertExpiryDataUpdateCoordinator] + class CertExpiryDataUpdateCoordinator(DataUpdateCoordinator[datetime | None]): """Class to manage fetching Cert Expiry data from single endpoint.""" - def __init__(self, hass: HomeAssistant, host: str, port: int) -> None: + config_entry: CertExpiryConfigEntry + + def __init__( + self, + hass: HomeAssistant, + config_entry: CertExpiryConfigEntry, + host: str, + port: int, + ) -> None: """Initialize global Cert Expiry data updater.""" self.host = host self.port = port @@ -31,6 +42,7 @@ class CertExpiryDataUpdateCoordinator(DataUpdateCoordinator[datetime | None]): super().__init__( hass, _LOGGER, + config_entry=config_entry, name=name, update_interval=timedelta(hours=12), always_update=False, diff --git a/homeassistant/components/cert_expiry/sensor.py b/homeassistant/components/cert_expiry/sensor.py index 4fd0846f0f3..a875e664fdd 100644 --- a/homeassistant/components/cert_expiry/sensor.py +++ b/homeassistant/components/cert_expiry/sensor.py @@ -9,9 +9,8 @@ from homeassistant.core import HomeAssistant from homeassistant.helpers.device_registry import DeviceEntryType, DeviceInfo from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import CertExpiryConfigEntry from .const import DOMAIN -from .coordinator import CertExpiryDataUpdateCoordinator +from .coordinator import CertExpiryConfigEntry, CertExpiryDataUpdateCoordinator from .entity import CertExpiryEntity