From 94805a90ebc153a62efb017080d5511401ab2f71 Mon Sep 17 00:00:00 2001 From: Bouwe Westerdijk Date: Sat, 21 Sep 2024 09:22:42 +0200 Subject: [PATCH] Improve, cleanup --- custom_components/plugwise/coordinator.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/custom_components/plugwise/coordinator.py b/custom_components/plugwise/coordinator.py index f72e8e00d..c40a8f8db 100644 --- a/custom_components/plugwise/coordinator.py +++ b/custom_components/plugwise/coordinator.py @@ -135,21 +135,18 @@ def _async_remove_devices(self, data: PlugwiseData, entry: ConfigEntry) -> None: device_list = dr.async_entries_for_config_entry( device_reg, self.config_entry.entry_id ) - # via_device cannot be None, this will result in the deletion - # of other Plugwise Gateways when present! - via_device: str = "" # First find the Plugwise via_device - via_device_device = device_reg.async_get_device(identifiers={(DOMAIN, data.gateway[GATEWAY_ID])}) - if via_device_device is not None: - via_device = via_device_device.id + gateway_device = device_reg.async_get_device({(DOMAIN, data.gateway[GATEWAY_ID])}) + if gateway_device is not None: + via_device_id = gateway_device.id # Then remove the connected orphaned device(s) for device_entry in device_list: for identifier in device_entry.identifiers: if identifier[0] == DOMAIN: if ( - device_entry.via_device_id == via_device + device_entry.via_device_id == via_device_id and identifier[1] not in data.devices ): device_reg.async_update_device(