Adjust shutdown registration in EntityComponent (#90938)

* Adjust shutdown registration in EntityComponent

* Adjust

* Make it more explicit

* docstring
This commit is contained in:
epenet 2023-04-13 08:47:04 +02:00 committed by GitHub
parent 6dbe67e909
commit 4a0988eb5d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 1 deletions

View file

@ -109,6 +109,14 @@ class EntityComponent(Generic[_EntityT]):
return entity_obj # type: ignore[return-value]
return None
def register_shutdown(self) -> None:
"""Register shutdown on Home Assistant STOP event.
Note: this is only required if the integration never calls
`setup` or `async_setup`.
"""
self.hass.bus.async_listen_once(EVENT_HOMEASSISTANT_STOP, self._async_shutdown)
def setup(self, config: ConfigType) -> None:
"""Set up a full entity component.
@ -126,7 +134,7 @@ class EntityComponent(Generic[_EntityT]):
This method must be run in the event loop.
"""
self.hass.bus.async_listen_once(EVENT_HOMEASSISTANT_STOP, self._async_shutdown)
self.register_shutdown()
self.config = config