Home Assistant Unofficial Reference 2024.12.1
__init__.py
Go to the documentation of this file.
1 """Ask tankerkoenig.de for petrol price information."""
2 
3 from __future__ import annotations
4 
5 from homeassistant.const import Platform
6 from homeassistant.core import HomeAssistant
7 
8 from .const import DEFAULT_SCAN_INTERVAL, DOMAIN
9 from .coordinator import TankerkoenigConfigEntry, TankerkoenigDataUpdateCoordinator
10 
11 PLATFORMS = [Platform.BINARY_SENSOR, Platform.SENSOR]
12 
13 
15  hass: HomeAssistant, entry: TankerkoenigConfigEntry
16 ) -> bool:
17  """Set a tankerkoenig configuration entry up."""
18  hass.data.setdefault(DOMAIN, {})
19 
21  hass,
22  name=entry.unique_id or DOMAIN,
23  update_interval=DEFAULT_SCAN_INTERVAL,
24  )
25  await coordinator.async_setup()
26  await coordinator.async_config_entry_first_refresh()
27 
28  entry.runtime_data = coordinator
29 
30  entry.async_on_unload(entry.add_update_listener(_async_update_listener))
31 
32  await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
33 
34  return True
35 
36 
38  hass: HomeAssistant, entry: TankerkoenigConfigEntry
39 ) -> bool:
40  """Unload Tankerkoenig config entry."""
41  return await hass.config_entries.async_unload_platforms(entry, PLATFORMS)
42 
43 
45  hass: HomeAssistant, entry: TankerkoenigConfigEntry
46 ) -> None:
47  """Handle options update."""
48  await hass.config_entries.async_reload(entry.entry_id)
None _async_update_listener(HomeAssistant hass, TankerkoenigConfigEntry entry)
Definition: __init__.py:46
bool async_unload_entry(HomeAssistant hass, TankerkoenigConfigEntry entry)
Definition: __init__.py:39
bool async_setup_entry(HomeAssistant hass, TankerkoenigConfigEntry entry)
Definition: __init__.py:16