a
� z]�` � @ s� d dl Z zd dlmZ W n ey6 d dlmZ Y n0 d dlZd dlmZ d dlm Z m
Z
mZmZ dZ
e �d�Zd dlmZmZmZmZmZ d dlmZ G d d
� d
�ZG dd� d�ZG d
d� de�ZG dd� de�ZdS )� N)�RLock)�process_introspection_data)�
DBusException�IntrospectionParserException�MissingErrorHandlerException�MissingReplyHandlerExceptionZrestructuredtextzdbus.proxies)�BUS_DAEMON_IFACE�BUS_DAEMON_NAME�BUS_DAEMON_PATH�INTROSPECTABLE_IFACE�
LOCAL_PATH)�is_py2c @ s( e Zd ZdZdd� Zdd� Zdd� ZdS ) �_DeferredMethodzXA proxy method which will only get called once we have its
introspection reply.
c C s || _ |j| _|| _|| _d S �N)�
_proxy_method�_method_name�_append�_block)�self�proxy_method�append�block� r �2/usr/lib64/python3.9/site-packages/dbus/proxies.py�__init__8 s z_DeferredMethod.__init__c O sD d|v s|� dd�r(| �| j||� d S | �� | j|i |��S d S )N�
reply_handler�ignore_replyF)�getr r r �r �args�keywordsr r r �__call__? s
�z_DeferredMethod.__call__c O s | � | j||� d S r )r r r r r r �
call_asyncJ s z_DeferredMethod.call_asyncN��__name__�
__module__�__qualname__�__doc__r r! r"