* aemet: rename weather_update_coordinator Use "coordinator" instead, like other integrations. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * coverage: remove AEMET coordinator Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> --------- Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
23 lines
810 B
Python
23 lines
810 B
Python
"""Entity classes for the AEMET OpenData integration."""
|
|
from __future__ import annotations
|
|
|
|
from typing import Any
|
|
|
|
from aemet_opendata.helpers import dict_nested_value
|
|
|
|
from homeassistant.components.weather import Forecast
|
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity
|
|
|
|
from .coordinator import WeatherUpdateCoordinator
|
|
|
|
|
|
class AemetEntity(CoordinatorEntity[WeatherUpdateCoordinator]):
|
|
"""Define an AEMET entity."""
|
|
|
|
def get_aemet_forecast(self, forecast_mode: str) -> list[Forecast]:
|
|
"""Return AEMET entity forecast by mode."""
|
|
return self.coordinator.data["forecast"][forecast_mode]
|
|
|
|
def get_aemet_value(self, keys: list[str]) -> Any:
|
|
"""Return AEMET entity value by keys."""
|
|
return dict_nested_value(self.coordinator.data["lib"], keys)
|