This commit is contained in:
epenet
2023-04-20 09:58:21 +00:00
parent ab6032d254
commit 718fc4fc48

View File

@@ -16,7 +16,7 @@ from .heartbeat import BroadlinkHeartbeat
class BroadlinkData: class BroadlinkData:
"""Class for sharing data within the Broadlink integration.""" """Class for sharing data within the Broadlink integration."""
devices: dict = field(default_factory=dict) devices: dict[str, BroadlinkDevice] = field(default_factory=dict)
platforms: dict = field(default_factory=dict) platforms: dict = field(default_factory=dict)
heartbeat: BroadlinkHeartbeat | None = None heartbeat: BroadlinkHeartbeat | None = None
@@ -29,7 +29,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Set up a Broadlink device from a config entry.""" """Set up a Broadlink device from a config entry."""
data = hass.data[DOMAIN] data: BroadlinkData = hass.data[DOMAIN]
if data.heartbeat is None: if data.heartbeat is None:
data.heartbeat = BroadlinkHeartbeat(hass) data.heartbeat = BroadlinkHeartbeat(hass)
@@ -41,12 +41,12 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Unload a config entry.""" """Unload a config entry."""
data = hass.data[DOMAIN] data: BroadlinkData = hass.data[DOMAIN]
device = data.devices.pop(entry.entry_id) device = data.devices.pop(entry.entry_id)
result = await device.async_unload() result = await device.async_unload()
if not data.devices: if data.heartbeat and not data.devices:
await data.heartbeat.async_unload() await data.heartbeat.async_unload()
data.heartbeat = None data.heartbeat = None