mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 13:17:32 +00:00
Use slots for discovery dataclasses (#90751)
This commit is contained in:
parent
bfea1367a7
commit
0cc9b2e803
@ -84,7 +84,7 @@ class BleBoxConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
|
|||||||
) -> FlowResult:
|
) -> FlowResult:
|
||||||
"""Handle zeroconf discovery."""
|
"""Handle zeroconf discovery."""
|
||||||
hass = self.hass
|
hass = self.hass
|
||||||
ipaddress = host_port(discovery_info.__dict__)
|
ipaddress = (discovery_info.host, discovery_info.port)
|
||||||
self.device_config["host"] = discovery_info.host
|
self.device_config["host"] = discovery_info.host
|
||||||
self.device_config["port"] = discovery_info.port
|
self.device_config["port"] = discovery_info.port
|
||||||
|
|
||||||
|
@ -77,7 +77,7 @@ SCAN_INTERVAL = timedelta(minutes=60)
|
|||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
@dataclass(slots=True)
|
||||||
class DhcpServiceInfo(BaseServiceInfo):
|
class DhcpServiceInfo(BaseServiceInfo):
|
||||||
"""Prepared info from dhcp entries."""
|
"""Prepared info from dhcp entries."""
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ from .handler import HassIO, HassioAPIError
|
|||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
@dataclass(slots=True)
|
||||||
class HassioServiceInfo(BaseServiceInfo):
|
class HassioServiceInfo(BaseServiceInfo):
|
||||||
"""Prepared info from hassio entries."""
|
"""Prepared info from hassio entries."""
|
||||||
|
|
||||||
|
@ -106,42 +106,20 @@ PRIMARY_MATCH_KEYS = [
|
|||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
@dataclass(slots=True)
|
||||||
class _HaServiceDescription:
|
class SsdpServiceInfo(BaseServiceInfo):
|
||||||
"""Keys added by HA."""
|
"""Prepared info from ssdp/upnp entries."""
|
||||||
|
|
||||||
x_homeassistant_matching_domains: set[str] = field(default_factory=set)
|
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
|
||||||
class _SsdpServiceDescription:
|
|
||||||
"""SSDP info with optional keys."""
|
|
||||||
|
|
||||||
ssdp_usn: str
|
ssdp_usn: str
|
||||||
ssdp_st: str
|
ssdp_st: str
|
||||||
|
upnp: Mapping[str, Any]
|
||||||
ssdp_location: str | None = None
|
ssdp_location: str | None = None
|
||||||
ssdp_nt: str | None = None
|
ssdp_nt: str | None = None
|
||||||
ssdp_udn: str | None = None
|
ssdp_udn: str | None = None
|
||||||
ssdp_ext: str | None = None
|
ssdp_ext: str | None = None
|
||||||
ssdp_server: str | None = None
|
ssdp_server: str | None = None
|
||||||
ssdp_headers: Mapping[str, Any] = field(default_factory=dict)
|
ssdp_headers: Mapping[str, Any] = field(default_factory=dict)
|
||||||
|
x_homeassistant_matching_domains: set[str] = field(default_factory=set)
|
||||||
|
|
||||||
@dataclass
|
|
||||||
class _UpnpServiceDescription:
|
|
||||||
"""UPnP info."""
|
|
||||||
|
|
||||||
upnp: Mapping[str, Any]
|
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
|
||||||
class SsdpServiceInfo(
|
|
||||||
_HaServiceDescription,
|
|
||||||
_SsdpServiceDescription,
|
|
||||||
_UpnpServiceDescription,
|
|
||||||
BaseServiceInfo,
|
|
||||||
):
|
|
||||||
"""Prepared info from ssdp/upnp entries."""
|
|
||||||
|
|
||||||
|
|
||||||
SsdpChange = Enum("SsdpChange", "ALIVE BYEBYE UPDATE")
|
SsdpChange = Enum("SsdpChange", "ALIVE BYEBYE UPDATE")
|
||||||
|
@ -101,7 +101,7 @@ def async_is_plugged_in(hass: HomeAssistant, matcher: USBCallbackMatcher) -> boo
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclasses.dataclass
|
@dataclasses.dataclass(slots=True)
|
||||||
class UsbServiceInfo(BaseServiceInfo):
|
class UsbServiceInfo(BaseServiceInfo):
|
||||||
"""Prepared info from usb entries."""
|
"""Prepared info from usb entries."""
|
||||||
|
|
||||||
|
@ -97,7 +97,7 @@ CONFIG_SCHEMA = vol.Schema(
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
@dataclass(slots=True)
|
||||||
class ZeroconfServiceInfo(BaseServiceInfo):
|
class ZeroconfServiceInfo(BaseServiceInfo):
|
||||||
"""Prepared info from mDNS entries."""
|
"""Prepared info from mDNS entries."""
|
||||||
|
|
||||||
|
@ -48,7 +48,7 @@ RESULT_TYPE_MENU = "menu"
|
|||||||
EVENT_DATA_ENTRY_FLOW_PROGRESSED = "data_entry_flow_progressed"
|
EVENT_DATA_ENTRY_FLOW_PROGRESSED = "data_entry_flow_progressed"
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
@dataclass(slots=True)
|
||||||
class BaseServiceInfo:
|
class BaseServiceInfo:
|
||||||
"""Base class for discovery ServiceInfo."""
|
"""Base class for discovery ServiceInfo."""
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user