/usr/lib/python3/dist-packages/jeepney/io/__pycache__
Edit: /usr/lib/python3/dist-packages/jeepney/io/__pycache__/asyncio.cpython-310.pyc (8938B)
o
a @ s d dl Z d dlZd dlmZ d dlmZ d dlmZmZ d dl m
Z
d dlmZm
Z
mZ d dlmZmZ d dlmZ d d
lmZmZmZmZmZ G dd dZdddZG dd dZG dd dZG dd deZdS ) N)count)Optional)
AuthenticatorBEGIN)get_bus)MessageMessageTypeParser) ProxyBase
unwrap_msg)message_bus )MessageFiltersFilterHandleReplyMatcherRouterClosedcheck_replyablec @ s` e Zd ZdZdejdejfddZdddefd d
Z defdd
Z
dd Zdd Zdd Z
dS )DBusConnectionaP A plain D-Bus connection with no matching of replies.
This doesn't run any separate tasks: sending and receiving are done in
the task that calls those methods. It's suitable for implementing servers:
several worker tasks can receive requests and send replies.
For a typical client pattern, see :class:`DBusRouter`.
readerwriterc C s4 || _ || _t | _tdd| _d | _t | _ d S )Nr
)start)
r r r parserr outgoing_serialunique_nameasyncioLock send_lock)selfr r r 4/usr/lib/python3/dist-packages/jeepney/io/asyncio.py__init__ s zDBusConnection.__init__Nserialmessagec sv | j 4 I dH & |du rt| j}| j|| | j I dH W d I dH dS 1 I dH s4w Y dS )z.Serialise and send a :class:`~.Message` objectN)r nextr r write serialisedrainr r# r" r r r send s
.zDBusConnection.sendreturnc sB | j }|dur
|S | jdI dH }|st| j | q)z5Return the next available message from the connectionTNi )r get_next_messager readEOFErroradd_data)r msgbr r r receive( s
zDBusConnection.receivec s | j | j I dH dS )zClose the D-Bus connectionN)r closewait_closedr r r r r2 4 s
zDBusConnection.closec | S Nr r4 r r r
__aenter__9 zDBusConnection.__aenter__c s | I d H d S r6 )r2 r exc_typeexc_valexc_tbr r r __aexit__<