Remove HassJob wrapping from the DataUpdateCoordinator (#113192)

This commit is contained in:
J. Nick Koston 2024-03-13 03:46:45 -10:00 committed by GitHub
parent f3984a9d3e
commit 0ccd813a99
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -18,14 +18,7 @@ from typing_extensions import TypeVar
from homeassistant import config_entries from homeassistant import config_entries
from homeassistant.const import EVENT_HOMEASSISTANT_STOP from homeassistant.const import EVENT_HOMEASSISTANT_STOP
from homeassistant.core import ( from homeassistant.core import CALLBACK_TYPE, Event, HomeAssistant, callback
CALLBACK_TYPE,
Event,
HassJob,
HassJobType,
HomeAssistant,
callback,
)
from homeassistant.exceptions import ( from homeassistant.exceptions import (
ConfigEntryAuthFailed, ConfigEntryAuthFailed,
ConfigEntryError, ConfigEntryError,
@ -108,18 +101,6 @@ class DataUpdateCoordinator(BaseDataUpdateCoordinatorProtocol, Generic[_DataT]):
) )
self._listeners: dict[CALLBACK_TYPE, tuple[CALLBACK_TYPE, object | None]] = {} self._listeners: dict[CALLBACK_TYPE, tuple[CALLBACK_TYPE, object | None]] = {}
job_name = "DataUpdateCoordinator"
type_name = type(self).__name__
if type_name != job_name:
job_name += f" {type_name}"
job_name += f" {name}"
if entry := self.config_entry:
job_name += f" {entry.title} {entry.domain} {entry.entry_id}"
self._job = HassJob(
self.__wrap_handle_refresh_interval,
job_name,
job_type=HassJobType.Callback,
)
self._unsub_refresh: CALLBACK_TYPE | None = None self._unsub_refresh: CALLBACK_TYPE | None = None
self._unsub_shutdown: CALLBACK_TYPE | None = None self._unsub_shutdown: CALLBACK_TYPE | None = None
self._request_refresh_task: asyncio.TimerHandle | None = None self._request_refresh_task: asyncio.TimerHandle | None = None
@ -251,7 +232,7 @@ class DataUpdateCoordinator(BaseDataUpdateCoordinatorProtocol, Generic[_DataT]):
int(loop.time()) + self._microsecond + self._update_interval_seconds int(loop.time()) + self._microsecond + self._update_interval_seconds
) )
self._unsub_refresh = loop.call_at( self._unsub_refresh = loop.call_at(
next_refresh, hass.async_run_hass_job, self._job next_refresh, self.__wrap_handle_refresh_interval
).cancel ).cancel
@callback @callback