← Back
Editing: proxy.cpython-312.opt-1.pyc
� �ic# � � � d dl mZmZ d dlmZ d dlmZ d dlmZ d dl m Z g d�Zd� Zd� Z d � Z G d � de�� Z G d � de� Z G d� de� Zy)� )�ABCMeta�abstractmethod)�Lock)�ClientObjectHandler)� PropertyProxy)�DBusSpecificationError)�AbstractObjectProxy�ObjectProxy�InterfaceProxy�get_object_path�disconnect_proxyc � � t | t � s-t dj t | � j � � �t | d� S )zoGet an object handler of the DBus proxy. :param proxy: a DBus proxy :return: a DBus proxy handler zInvalid type '{}'.�_handler)� isinstancer � TypeError�format�type�__name__�getattr)�proxys �8/usr/lib/python3.12/site-packages/dasbus/client/proxy.py�get_object_handlerr % s= � � �e�0�1��,�3�3�D��K�4H�4H�I�J�J��5�*�%�%� c �0 � t | � }|j S )zkGet an object path of the remote DBus object. :param proxy: a DBus proxy :return: a DBus path )r �object_path�r �handlers r r r 1 s � � !��'�G����r c �: � t | � }|j � y)zVDisconnect the DBus proxy from the remote object. :param proxy: a DBus proxy N)r �disconnect_membersr s r r r ; s � � !��'�G���� r c �^ � � e Zd ZdZg d�Zh e�Zefd�Zed� � Z d� Z d� Zd� Z� fd�Z � xZS ) r z'Abstract proxy of a remote DBus object.)r �_members�_lock�__weakref__c �P � ||||fi |��| _ i | _ t � | _ y)aK Create a new proxy. :param message_bus: a message bus :param service_name: a DBus name of the service :param object_path: a DBus path the object :param handler_factory: a factory of a DBus client object handler :param handler_arguments: additional arguments for the handler factory N)r r! r r"