Improve Plugwise runtime-updating (#120230)

This commit is contained in:
Bouwe Westerdijk 2024-06-24 09:57:04 +02:00 committed by GitHub
parent ab9cbf64da
commit 213cb6f0fd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 41 additions and 73 deletions

View file

@ -68,22 +68,16 @@ async def async_setup_entry(
if not coordinator.new_devices:
return
entities: list[PlugwiseSwitchEntity] = []
for device_id, device in coordinator.data.devices.items():
if not (switches := device.get("switches")):
continue
for description in SWITCHES:
if description.key not in switches:
continue
entities.append(
PlugwiseSwitchEntity(coordinator, device_id, description)
)
async_add_entities(entities)
entry.async_on_unload(coordinator.async_add_listener(_add_entities))
async_add_entities(
PlugwiseSwitchEntity(coordinator, device_id, description)
for device_id in coordinator.new_devices
if (switches := coordinator.data.devices[device_id].get("switches"))
for description in SWITCHES
if description.key in switches
)
_add_entities()
entry.async_on_unload(coordinator.async_add_listener(_add_entities))
class PlugwiseSwitchEntity(PlugwiseEntity, SwitchEntity):