From 87a3f4bef07b64dcfbacdf3e6f25bc8f0ad4f3a9 Mon Sep 17 00:00:00 2001 From: Erik Montnemery Date: Tue, 25 Aug 2026 09:10:36 +0200 Subject: [PATCH] Use get_device_and_config_entry_for_domain in guardian (#180095) --- homeassistant/components/guardian/services.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/homeassistant/components/guardian/services.py b/homeassistant/components/guardian/services.py index 119a06e10646..76a4b30a4907 100644 --- a/homeassistant/components/guardian/services.py +++ b/homeassistant/components/guardian/services.py @@ -59,18 +59,17 @@ SERVICE_UPGRADE_FIRMWARE_SCHEMA = vol.Schema( def async_get_entry_id_for_service_call(call: ServiceCall) -> GuardianConfigEntry: """Get the entry ID related to a service call (by device ID).""" device_id = call.data[CONF_DEVICE_ID] - device_registry = dr.async_get(call.hass) - if (device_entry := device_registry.async_get(device_id)) is None: + device, config_entry = dr.async_get_device_and_config_entry_for_domain( + call.hass, device_id, domain=DOMAIN + ) + if device is None: raise ValueError(f"Invalid Guardian device ID: {device_id}") - for entry_id in device_entry.config_entries: - if (entry := call.hass.config_entries.async_get_entry(entry_id)) is None: - continue - if entry.domain == DOMAIN: - return entry + if config_entry is None: + raise ValueError(f"No config entry for device ID: {device_id}") - raise ValueError(f"No config entry for device ID: {device_id}") + return config_entry @callback