From 59a26010ba1cea7e932f9eb9b43a00f3e7130d39 Mon Sep 17 00:00:00 2001 From: Jan Bouwhuis Date: Tue, 26 Sep 2023 23:03:11 +0200 Subject: [PATCH] Cleanup redundant mqtt entity constructors (#100939) * Remove redundant mqtt entity constructors * Remove unrelated change * Follow up comment * Revert changes to mqtt update platform --------- Co-authored-by: J. Nick Koston --- .../components/mqtt/alarm_control_panel.py | 10 ----- .../components/mqtt/binary_sensor.py | 15 +------ homeassistant/components/mqtt/button.py | 10 ----- homeassistant/components/mqtt/camera.py | 3 +- homeassistant/components/mqtt/climate.py | 39 ++++--------------- .../components/mqtt/device_tracker.py | 12 +----- homeassistant/components/mqtt/event.py | 10 ----- homeassistant/components/mqtt/fan.py | 16 ++------ homeassistant/components/mqtt/humidifier.py | 13 +------ homeassistant/components/mqtt/lawn_mower.py | 11 ------ .../components/mqtt/light/schema_basic.py | 10 ----- .../components/mqtt/light/schema_json.py | 12 +----- .../components/mqtt/light/schema_template.py | 10 ----- homeassistant/components/mqtt/lock.py | 10 ----- homeassistant/components/mqtt/number.py | 11 ------ homeassistant/components/mqtt/scene.py | 10 ----- homeassistant/components/mqtt/select.py | 13 +------ homeassistant/components/mqtt/sensor.py | 12 +----- homeassistant/components/mqtt/siren.py | 10 ----- homeassistant/components/mqtt/switch.py | 11 ------ homeassistant/components/mqtt/text.py | 12 +----- .../components/mqtt/vacuum/schema_legacy.py | 30 ++++---------- homeassistant/components/mqtt/water_heater.py | 12 ------ 23 files changed, 27 insertions(+), 275 deletions(-) diff --git a/homeassistant/components/mqtt/alarm_control_panel.py b/homeassistant/components/mqtt/alarm_control_panel.py index 2bfaa7d1913..3600d9663dd 100644 --- a/homeassistant/components/mqtt/alarm_control_panel.py +++ b/homeassistant/components/mqtt/alarm_control_panel.py @@ -158,16 +158,6 @@ class MqttAlarm(MqttEntity, alarm.AlarmControlPanelEntity): _entity_id_format = alarm.ENTITY_ID_FORMAT _attributes_extra_blocked = MQTT_ALARM_ATTRIBUTES_BLOCKED - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Init the MQTT Alarm Control Panel.""" - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/binary_sensor.py b/homeassistant/components/mqtt/binary_sensor.py index 505305cad3e..c0f4cc7786e 100644 --- a/homeassistant/components/mqtt/binary_sensor.py +++ b/homeassistant/components/mqtt/binary_sensor.py @@ -98,22 +98,11 @@ class MqttBinarySensor(MqttEntity, BinarySensorEntity, RestoreEntity): """Representation a binary sensor that is updated by MQTT.""" _default_name = DEFAULT_NAME + _delay_listener: CALLBACK_TYPE | None = None _entity_id_format = binary_sensor.ENTITY_ID_FORMAT _expired: bool | None _expire_after: int | None - - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT binary sensor.""" - self._expiration_trigger: CALLBACK_TYPE | None = None - self._delay_listener: CALLBACK_TYPE | None = None - - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) + _expiration_trigger: CALLBACK_TYPE | None = None async def mqtt_async_added_to_hass(self) -> None: """Restore state for entities with expire_after set.""" diff --git a/homeassistant/components/mqtt/button.py b/homeassistant/components/mqtt/button.py index 9b3b04a54f5..47ac12386f7 100644 --- a/homeassistant/components/mqtt/button.py +++ b/homeassistant/components/mqtt/button.py @@ -73,16 +73,6 @@ class MqttButton(MqttEntity, ButtonEntity): _default_name = DEFAULT_NAME _entity_id_format = button.ENTITY_ID_FORMAT - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT button.""" - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/camera.py b/homeassistant/components/mqtt/camera.py index edddd0f2239..c8402e501b0 100644 --- a/homeassistant/components/mqtt/camera.py +++ b/homeassistant/components/mqtt/camera.py @@ -84,6 +84,7 @@ class MqttCamera(MqttEntity, Camera): _default_name = DEFAULT_NAME _entity_id_format: str = camera.ENTITY_ID_FORMAT _attributes_extra_blocked: frozenset[str] = MQTT_CAMERA_ATTRIBUTES_BLOCKED + _last_image: bytes | None = None def __init__( self, @@ -93,8 +94,6 @@ class MqttCamera(MqttEntity, Camera): discovery_data: DiscoveryInfoType | None, ) -> None: """Initialize the MQTT Camera.""" - self._last_image: bytes | None = None - Camera.__init__(self) MqttEntity.__init__(self, hass, config, config_entry, discovery_data) diff --git a/homeassistant/components/mqtt/climate.py b/homeassistant/components/mqtt/climate.py index dfd5d70dca6..77f28e1b5ca 100644 --- a/homeassistant/components/mqtt/climate.py +++ b/homeassistant/components/mqtt/climate.py @@ -424,28 +424,16 @@ class MqttTemperatureControlEntity(MqttEntity, ABC): climate and water_heater platforms. """ - _attr_target_temperature_low: float | None - _attr_target_temperature_high: float | None + _attr_target_temperature_low: float | None = None + _attr_target_temperature_high: float | None = None + _feature_preset_mode: bool = False _optimistic: bool _topic: dict[str, Any] _command_templates: dict[str, Callable[[PublishPayloadType], PublishPayloadType]] _value_templates: dict[str, Callable[[ReceivePayloadType], ReceivePayloadType]] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the temperature controlled device.""" - self._attr_target_temperature_low = None - self._attr_target_temperature_high = None - self._feature_preset_mode = False - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - def add_subscription( self, topics: dict[str, dict[str, Any]], @@ -619,27 +607,14 @@ class MqttTemperatureControlEntity(MqttEntity, ABC): class MqttClimate(MqttTemperatureControlEntity, ClimateEntity): """Representation of an MQTT climate device.""" + _attr_fan_mode: str | None = None + _attr_hvac_mode: HVACMode | None = None + _attr_is_aux_heat: bool | None = None + _attr_swing_mode: str | None = None _default_name = DEFAULT_NAME _entity_id_format = climate.ENTITY_ID_FORMAT _attributes_extra_blocked = MQTT_CLIMATE_ATTRIBUTES_BLOCKED - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the climate device.""" - self._attr_fan_mode = None - self._attr_hvac_action = None - self._attr_hvac_mode = None - self._attr_is_aux_heat = None - self._attr_swing_mode = None - MqttTemperatureControlEntity.__init__( - self, hass, config, config_entry, discovery_data - ) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/device_tracker.py b/homeassistant/components/mqtt/device_tracker.py index f99eab4d58f..2270f2b4031 100644 --- a/homeassistant/components/mqtt/device_tracker.py +++ b/homeassistant/components/mqtt/device_tracker.py @@ -107,19 +107,9 @@ class MqttDeviceTracker(MqttEntity, TrackerEntity): _default_name = None _entity_id_format = device_tracker.ENTITY_ID_FORMAT + _location_name: str | None = None _value_template: Callable[..., ReceivePayloadType] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the tracker.""" - self._location_name: str | None = None - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/event.py b/homeassistant/components/mqtt/event.py index 6fe39b5e899..c345655eea5 100644 --- a/homeassistant/components/mqtt/event.py +++ b/homeassistant/components/mqtt/event.py @@ -108,16 +108,6 @@ class MqttEvent(MqttEntity, EventEntity): _attributes_extra_blocked = MQTT_EVENT_ATTRIBUTES_BLOCKED _template: Callable[[ReceivePayloadType, PayloadSentinel], ReceivePayloadType] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the sensor.""" - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/fan.py b/homeassistant/components/mqtt/fan.py index 5375fa5afc2..0aad3a6afc0 100644 --- a/homeassistant/components/mqtt/fan.py +++ b/homeassistant/components/mqtt/fan.py @@ -220,6 +220,9 @@ async def _async_setup_entity( class MqttFan(MqttEntity, FanEntity): """A MQTT fan component.""" + _attr_percentage: int | None = None + _attr_preset_mode: str | None = None + _default_name = DEFAULT_NAME _entity_id_format = fan.ENTITY_ID_FORMAT _attributes_extra_blocked = MQTT_FAN_ATTRIBUTES_BLOCKED @@ -237,19 +240,6 @@ class MqttFan(MqttEntity, FanEntity): _payload: dict[str, Any] _speed_range: tuple[int, int] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT fan.""" - self._attr_percentage = None - self._attr_preset_mode = None - - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/humidifier.py b/homeassistant/components/mqtt/humidifier.py index 1742a768ffb..05929ee904a 100644 --- a/homeassistant/components/mqtt/humidifier.py +++ b/homeassistant/components/mqtt/humidifier.py @@ -212,6 +212,7 @@ async def _async_setup_entity( class MqttHumidifier(MqttEntity, HumidifierEntity): """A MQTT humidifier component.""" + _attr_mode: str | None = None _default_name = DEFAULT_NAME _entity_id_format = humidifier.ENTITY_ID_FORMAT _attributes_extra_blocked = MQTT_HUMIDIFIER_ATTRIBUTES_BLOCKED @@ -224,18 +225,6 @@ class MqttHumidifier(MqttEntity, HumidifierEntity): _payload: dict[str, str] _topic: dict[str, Any] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT humidifier.""" - self._attr_mode = None - - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/lawn_mower.py b/homeassistant/components/mqtt/lawn_mower.py index de2f7d47a46..68c7eda16ea 100644 --- a/homeassistant/components/mqtt/lawn_mower.py +++ b/homeassistant/components/mqtt/lawn_mower.py @@ -119,17 +119,6 @@ class MqttLawnMower(MqttEntity, LawnMowerEntity, RestoreEntity): _command_topics: dict[str, str] _value_template: Callable[[ReceivePayloadType], ReceivePayloadType] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT lawn mower.""" - LawnMowerEntity.__init__(self) - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/light/schema_basic.py b/homeassistant/components/mqtt/light/schema_basic.py index ab8d9921161..65c05501658 100644 --- a/homeassistant/components/mqtt/light/schema_basic.py +++ b/homeassistant/components/mqtt/light/schema_basic.py @@ -264,16 +264,6 @@ class MqttLight(MqttEntity, LightEntity, RestoreEntity): _optimistic_rgbww_color: bool _optimistic_xy_color: bool - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize MQTT light.""" - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/light/schema_json.py b/homeassistant/components/mqtt/light/schema_json.py index ee7e78b0028..462280b1516 100644 --- a/homeassistant/components/mqtt/light/schema_json.py +++ b/homeassistant/components/mqtt/light/schema_json.py @@ -184,21 +184,11 @@ class MqttLightJson(MqttEntity, LightEntity, RestoreEntity): _entity_id_format = ENTITY_ID_FORMAT _attributes_extra_blocked = MQTT_LIGHT_ATTRIBUTES_BLOCKED + _fixed_color_mode: ColorMode | str | None = None _flash_times: dict[str, int | None] _topic: dict[str, str | None] _optimistic: bool - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize MQTT JSON light.""" - self._fixed_color_mode: ColorMode | str | None = None - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/light/schema_template.py b/homeassistant/components/mqtt/light/schema_template.py index ecbcdcd18d7..a225ce43efa 100644 --- a/homeassistant/components/mqtt/light/schema_template.py +++ b/homeassistant/components/mqtt/light/schema_template.py @@ -138,16 +138,6 @@ class MqttLightTemplate(MqttEntity, LightEntity, RestoreEntity): _fixed_color_mode: ColorMode | str | None _topics: dict[str, str | None] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize a MQTT Template light.""" - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/lock.py b/homeassistant/components/mqtt/lock.py index cdaa00e3d63..b565e8a4b57 100644 --- a/homeassistant/components/mqtt/lock.py +++ b/homeassistant/components/mqtt/lock.py @@ -142,16 +142,6 @@ class MqttLock(MqttEntity, LockEntity): ] _value_template: Callable[[ReceivePayloadType], ReceivePayloadType] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the lock.""" - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/number.py b/homeassistant/components/mqtt/number.py index 5ca0340ec30..231da95ffb0 100644 --- a/homeassistant/components/mqtt/number.py +++ b/homeassistant/components/mqtt/number.py @@ -146,17 +146,6 @@ class MqttNumber(MqttEntity, RestoreNumber): _command_template: Callable[[PublishPayloadType], PublishPayloadType] _value_template: Callable[[ReceivePayloadType], ReceivePayloadType] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT Number.""" - RestoreNumber.__init__(self) - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/scene.py b/homeassistant/components/mqtt/scene.py index fd876976fe6..9e7c280cbc0 100644 --- a/homeassistant/components/mqtt/scene.py +++ b/homeassistant/components/mqtt/scene.py @@ -69,16 +69,6 @@ class MqttScene( _default_name = DEFAULT_NAME _entity_id_format = scene.DOMAIN + ".{}" - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT scene.""" - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/select.py b/homeassistant/components/mqtt/select.py index 7982e075567..03cd529fdd0 100644 --- a/homeassistant/components/mqtt/select.py +++ b/homeassistant/components/mqtt/select.py @@ -93,6 +93,7 @@ async def _async_setup_entity( class MqttSelect(MqttEntity, SelectEntity, RestoreEntity): """representation of an MQTT select.""" + _attr_current_option: str | None = None _default_name = DEFAULT_NAME _entity_id_format = select.ENTITY_ID_FORMAT _attributes_extra_blocked = MQTT_SELECT_ATTRIBUTES_BLOCKED @@ -100,18 +101,6 @@ class MqttSelect(MqttEntity, SelectEntity, RestoreEntity): _value_template: Callable[[ReceivePayloadType], ReceivePayloadType] _optimistic: bool = False - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT select.""" - self._attr_current_option = None - SelectEntity.__init__(self) - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/sensor.py b/homeassistant/components/mqtt/sensor.py index 278e70a9737..05db22a8e62 100644 --- a/homeassistant/components/mqtt/sensor.py +++ b/homeassistant/components/mqtt/sensor.py @@ -130,22 +130,12 @@ class MqttSensor(MqttEntity, RestoreSensor): _entity_id_format = ENTITY_ID_FORMAT _attr_last_reset: datetime | None = None _attributes_extra_blocked = MQTT_SENSOR_ATTRIBUTES_BLOCKED + _expiration_trigger: CALLBACK_TYPE | None = None _expire_after: int | None _expired: bool | None _template: Callable[[ReceivePayloadType, PayloadSentinel], ReceivePayloadType] _last_reset_template: Callable[[ReceivePayloadType], ReceivePayloadType] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the sensor.""" - self._expiration_trigger: CALLBACK_TYPE | None = None - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - async def mqtt_async_added_to_hass(self) -> None: """Restore state for entities with expire_after set.""" last_state: State | None diff --git a/homeassistant/components/mqtt/siren.py b/homeassistant/components/mqtt/siren.py index 77880c9a9ed..7978776a089 100644 --- a/homeassistant/components/mqtt/siren.py +++ b/homeassistant/components/mqtt/siren.py @@ -155,16 +155,6 @@ class MqttSiren(MqttEntity, SirenEntity): _state_off: str _optimistic: bool - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT siren.""" - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/switch.py b/homeassistant/components/mqtt/switch.py index 125998e5955..d4e8f2609d9 100644 --- a/homeassistant/components/mqtt/switch.py +++ b/homeassistant/components/mqtt/switch.py @@ -100,17 +100,6 @@ class MqttSwitch(MqttEntity, SwitchEntity, RestoreEntity): _state_off: str _value_template: Callable[[ReceivePayloadType], ReceivePayloadType] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the MQTT switch.""" - - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/text.py b/homeassistant/components/mqtt/text.py index e6755c653f3..630951f171e 100644 --- a/homeassistant/components/mqtt/text.py +++ b/homeassistant/components/mqtt/text.py @@ -128,6 +128,7 @@ async def _async_setup_entity( class MqttTextEntity(MqttEntity, TextEntity): """Representation of the MQTT text entity.""" + _attr_native_value: str | None = None _attributes_extra_blocked = MQTT_TEXT_ATTRIBUTES_BLOCKED _default_name = DEFAULT_NAME _entity_id_format = text.ENTITY_ID_FORMAT @@ -137,17 +138,6 @@ class MqttTextEntity(MqttEntity, TextEntity): _command_template: Callable[[PublishPayloadType], PublishPayloadType] _value_template: Callable[[ReceivePayloadType], ReceivePayloadType] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None = None, - ) -> None: - """Initialize MQTT text entity.""" - self._attr_native_value = None - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/vacuum/schema_legacy.py b/homeassistant/components/mqtt/vacuum/schema_legacy.py index 478a91baaba..aee71cc6690 100644 --- a/homeassistant/components/mqtt/vacuum/schema_legacy.py +++ b/homeassistant/components/mqtt/vacuum/schema_legacy.py @@ -215,12 +215,17 @@ async def async_setup_entity_legacy( class MqttVacuum(MqttEntity, VacuumEntity): """Representation of a MQTT-controlled legacy vacuum.""" + _attr_battery_level = 0 + _attr_is_on = False + _attributes_extra_blocked = MQTT_LEGACY_VACUUM_ATTRIBUTES_BLOCKED + _charging: bool = False + _cleaning: bool = False + _command_topic: str | None + _docked: bool = False _default_name = DEFAULT_NAME _entity_id_format = ENTITY_ID_FORMAT - _attributes_extra_blocked = MQTT_LEGACY_VACUUM_ATTRIBUTES_BLOCKED - - _command_topic: str | None _encoding: str | None + _error: str | None = None _qos: bool _retain: bool _payloads: dict[str, str] @@ -231,25 +236,6 @@ class MqttVacuum(MqttEntity, VacuumEntity): str, Callable[[ReceivePayloadType, PayloadSentinel], ReceivePayloadType] ] - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the vacuum.""" - self._attr_battery_level = 0 - self._attr_is_on = False - self._attr_fan_speed = "unknown" - - self._charging = False - self._cleaning = False - self._docked = False - self._error: str | None = None - - MqttEntity.__init__(self, hass, config, config_entry, discovery_data) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema.""" diff --git a/homeassistant/components/mqtt/water_heater.py b/homeassistant/components/mqtt/water_heater.py index f35e7f8b0ea..9a9326d6d07 100644 --- a/homeassistant/components/mqtt/water_heater.py +++ b/homeassistant/components/mqtt/water_heater.py @@ -194,18 +194,6 @@ class MqttWaterHeater(MqttTemperatureControlEntity, WaterHeaterEntity): _entity_id_format = water_heater.ENTITY_ID_FORMAT _attributes_extra_blocked = MQTT_WATER_HEATER_ATTRIBUTES_BLOCKED - def __init__( - self, - hass: HomeAssistant, - config: ConfigType, - config_entry: ConfigEntry, - discovery_data: DiscoveryInfoType | None, - ) -> None: - """Initialize the water heater device.""" - MqttTemperatureControlEntity.__init__( - self, hass, config, config_entry, discovery_data - ) - @staticmethod def config_schema() -> vol.Schema: """Return the config schema."""