Alphabetize parts of device registry code (#57532)
This commit is contained in:
parent
c4f8c52df9
commit
bdbedd0f06
4 changed files with 66 additions and 66 deletions
|
@ -67,17 +67,17 @@ async def websocket_update_device(hass, connection, msg):
|
|||
def _entry_dict(entry):
|
||||
"""Convert entry to API format."""
|
||||
return {
|
||||
"area_id": entry.area_id,
|
||||
"config_entries": list(entry.config_entries),
|
||||
"connections": list(entry.connections),
|
||||
"manufacturer": entry.manufacturer,
|
||||
"model": entry.model,
|
||||
"name": entry.name,
|
||||
"sw_version": entry.sw_version,
|
||||
"disabled_by": entry.disabled_by,
|
||||
"entry_type": entry.entry_type,
|
||||
"id": entry.id,
|
||||
"identifiers": list(entry.identifiers),
|
||||
"via_device_id": entry.via_device_id,
|
||||
"area_id": entry.area_id,
|
||||
"manufacturer": entry.manufacturer,
|
||||
"model": entry.model,
|
||||
"name_by_user": entry.name_by_user,
|
||||
"disabled_by": entry.disabled_by,
|
||||
"name": entry.name,
|
||||
"sw_version": entry.sw_version,
|
||||
"via_device_id": entry.via_device_id,
|
||||
}
|
||||
|
|
|
@ -53,20 +53,9 @@ class _DeviceIndex(NamedTuple):
|
|||
class DeviceEntry:
|
||||
"""Device Registry Entry."""
|
||||
|
||||
area_id: str | None = attr.ib(default=None)
|
||||
config_entries: set[str] = attr.ib(converter=set, factory=set)
|
||||
connections: set[tuple[str, str]] = attr.ib(converter=set, factory=set)
|
||||
identifiers: set[tuple[str, str]] = attr.ib(converter=set, factory=set)
|
||||
manufacturer: str | None = attr.ib(default=None)
|
||||
model: str | None = attr.ib(default=None)
|
||||
name: str | None = attr.ib(default=None)
|
||||
sw_version: str | None = attr.ib(default=None)
|
||||
via_device_id: str | None = attr.ib(default=None)
|
||||
area_id: str | None = attr.ib(default=None)
|
||||
name_by_user: str | None = attr.ib(default=None)
|
||||
entry_type: str | None = attr.ib(default=None)
|
||||
id: str = attr.ib(factory=uuid_util.random_uuid_hex)
|
||||
# This value is not stored, just used to keep track of events to fire.
|
||||
is_new: bool = attr.ib(default=False)
|
||||
disabled_by: str | None = attr.ib(
|
||||
default=None,
|
||||
validator=attr.validators.in_(
|
||||
|
@ -78,7 +67,18 @@ class DeviceEntry:
|
|||
)
|
||||
),
|
||||
)
|
||||
entry_type: str | None = attr.ib(default=None)
|
||||
id: str = attr.ib(factory=uuid_util.random_uuid_hex)
|
||||
identifiers: set[tuple[str, str]] = attr.ib(converter=set, factory=set)
|
||||
manufacturer: str | None = attr.ib(default=None)
|
||||
model: str | None = attr.ib(default=None)
|
||||
name_by_user: str | None = attr.ib(default=None)
|
||||
name: str | None = attr.ib(default=None)
|
||||
suggested_area: str | None = attr.ib(default=None)
|
||||
sw_version: str | None = attr.ib(default=None)
|
||||
via_device_id: str | None = attr.ib(default=None)
|
||||
# This value is not stored, just used to keep track of events to fire.
|
||||
is_new: bool = attr.ib(default=False)
|
||||
|
||||
@property
|
||||
def disabled(self) -> bool:
|
||||
|
@ -245,19 +245,19 @@ class DeviceRegistry:
|
|||
*,
|
||||
config_entry_id: str,
|
||||
connections: set[tuple[str, str]] | None = None,
|
||||
default_manufacturer: str | None | UndefinedType = UNDEFINED,
|
||||
default_model: str | None | UndefinedType = UNDEFINED,
|
||||
default_name: str | None | UndefinedType = UNDEFINED,
|
||||
# To disable a device if it gets created
|
||||
disabled_by: str | None | UndefinedType = UNDEFINED,
|
||||
entry_type: str | None | UndefinedType = UNDEFINED,
|
||||
identifiers: set[tuple[str, str]] | None = None,
|
||||
manufacturer: str | None | UndefinedType = UNDEFINED,
|
||||
model: str | None | UndefinedType = UNDEFINED,
|
||||
name: str | None | UndefinedType = UNDEFINED,
|
||||
default_manufacturer: str | None | UndefinedType = UNDEFINED,
|
||||
default_model: str | None | UndefinedType = UNDEFINED,
|
||||
default_name: str | None | UndefinedType = UNDEFINED,
|
||||
sw_version: str | None | UndefinedType = UNDEFINED,
|
||||
entry_type: str | None | UndefinedType = UNDEFINED,
|
||||
via_device: tuple[str, str] | None = None,
|
||||
# To disable a device if it gets created
|
||||
disabled_by: str | None | UndefinedType = UNDEFINED,
|
||||
suggested_area: str | None | UndefinedType = UNDEFINED,
|
||||
sw_version: str | None | UndefinedType = UNDEFINED,
|
||||
via_device: tuple[str, str] | None = None,
|
||||
) -> DeviceEntry:
|
||||
"""Get device. Create if it doesn't exist."""
|
||||
if not identifiers and not connections:
|
||||
|
@ -302,16 +302,16 @@ class DeviceRegistry:
|
|||
device = self._async_update_device(
|
||||
device.id,
|
||||
add_config_entry_id=config_entry_id,
|
||||
via_device_id=via_device_id,
|
||||
disabled_by=disabled_by,
|
||||
entry_type=entry_type,
|
||||
manufacturer=manufacturer,
|
||||
merge_connections=connections or UNDEFINED,
|
||||
merge_identifiers=identifiers or UNDEFINED,
|
||||
manufacturer=manufacturer,
|
||||
model=model,
|
||||
name=name,
|
||||
sw_version=sw_version,
|
||||
entry_type=entry_type,
|
||||
disabled_by=disabled_by,
|
||||
suggested_area=suggested_area,
|
||||
sw_version=sw_version,
|
||||
via_device_id=via_device_id,
|
||||
)
|
||||
|
||||
# This is safe because _async_update_device will always return a device
|
||||
|
@ -324,34 +324,34 @@ class DeviceRegistry:
|
|||
self,
|
||||
device_id: str,
|
||||
*,
|
||||
add_config_entry_id: str | UndefinedType = UNDEFINED,
|
||||
area_id: str | None | UndefinedType = UNDEFINED,
|
||||
disabled_by: str | None | UndefinedType = UNDEFINED,
|
||||
manufacturer: str | None | UndefinedType = UNDEFINED,
|
||||
model: str | None | UndefinedType = UNDEFINED,
|
||||
name: str | None | UndefinedType = UNDEFINED,
|
||||
name_by_user: str | None | UndefinedType = UNDEFINED,
|
||||
name: str | None | UndefinedType = UNDEFINED,
|
||||
new_identifiers: set[tuple[str, str]] | UndefinedType = UNDEFINED,
|
||||
remove_config_entry_id: str | UndefinedType = UNDEFINED,
|
||||
suggested_area: str | None | UndefinedType = UNDEFINED,
|
||||
sw_version: str | None | UndefinedType = UNDEFINED,
|
||||
via_device_id: str | None | UndefinedType = UNDEFINED,
|
||||
add_config_entry_id: str | UndefinedType = UNDEFINED,
|
||||
remove_config_entry_id: str | UndefinedType = UNDEFINED,
|
||||
disabled_by: str | None | UndefinedType = UNDEFINED,
|
||||
suggested_area: str | None | UndefinedType = UNDEFINED,
|
||||
) -> DeviceEntry | None:
|
||||
"""Update properties of a device."""
|
||||
return self._async_update_device(
|
||||
device_id,
|
||||
add_config_entry_id=add_config_entry_id,
|
||||
area_id=area_id,
|
||||
disabled_by=disabled_by,
|
||||
manufacturer=manufacturer,
|
||||
model=model,
|
||||
name=name,
|
||||
name_by_user=name_by_user,
|
||||
name=name,
|
||||
new_identifiers=new_identifiers,
|
||||
remove_config_entry_id=remove_config_entry_id,
|
||||
suggested_area=suggested_area,
|
||||
sw_version=sw_version,
|
||||
via_device_id=via_device_id,
|
||||
add_config_entry_id=add_config_entry_id,
|
||||
remove_config_entry_id=remove_config_entry_id,
|
||||
disabled_by=disabled_by,
|
||||
suggested_area=suggested_area,
|
||||
)
|
||||
|
||||
@callback
|
||||
|
@ -360,20 +360,20 @@ class DeviceRegistry:
|
|||
device_id: str,
|
||||
*,
|
||||
add_config_entry_id: str | UndefinedType = UNDEFINED,
|
||||
remove_config_entry_id: str | UndefinedType = UNDEFINED,
|
||||
area_id: str | None | UndefinedType = UNDEFINED,
|
||||
disabled_by: str | None | UndefinedType = UNDEFINED,
|
||||
entry_type: str | None | UndefinedType = UNDEFINED,
|
||||
manufacturer: str | None | UndefinedType = UNDEFINED,
|
||||
merge_connections: set[tuple[str, str]] | UndefinedType = UNDEFINED,
|
||||
merge_identifiers: set[tuple[str, str]] | UndefinedType = UNDEFINED,
|
||||
new_identifiers: set[tuple[str, str]] | UndefinedType = UNDEFINED,
|
||||
manufacturer: str | None | UndefinedType = UNDEFINED,
|
||||
model: str | None | UndefinedType = UNDEFINED,
|
||||
name: str | None | UndefinedType = UNDEFINED,
|
||||
sw_version: str | None | UndefinedType = UNDEFINED,
|
||||
entry_type: str | None | UndefinedType = UNDEFINED,
|
||||
via_device_id: str | None | UndefinedType = UNDEFINED,
|
||||
area_id: str | None | UndefinedType = UNDEFINED,
|
||||
name_by_user: str | None | UndefinedType = UNDEFINED,
|
||||
disabled_by: str | None | UndefinedType = UNDEFINED,
|
||||
name: str | None | UndefinedType = UNDEFINED,
|
||||
new_identifiers: set[tuple[str, str]] | UndefinedType = UNDEFINED,
|
||||
remove_config_entry_id: str | UndefinedType = UNDEFINED,
|
||||
suggested_area: str | None | UndefinedType = UNDEFINED,
|
||||
sw_version: str | None | UndefinedType = UNDEFINED,
|
||||
via_device_id: str | None | UndefinedType = UNDEFINED,
|
||||
) -> DeviceEntry | None:
|
||||
"""Update device attributes."""
|
||||
old = self.devices[device_id]
|
||||
|
@ -424,14 +424,14 @@ class DeviceRegistry:
|
|||
changes["identifiers"] = new_identifiers
|
||||
|
||||
for attr_name, value in (
|
||||
("disabled_by", disabled_by),
|
||||
("entry_type", entry_type),
|
||||
("manufacturer", manufacturer),
|
||||
("model", model),
|
||||
("name", name),
|
||||
("sw_version", sw_version),
|
||||
("entry_type", entry_type),
|
||||
("via_device_id", via_device_id),
|
||||
("disabled_by", disabled_by),
|
||||
("suggested_area", suggested_area),
|
||||
("sw_version", sw_version),
|
||||
("via_device_id", via_device_id),
|
||||
):
|
||||
if value is not UNDEFINED and value != getattr(old, attr_name):
|
||||
changes[attr_name] = value
|
||||
|
|
|
@ -158,18 +158,18 @@ def get_unit_of_measurement(hass: HomeAssistant, entity_id: str) -> str | None:
|
|||
class DeviceInfo(TypedDict, total=False):
|
||||
"""Entity device information for device registry."""
|
||||
|
||||
name: str | None
|
||||
connections: set[tuple[str, str]]
|
||||
default_manufacturer: str
|
||||
default_model: str
|
||||
default_name: str
|
||||
entry_type: str | None
|
||||
identifiers: set[tuple[str, str]]
|
||||
manufacturer: str | None
|
||||
model: str | None
|
||||
name: str | None
|
||||
suggested_area: str | None
|
||||
sw_version: str | None
|
||||
via_device: tuple[str, str]
|
||||
entry_type: str | None
|
||||
default_name: str
|
||||
default_manufacturer: str
|
||||
default_model: str
|
||||
|
||||
|
||||
@dataclass
|
||||
|
|
|
@ -461,17 +461,17 @@ class EntityPlatform:
|
|||
processed_dev_info = {"config_entry_id": config_entry_id}
|
||||
for key in (
|
||||
"connections",
|
||||
"default_manufacturer",
|
||||
"default_model",
|
||||
"default_name",
|
||||
"entry_type",
|
||||
"identifiers",
|
||||
"manufacturer",
|
||||
"model",
|
||||
"name",
|
||||
"default_manufacturer",
|
||||
"default_model",
|
||||
"default_name",
|
||||
"sw_version",
|
||||
"entry_type",
|
||||
"via_device",
|
||||
"suggested_area",
|
||||
"sw_version",
|
||||
"via_device",
|
||||
):
|
||||
if key in device_info:
|
||||
processed_dev_info[key] = device_info[key] # type: ignore[misc]
|
||||
|
|
Loading…
Add table
Reference in a new issue