Use generator expression in poolsense (#117582)
This commit is contained in:
parent
10dfa91e54
commit
c38539b368
4 changed files with 20 additions and 22 deletions
|
@ -7,7 +7,6 @@ from homeassistant.components.binary_sensor import (
|
|||
BinarySensorEntity,
|
||||
BinarySensorEntityDescription,
|
||||
)
|
||||
from homeassistant.const import CONF_EMAIL
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||
|
||||
|
@ -36,12 +35,10 @@ async def async_setup_entry(
|
|||
"""Defer sensor setup to the shared sensor module."""
|
||||
coordinator = config_entry.runtime_data
|
||||
|
||||
entities = [
|
||||
PoolSenseBinarySensor(coordinator, config_entry.data[CONF_EMAIL], description)
|
||||
async_add_entities(
|
||||
PoolSenseBinarySensor(coordinator, description)
|
||||
for description in BINARY_SENSOR_TYPES
|
||||
]
|
||||
|
||||
async_add_entities(entities, False)
|
||||
)
|
||||
|
||||
|
||||
class PoolSenseBinarySensor(PoolSenseEntity, BinarySensorEntity):
|
||||
|
|
|
@ -1,28 +1,38 @@
|
|||
"""DataUpdateCoordinator for poolsense integration."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import asyncio
|
||||
from datetime import timedelta
|
||||
import logging
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from poolsense import PoolSense
|
||||
from poolsense.exceptions import PoolSenseError
|
||||
|
||||
from homeassistant.const import CONF_EMAIL
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.typing import StateType
|
||||
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
|
||||
|
||||
from .const import DOMAIN
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from . import PoolSenseConfigEntry
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class PoolSenseDataUpdateCoordinator(DataUpdateCoordinator[dict[str, StateType]]):
|
||||
"""Define an object to hold PoolSense data."""
|
||||
|
||||
config_entry: PoolSenseConfigEntry
|
||||
|
||||
def __init__(self, hass: HomeAssistant, poolsense: PoolSense) -> None:
|
||||
"""Initialize."""
|
||||
super().__init__(hass, _LOGGER, name=DOMAIN, update_interval=timedelta(hours=1))
|
||||
self.poolsense = poolsense
|
||||
self.email = self.config_entry.data[CONF_EMAIL]
|
||||
|
||||
async def _async_update_data(self) -> dict[str, StateType]:
|
||||
"""Update data via library."""
|
||||
|
|
|
@ -17,14 +17,13 @@ class PoolSenseEntity(CoordinatorEntity[PoolSenseDataUpdateCoordinator]):
|
|||
def __init__(
|
||||
self,
|
||||
coordinator: PoolSenseDataUpdateCoordinator,
|
||||
email: str,
|
||||
description: EntityDescription,
|
||||
) -> None:
|
||||
"""Initialize poolsense sensor."""
|
||||
"""Initialize poolsense entity."""
|
||||
super().__init__(coordinator)
|
||||
self.entity_description = description
|
||||
self._attr_unique_id = f"{email}-{description.key}"
|
||||
self._attr_unique_id = f"{coordinator.email}-{description.key}"
|
||||
self._attr_device_info = DeviceInfo(
|
||||
identifiers={(DOMAIN, email)},
|
||||
identifiers={(DOMAIN, coordinator.email)},
|
||||
model="PoolSense",
|
||||
)
|
||||
|
|
|
@ -7,12 +7,7 @@ from homeassistant.components.sensor import (
|
|||
SensorEntity,
|
||||
SensorEntityDescription,
|
||||
)
|
||||
from homeassistant.const import (
|
||||
CONF_EMAIL,
|
||||
PERCENTAGE,
|
||||
UnitOfElectricPotential,
|
||||
UnitOfTemperature,
|
||||
)
|
||||
from homeassistant.const import PERCENTAGE, UnitOfElectricPotential, UnitOfTemperature
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||
from homeassistant.helpers.typing import StateType
|
||||
|
@ -75,12 +70,9 @@ async def async_setup_entry(
|
|||
"""Defer sensor setup to the shared sensor module."""
|
||||
coordinator = config_entry.runtime_data
|
||||
|
||||
entities = [
|
||||
PoolSenseSensor(coordinator, config_entry.data[CONF_EMAIL], description)
|
||||
for description in SENSOR_TYPES
|
||||
]
|
||||
|
||||
async_add_entities(entities, False)
|
||||
async_add_entities(
|
||||
PoolSenseSensor(coordinator, description) for description in SENSOR_TYPES
|
||||
)
|
||||
|
||||
|
||||
class PoolSenseSensor(PoolSenseEntity, SensorEntity):
|
||||
|
|
Loading…
Add table
Reference in a new issue