Reduce config entry setup/unload boilerplate N-P (#49777)

This commit is contained in:
J. Nick Koston 2021-04-27 08:42:21 -10:00 committed by GitHub
parent 6df19205da
commit 3f3f77c6e6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
36 changed files with 90 additions and 389 deletions

View file

@ -1,7 +1,6 @@
"""The National Weather Service integration."""
from __future__ import annotations
import asyncio
from collections.abc import Awaitable
import datetime
import logging
@ -155,23 +154,14 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry):
await coordinator_forecast.async_refresh()
await coordinator_forecast_hourly.async_refresh()
for platform in PLATFORMS:
hass.async_create_task(
hass.config_entries.async_forward_entry_setup(entry, platform)
)
hass.config_entries.async_setup_platforms(entry, PLATFORMS)
return True
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry):
"""Unload a config entry."""
unload_ok = all(
await asyncio.gather(
*[
hass.config_entries.async_forward_entry_unload(entry, platform)
for platform in PLATFORMS
]
)
)
unload_ok = await hass.config_entries.async_unload_platforms(entry, PLATFORMS)
if unload_ok:
hass.data[DOMAIN].pop(entry.entry_id)
if len(hass.data[DOMAIN]) == 0: