* Move ProxmoxEntity to entity.py * Update homeassistant/components/proxmoxve/entity.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/proxmoxve/entity.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/proxmoxve/entity.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/proxmoxve/entity.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/proxmoxve/binary_sensor.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> --------- Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
39 lines
1 KiB
Python
39 lines
1 KiB
Python
"""Proxmox parent entity class."""
|
|
|
|
from homeassistant.helpers.update_coordinator import (
|
|
CoordinatorEntity,
|
|
DataUpdateCoordinator,
|
|
)
|
|
|
|
|
|
class ProxmoxEntity(CoordinatorEntity):
|
|
"""Represents any entity created for the Proxmox VE platform."""
|
|
|
|
def __init__(
|
|
self,
|
|
coordinator: DataUpdateCoordinator,
|
|
unique_id: str,
|
|
name: str,
|
|
icon: str,
|
|
host_name: str,
|
|
node_name: str,
|
|
vm_id: int | None = None,
|
|
) -> None:
|
|
"""Initialize the Proxmox entity."""
|
|
super().__init__(coordinator)
|
|
|
|
self.coordinator = coordinator
|
|
self._attr_unique_id = unique_id
|
|
self._attr_name = name
|
|
self._host_name = host_name
|
|
self._attr_icon = icon
|
|
self._available = True
|
|
self._node_name = node_name
|
|
self._vm_id = vm_id
|
|
|
|
self._state = None
|
|
|
|
@property
|
|
def available(self) -> bool:
|
|
"""Return True if entity is available."""
|
|
return self.coordinator.last_update_success and self._available
|