diff --git a/homeassistant/components/jvc_projector/__init__.py b/homeassistant/components/jvc_projector/__init__.py index 09e93127e40..ad7e333ca13 100644 --- a/homeassistant/components/jvc_projector/__init__.py +++ b/homeassistant/components/jvc_projector/__init__.py @@ -4,7 +4,6 @@ from __future__ import annotations from jvcprojector import JvcProjector, JvcProjectorAuthError, JvcProjectorConnectError -from homeassistant.config_entries import ConfigEntry from homeassistant.const import ( CONF_HOST, CONF_PASSWORD, @@ -15,9 +14,7 @@ from homeassistant.const import ( from homeassistant.core import Event, HomeAssistant from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady -from .coordinator import JvcProjectorDataUpdateCoordinator - -type JVCConfigEntry = ConfigEntry[JvcProjectorDataUpdateCoordinator] +from .coordinator import JVCConfigEntry, JvcProjectorDataUpdateCoordinator PLATFORMS = [Platform.BINARY_SENSOR, Platform.REMOTE, Platform.SELECT, Platform.SENSOR] @@ -41,7 +38,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: JVCConfigEntry) -> bool: await device.disconnect() raise ConfigEntryAuthFailed("Password authentication failed") from err - coordinator = JvcProjectorDataUpdateCoordinator(hass, device) + coordinator = JvcProjectorDataUpdateCoordinator(hass, entry, device) await coordinator.async_config_entry_first_refresh() entry.runtime_data = coordinator diff --git a/homeassistant/components/jvc_projector/binary_sensor.py b/homeassistant/components/jvc_projector/binary_sensor.py index 6dfac63892b..0e1d8ce00a3 100644 --- a/homeassistant/components/jvc_projector/binary_sensor.py +++ b/homeassistant/components/jvc_projector/binary_sensor.py @@ -8,7 +8,7 @@ from homeassistant.components.binary_sensor import BinarySensorEntity from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import JVCConfigEntry, JvcProjectorDataUpdateCoordinator +from .coordinator import JVCConfigEntry, JvcProjectorDataUpdateCoordinator from .entity import JvcProjectorEntity ON_STATUS = (const.ON, const.WARMING) diff --git a/homeassistant/components/jvc_projector/coordinator.py b/homeassistant/components/jvc_projector/coordinator.py index a2ecfa8eb52..db97b05f980 100644 --- a/homeassistant/components/jvc_projector/coordinator.py +++ b/homeassistant/components/jvc_projector/coordinator.py @@ -13,6 +13,7 @@ from jvcprojector import ( const, ) +from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.exceptions import ConfigEntryAuthFailed from homeassistant.helpers.device_registry import format_mac @@ -25,15 +26,22 @@ _LOGGER = logging.getLogger(__name__) INTERVAL_SLOW = timedelta(seconds=10) INTERVAL_FAST = timedelta(seconds=5) +type JVCConfigEntry = ConfigEntry[JvcProjectorDataUpdateCoordinator] + class JvcProjectorDataUpdateCoordinator(DataUpdateCoordinator[dict[str, str]]): """Data update coordinator for the JVC Projector integration.""" - def __init__(self, hass: HomeAssistant, device: JvcProjector) -> None: + config_entry: JVCConfigEntry + + def __init__( + self, hass: HomeAssistant, config_entry: JVCConfigEntry, device: JvcProjector + ) -> None: """Initialize the coordinator.""" super().__init__( hass=hass, logger=_LOGGER, + config_entry=config_entry, name=NAME, update_interval=INTERVAL_SLOW, ) diff --git a/homeassistant/components/jvc_projector/remote.py b/homeassistant/components/jvc_projector/remote.py index f90a2816363..bbee5ca11f6 100644 --- a/homeassistant/components/jvc_projector/remote.py +++ b/homeassistant/components/jvc_projector/remote.py @@ -14,7 +14,7 @@ from homeassistant.core import HomeAssistant from homeassistant.exceptions import HomeAssistantError from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import JVCConfigEntry +from .coordinator import JVCConfigEntry from .entity import JvcProjectorEntity COMMANDS = { diff --git a/homeassistant/components/jvc_projector/select.py b/homeassistant/components/jvc_projector/select.py index 60c80f98fc0..4b2cea3c3a0 100644 --- a/homeassistant/components/jvc_projector/select.py +++ b/homeassistant/components/jvc_projector/select.py @@ -12,7 +12,7 @@ from homeassistant.components.select import SelectEntity, SelectEntityDescriptio from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import JVCConfigEntry, JvcProjectorDataUpdateCoordinator +from .coordinator import JVCConfigEntry, JvcProjectorDataUpdateCoordinator from .entity import JvcProjectorEntity diff --git a/homeassistant/components/jvc_projector/sensor.py b/homeassistant/components/jvc_projector/sensor.py index 3edf51e4316..5854e60c97a 100644 --- a/homeassistant/components/jvc_projector/sensor.py +++ b/homeassistant/components/jvc_projector/sensor.py @@ -13,7 +13,7 @@ from homeassistant.const import EntityCategory from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback -from . import JVCConfigEntry, JvcProjectorDataUpdateCoordinator +from .coordinator import JVCConfigEntry, JvcProjectorDataUpdateCoordinator from .entity import JvcProjectorEntity JVC_SENSORS = (