mirror of
https://github.com/home-assistant/core.git
synced 2025-07-22 20:57:21 +00:00
Refactor eheimdigital setup_device_entities (#138837)
This commit is contained in:
parent
af0a862aab
commit
600bfed704
@ -40,12 +40,10 @@ async def async_setup_entry(
|
|||||||
coordinator = entry.runtime_data
|
coordinator = entry.runtime_data
|
||||||
|
|
||||||
def async_setup_device_entities(
|
def async_setup_device_entities(
|
||||||
device_address: str | dict[str, EheimDigitalDevice],
|
device_address: dict[str, EheimDigitalDevice],
|
||||||
) -> None:
|
) -> None:
|
||||||
"""Set up the climate entities for one or multiple devices."""
|
"""Set up the climate entities for one or multiple devices."""
|
||||||
entities: list[EheimDigitalHeaterClimate] = []
|
entities: list[EheimDigitalHeaterClimate] = []
|
||||||
if isinstance(device_address, str):
|
|
||||||
device_address = {device_address: coordinator.hub.devices[device_address]}
|
|
||||||
for device in device_address.values():
|
for device in device_address.values():
|
||||||
if isinstance(device, EheimDigitalHeater):
|
if isinstance(device, EheimDigitalHeater):
|
||||||
entities.append(EheimDigitalHeaterClimate(coordinator, device))
|
entities.append(EheimDigitalHeaterClimate(coordinator, device))
|
||||||
|
@ -20,9 +20,7 @@ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, Upda
|
|||||||
|
|
||||||
from .const import DOMAIN, LOGGER
|
from .const import DOMAIN, LOGGER
|
||||||
|
|
||||||
type AsyncSetupDeviceEntitiesCallback = Callable[
|
type AsyncSetupDeviceEntitiesCallback = Callable[[dict[str, EheimDigitalDevice]], None]
|
||||||
[str | dict[str, EheimDigitalDevice]], None
|
|
||||||
]
|
|
||||||
|
|
||||||
type EheimDigitalConfigEntry = ConfigEntry[EheimDigitalUpdateCoordinator]
|
type EheimDigitalConfigEntry = ConfigEntry[EheimDigitalUpdateCoordinator]
|
||||||
|
|
||||||
@ -74,7 +72,7 @@ class EheimDigitalUpdateCoordinator(
|
|||||||
|
|
||||||
if device_address not in self.known_devices:
|
if device_address not in self.known_devices:
|
||||||
for platform_callback in self.platform_callbacks:
|
for platform_callback in self.platform_callbacks:
|
||||||
platform_callback(device_address)
|
platform_callback({device_address: self.hub.devices[device_address]})
|
||||||
|
|
||||||
async def _async_receive_callback(self) -> None:
|
async def _async_receive_callback(self) -> None:
|
||||||
self.async_set_updated_data(self.hub.devices)
|
self.async_set_updated_data(self.hub.devices)
|
||||||
|
@ -38,12 +38,10 @@ async def async_setup_entry(
|
|||||||
coordinator = entry.runtime_data
|
coordinator = entry.runtime_data
|
||||||
|
|
||||||
def async_setup_device_entities(
|
def async_setup_device_entities(
|
||||||
device_address: str | dict[str, EheimDigitalDevice],
|
device_address: dict[str, EheimDigitalDevice],
|
||||||
) -> None:
|
) -> None:
|
||||||
"""Set up the light entities for one or multiple devices."""
|
"""Set up the light entities for one or multiple devices."""
|
||||||
entities: list[EheimDigitalClassicLEDControlLight] = []
|
entities: list[EheimDigitalClassicLEDControlLight] = []
|
||||||
if isinstance(device_address, str):
|
|
||||||
device_address = {device_address: coordinator.hub.devices[device_address]}
|
|
||||||
for device in device_address.values():
|
for device in device_address.values():
|
||||||
if isinstance(device, EheimDigitalClassicLEDControl):
|
if isinstance(device, EheimDigitalClassicLEDControl):
|
||||||
for channel in range(2):
|
for channel in range(2):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user