1 """Coordinator for UpCloud."""
3 from __future__
import annotations
5 from datetime
import timedelta
15 _LOGGER = logging.getLogger(__name__)
19 DataUpdateCoordinator[dict[str, upcloud_api.Server]]
21 """UpCloud data update coordinator."""
27 cloud_manager: upcloud_api.CloudManager,
28 update_interval: timedelta,
31 """Initialize coordinator."""
33 hass, _LOGGER, name=f
"{username}@UpCloud", update_interval=update_interval
38 """Handle config update."""
40 seconds=config_entry.options[CONF_SCAN_INTERVAL]
46 for x
in await self.
hasshass.async_add_executor_job(
dict[str, upcloud_api.Server] _async_update_data(self)
None __init__(self, HomeAssistant hass, *upcloud_api.CloudManager cloud_manager, timedelta update_interval, str username)
None async_update_config(self, ConfigEntry config_entry)
None update_interval(self, timedelta|None value)
timedelta|None update_interval(self)