← Back
Editing: specification.cpython-312.pyc
� �ic�# � �f � d dl mZ d dlmZ g d�Z G d� de� Z G d� de� Z G d� d e� Z y )� )� namedtuple)� XMLParser)�DBusSpecificationError�DBusSpecification�DBusSpecificationParserc � � e Zd ZdZy)r z,Exception for the DBus specification errors.N)�__name__� __module__�__qualname__�__doc__� � �9/usr/lib/python3.12/site-packages/dasbus/specification.pyr r # s � �6�r r c � � e Zd ZdZdZdZdZdZdZdZ dZ ed g d �� Z edg d�� Z ed g d�� ZdgZed� � Zd� Zed� � Zed� � Zd� Zd� Zy)r zDBus XML specification.�in�out�read�write� readwrite�returna� <node> <interface name="org.freedesktop.DBus.Introspectable"> <method name="Introspect"> <arg type="s" name="xml_data" direction="out"/> </method> </interface> <interface name="org.freedesktop.DBus.Peer"> <method name="Ping"/> <method name="GetMachineId"> <arg type="s" name="machine_uuid" direction="out"/> </method> </interface> <interface name="org.freedesktop.DBus.Properties"> <method name="Get"> <arg type="s" name="interface_name" direction="in"/> <arg type="s" name="property_name" direction="in"/> <arg type="v" name="value" direction="out"/> </method> <method name="GetAll"> <arg type="s" name="interface_name" direction="in"/> <arg type="a{sv}" name="properties" direction="out"/> </method> <method name="Set"> <arg type="s" name="interface_name" direction="in"/> <arg type="s" name="property_name" direction="in"/> <arg type="v" name="value" direction="in"/> </method> <signal name="PropertiesChanged"> <arg type="s" name="interface_name"/> <arg type="a{sv}" name="changed_properties"/> <arg type="as" name="invalidated_properties"/> </signal> </interface> </node> �Signal��name�interface_name�type�Method�r r �in_type�out_type�Property�r r �readable�writabler �_membersc �. � t j || � S )z.Return a DBus specification for the given XML.)r �parse_specification)�cls�xmls r �from_xmlzDBusSpecification.from_xmlp s � � '�:�:�3��D�Dr c � � i | _ y)z Create a new DBus specification.N)r$ ��selfs r �__init__zDBusSpecification.__init__u s � ��� r c �v � t t | j j � � j � � S )z%Interfaces of the DBus specification.)�list�dictr$ �keysr+ s r � interfaceszDBusSpecification.interfacesy s* � � �D����+�+�-�.�3�3�5�6�6r c �H � t | j j � � S )z"Members of the DBus specification.)r/ r$ �valuesr+ s r �memberszDBusSpecification.members~ s � � �D�M�M�(�(�*�+�+r c �N � || j |j |j f<