diff --git a/homeassistant/components/aemet/sensor.py b/homeassistant/components/aemet/sensor.py index de7b06347c3..3fd0769cb00 100644 --- a/homeassistant/components/aemet/sensor.py +++ b/homeassistant/components/aemet/sensor.py @@ -66,6 +66,8 @@ async def async_setup_entry(hass, config_entry, async_add_entities): class AbstractAemetSensor(CoordinatorEntity, SensorEntity): """Abstract class for an AEMET OpenData sensor.""" + _attr_extra_state_attributes = {ATTR_ATTRIBUTION: ATTRIBUTION} + def __init__( self, name, @@ -80,33 +82,10 @@ class AbstractAemetSensor(CoordinatorEntity, SensorEntity): self._unique_id = unique_id self._sensor_type = sensor_type self._sensor_name = sensor_configuration[SENSOR_NAME] - self._unit_of_measurement = sensor_configuration.get(SENSOR_UNIT) - self._device_class = sensor_configuration.get(SENSOR_DEVICE_CLASS) - - @property - def name(self): - """Return the name of the sensor.""" - return f"{self._name} {self._sensor_name}" - - @property - def unique_id(self): - """Return a unique_id for this entity.""" - return self._unique_id - - @property - def device_class(self): - """Return the device_class.""" - return self._device_class - - @property - def unit_of_measurement(self): - """Return the unit of measurement of this entity, if any.""" - return self._unit_of_measurement - - @property - def extra_state_attributes(self): - """Return the state attributes.""" - return {ATTR_ATTRIBUTION: ATTRIBUTION} + self._attr_name = f"{self._name} {self._sensor_name}" + self._attr_unique_id = self._unique_id + self._attr_device_class = sensor_configuration.get(SENSOR_DEVICE_CLASS) + self._attr_unit_of_measurement = sensor_configuration.get(SENSOR_UNIT) class AemetSensor(AbstractAemetSensor): @@ -150,11 +129,9 @@ class AemetForecastSensor(AbstractAemetSensor): ) self._weather_coordinator = weather_coordinator self._forecast_mode = forecast_mode - - @property - def entity_registry_enabled_default(self) -> bool: - """Return if the entity should be enabled when first added to the entity registry.""" - return self._forecast_mode == FORECAST_MODE_DAILY + self._attr_entity_registry_enabled_default = ( + self._forecast_mode == FORECAST_MODE_DAILY + ) @property def state(self): diff --git a/homeassistant/components/aemet/weather.py b/homeassistant/components/aemet/weather.py index e54a297cc09..07bb0bfba83 100644 --- a/homeassistant/components/aemet/weather.py +++ b/homeassistant/components/aemet/weather.py @@ -39,6 +39,9 @@ async def async_setup_entry(hass, config_entry, async_add_entities): class AemetWeather(CoordinatorEntity, WeatherEntity): """Implementation of an AEMET OpenData sensor.""" + _attr_attribution = ATTRIBUTION + _attr_temperature_unit = TEMP_CELSIUS + def __init__( self, name, @@ -48,25 +51,18 @@ class AemetWeather(CoordinatorEntity, WeatherEntity): ): """Initialize the sensor.""" super().__init__(coordinator) - self._name = name - self._unique_id = unique_id self._forecast_mode = forecast_mode - - @property - def attribution(self): - """Return the attribution.""" - return ATTRIBUTION + self._attr_entity_registry_enabled_default = ( + self._forecast_mode == FORECAST_MODE_DAILY + ) + self._attr_name = name + self._attr_unique_id = unique_id @property def condition(self): """Return the current condition.""" return self.coordinator.data[ATTR_API_CONDITION] - @property - def entity_registry_enabled_default(self) -> bool: - """Return if the entity should be enabled when first added to the entity registry.""" - return self._forecast_mode == FORECAST_MODE_DAILY - @property def forecast(self): """Return the forecast array.""" @@ -77,11 +73,6 @@ class AemetWeather(CoordinatorEntity, WeatherEntity): """Return the humidity.""" return self.coordinator.data[ATTR_API_HUMIDITY] - @property - def name(self): - """Return the name of the sensor.""" - return self._name - @property def pressure(self): """Return the pressure.""" @@ -92,16 +83,6 @@ class AemetWeather(CoordinatorEntity, WeatherEntity): """Return the temperature.""" return self.coordinator.data[ATTR_API_TEMPERATURE] - @property - def temperature_unit(self): - """Return the unit of measurement.""" - return TEMP_CELSIUS - - @property - def unique_id(self): - """Return a unique_id for this entity.""" - return self._unique_id - @property def wind_bearing(self): """Return the temperature."""