mirror of
https://github.com/home-assistant/core.git
synced 2025-07-12 15:57:06 +00:00
Explicitly pass in the config_entry in jvc_projector coordinator (#138127)
explicitly pass in the config_entry in coordinator
This commit is contained in:
parent
b9828c5edd
commit
ca77b94565
@ -4,7 +4,6 @@ from __future__ import annotations
|
|||||||
|
|
||||||
from jvcprojector import JvcProjector, JvcProjectorAuthError, JvcProjectorConnectError
|
from jvcprojector import JvcProjector, JvcProjectorAuthError, JvcProjectorConnectError
|
||||||
|
|
||||||
from homeassistant.config_entries import ConfigEntry
|
|
||||||
from homeassistant.const import (
|
from homeassistant.const import (
|
||||||
CONF_HOST,
|
CONF_HOST,
|
||||||
CONF_PASSWORD,
|
CONF_PASSWORD,
|
||||||
@ -15,9 +14,7 @@ from homeassistant.const import (
|
|||||||
from homeassistant.core import Event, HomeAssistant
|
from homeassistant.core import Event, HomeAssistant
|
||||||
from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady
|
from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady
|
||||||
|
|
||||||
from .coordinator import JvcProjectorDataUpdateCoordinator
|
from .coordinator import JVCConfigEntry, JvcProjectorDataUpdateCoordinator
|
||||||
|
|
||||||
type JVCConfigEntry = ConfigEntry[JvcProjectorDataUpdateCoordinator]
|
|
||||||
|
|
||||||
PLATFORMS = [Platform.BINARY_SENSOR, Platform.REMOTE, Platform.SELECT, Platform.SENSOR]
|
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()
|
await device.disconnect()
|
||||||
raise ConfigEntryAuthFailed("Password authentication failed") from err
|
raise ConfigEntryAuthFailed("Password authentication failed") from err
|
||||||
|
|
||||||
coordinator = JvcProjectorDataUpdateCoordinator(hass, device)
|
coordinator = JvcProjectorDataUpdateCoordinator(hass, entry, device)
|
||||||
await coordinator.async_config_entry_first_refresh()
|
await coordinator.async_config_entry_first_refresh()
|
||||||
|
|
||||||
entry.runtime_data = coordinator
|
entry.runtime_data = coordinator
|
||||||
|
@ -8,7 +8,7 @@ from homeassistant.components.binary_sensor import BinarySensorEntity
|
|||||||
from homeassistant.core import HomeAssistant
|
from homeassistant.core import HomeAssistant
|
||||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
|
||||||
from . import JVCConfigEntry, JvcProjectorDataUpdateCoordinator
|
from .coordinator import JVCConfigEntry, JvcProjectorDataUpdateCoordinator
|
||||||
from .entity import JvcProjectorEntity
|
from .entity import JvcProjectorEntity
|
||||||
|
|
||||||
ON_STATUS = (const.ON, const.WARMING)
|
ON_STATUS = (const.ON, const.WARMING)
|
||||||
|
@ -13,6 +13,7 @@ from jvcprojector import (
|
|||||||
const,
|
const,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
from homeassistant.config_entries import ConfigEntry
|
||||||
from homeassistant.core import HomeAssistant
|
from homeassistant.core import HomeAssistant
|
||||||
from homeassistant.exceptions import ConfigEntryAuthFailed
|
from homeassistant.exceptions import ConfigEntryAuthFailed
|
||||||
from homeassistant.helpers.device_registry import format_mac
|
from homeassistant.helpers.device_registry import format_mac
|
||||||
@ -25,15 +26,22 @@ _LOGGER = logging.getLogger(__name__)
|
|||||||
INTERVAL_SLOW = timedelta(seconds=10)
|
INTERVAL_SLOW = timedelta(seconds=10)
|
||||||
INTERVAL_FAST = timedelta(seconds=5)
|
INTERVAL_FAST = timedelta(seconds=5)
|
||||||
|
|
||||||
|
type JVCConfigEntry = ConfigEntry[JvcProjectorDataUpdateCoordinator]
|
||||||
|
|
||||||
|
|
||||||
class JvcProjectorDataUpdateCoordinator(DataUpdateCoordinator[dict[str, str]]):
|
class JvcProjectorDataUpdateCoordinator(DataUpdateCoordinator[dict[str, str]]):
|
||||||
"""Data update coordinator for the JVC Projector integration."""
|
"""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."""
|
"""Initialize the coordinator."""
|
||||||
super().__init__(
|
super().__init__(
|
||||||
hass=hass,
|
hass=hass,
|
||||||
logger=_LOGGER,
|
logger=_LOGGER,
|
||||||
|
config_entry=config_entry,
|
||||||
name=NAME,
|
name=NAME,
|
||||||
update_interval=INTERVAL_SLOW,
|
update_interval=INTERVAL_SLOW,
|
||||||
)
|
)
|
||||||
|
@ -14,7 +14,7 @@ from homeassistant.core import HomeAssistant
|
|||||||
from homeassistant.exceptions import HomeAssistantError
|
from homeassistant.exceptions import HomeAssistantError
|
||||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
|
||||||
from . import JVCConfigEntry
|
from .coordinator import JVCConfigEntry
|
||||||
from .entity import JvcProjectorEntity
|
from .entity import JvcProjectorEntity
|
||||||
|
|
||||||
COMMANDS = {
|
COMMANDS = {
|
||||||
|
@ -12,7 +12,7 @@ from homeassistant.components.select import SelectEntity, SelectEntityDescriptio
|
|||||||
from homeassistant.core import HomeAssistant
|
from homeassistant.core import HomeAssistant
|
||||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
|
||||||
from . import JVCConfigEntry, JvcProjectorDataUpdateCoordinator
|
from .coordinator import JVCConfigEntry, JvcProjectorDataUpdateCoordinator
|
||||||
from .entity import JvcProjectorEntity
|
from .entity import JvcProjectorEntity
|
||||||
|
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ from homeassistant.const import EntityCategory
|
|||||||
from homeassistant.core import HomeAssistant
|
from homeassistant.core import HomeAssistant
|
||||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
|
||||||
from . import JVCConfigEntry, JvcProjectorDataUpdateCoordinator
|
from .coordinator import JVCConfigEntry, JvcProjectorDataUpdateCoordinator
|
||||||
from .entity import JvcProjectorEntity
|
from .entity import JvcProjectorEntity
|
||||||
|
|
||||||
JVC_SENSORS = (
|
JVC_SENSORS = (
|
||||||
|
Loading…
x
Reference in New Issue
Block a user