Move list to dict in repetier discovery (#64001)

* Move list to dict in repetier discovery

* Add setup type hints to repetier
This commit is contained in:
epenet 2022-01-14 10:10:40 +01:00 committed by GitHub
parent 946238fb02
commit 65f21891db
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 4 deletions

View File

@ -315,4 +315,6 @@ class PrinterAPI:
if not sensor_info: if not sensor_info:
return return
load_platform(self._hass, "sensor", DOMAIN, sensor_info, self.config) load_platform(
self._hass, "sensor", DOMAIN, {"sensors": sensor_info}, self.config
)

View File

@ -1,18 +1,27 @@
"""Support for monitoring Repetier Server Sensors.""" """Support for monitoring Repetier Server Sensors."""
from __future__ import annotations
from datetime import datetime from datetime import datetime
import logging import logging
import time import time
from homeassistant.components.sensor import SensorDeviceClass, SensorEntity from homeassistant.components.sensor import SensorDeviceClass, SensorEntity
from homeassistant.core import callback from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import REPETIER_API, SENSOR_TYPES, UPDATE_SIGNAL, RepetierSensorEntityDescription from . import REPETIER_API, SENSOR_TYPES, UPDATE_SIGNAL, RepetierSensorEntityDescription
_LOGGER = logging.getLogger(__name__) _LOGGER = logging.getLogger(__name__)
def setup_platform(hass, config, add_entities, discovery_info=None): def setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the available Repetier Server sensors.""" """Set up the available Repetier Server sensors."""
if discovery_info is None: if discovery_info is None:
return return
@ -27,8 +36,9 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
"job_start": RepetierJobStartSensor, "job_start": RepetierJobStartSensor,
} }
sensors_info: list[dict] = discovery_info["sensors"]
entities = [] entities = []
for info in discovery_info: for info in sensors_info:
printer_name = info["printer_name"] printer_name = info["printer_name"]
api = hass.data[REPETIER_API][printer_name] api = hass.data[REPETIER_API][printer_name]
printer_id = info["printer_id"] printer_id = info["printer_id"]