Files
ServerSync/lib/jeepney/io/__pycache__/asyncio.cpython-314.pyc

117 lines
15 KiB
Plaintext
Raw Normal View History

2026-02-19 00:55:27 +02:00
+
<00>;<3B>i<EFBFBD><00><00><><00>^RIt^RIt^RIHt^RIHt^RIHtHt^RI H
t
^RI H t H t Ht^RIHtHt^RIHt^R IHtHtHtHtHt!R
R 4tRR lt!R R4t!RR4t!RR]4tR#)<14>N)<01>count)<01>Optional)<02> Authenticator<6F>BEGIN)<01>get_bus)<03>Message<67> MessageType<70>Parser)<02> ProxyBase<73>
unwrap_msg)<01> message_bus)<05>MessageFilters<72> FilterHandle<6C> ReplyMatcher<65> RouterClosed<65>check_replyablec<00>ta<00>]tRt^toRtV3RlRltRR/V3RlRlltV3RlR ltR
tR t R t
R t Vt R#)<0E>DBusConnectiona<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`.
c<00>N<<01>V^8<>dQhRS[PRS[P/#)<03><00>reader<65>writer)<03>asyncio<69> StreamReader<65> StreamWriter)<02>format<61> __classdict__s"<22><>9/tmp/pip-target-ugtna5l2/lib/python/jeepney/io/asyncio.py<70> __annotate__<5F>DBusConnection.__annotate__s'<00><><00>(<28>(<28>w<EFBFBD>3<>3<>(<28>W<EFBFBD>=Q<>=Q<>(<28>c<08><><00>WnW n\4Vn\ ^R7VnRVn\P!4Vn R#)<03>)<01>startN)
rrr
<00>parserr<00>outgoing_serial<61> unique_namer<00>Lock<63> send_lock)<03>selfrrs&&&r<00>__init__<5F>DBusConnection.__init__s6<00><00><1C> <0B><1C> <0B><1C>h<EFBFBD><04> <0B>$<24>1<EFBFBD>~<7E><04><1C><1F><04><18> <20><1C><1C><1E><04>r!<00>serialNc<00> <<01>V^8<>dQhRS[/#)r<00>message<67>r)rrs"<22>rrr s<00><><00>&<26>&<26>'<27>&r!c<00> <0C>x"<00>VP;_uu_4GRjx<01>L
Vf\VP4pVPP VP V44VPP 4GRjx<01>L
RRR4GRjx<01>L
R#L{LL
+GRjx<01>L
'giR#;i5i)z.Serialise and send a :class:`~.Message` objectN)r)<00>nextr&r<00>write<74> serialise<73>drain<69>r*r/r-s&&$r<00>send<6E>DBusConnection.send sq<00><00><00><17>><3E>><3E>><3E>><3E><15>~<7E><1D>d<EFBFBD>2<>2<>3<><06> <10>K<EFBFBD>K<EFBFBD> <1D> <1D>g<EFBFBD>/<2F>/<2F><06>7<> 8<><16>+<2B>+<2B>#<23>#<23>%<25> %<25> %<25> "<22>><3E>><3E> &<26> "<22>><3E>><3E>><3E>s]<00>B:<01>B<08>B:<01>A!B<05>B<08>B<05> B:<01>B<04>B:<01>B<05>B:<01>B7 <09>#B&<0E>$
B7 <09>/B7 <09>1 B:c<00> <<01>V^8<>dQhRS[/#<00>r<00>returnr0)rrs"<22>rrr (s<00><><00>
$<24>
$<24>w<EFBFBD>
$r!c<00> <0C><>"<00>VPP4pVeV#VPPR4GRjx<01>L
pV'g\hVPP V4KoL/5i)z5Return the next available message from the connectionNi)r%<00>get_next_messager<00>read<61>EOFError<6F>add_data)r*<00>msg<73>bs& r<00>receive<76>DBusConnection.receive(sZ<00><00><00><12><16>+<2B>+<2B>.<2E>.<2E>0<>C<EFBFBD><12><EFBFBD><1A>
<EFBFBD><1A>k<EFBFBD>k<EFBFBD>&<26>&<26>t<EFBFBD>,<2C>,<2C>A<EFBFBD><14><1E><0E> <10>K<EFBFBD>K<EFBFBD> <20> <20><11> #<23>-<2D>s<00>AA4<01>A2<04> A4<01>$A4c<00> <0C><>"<00>VPP4VPP4GRjx<01>L
R#L5i)zClose the D-Bus connectionN)r<00>close<73> wait_closed<65>r*s&rrF<00>DBusConnection.close4s+<00><00><00> <0C> <0B> <0B><19><19><1B><12>k<EFBFBD>k<EFBFBD>%<25>%<25>'<27>'<27>'<27>s<00>8A<01>A<04>Ac<00><08>"<00>V#5i<01>N<>rHs&r<00>
__aenter__<EFBFBD>DBusConnection.__aenter__9<00>
<00><00><00><13> <0B><><00>c<00><08>B"<00>VP4GRjx<01>L
R#L5irK)rF<00>r*<00>exc_type<70>exc_val<61>exc_tbs&&&&r<00> __aexit__<5F>DBusConnection.__aexit__<s<00><00><00><12>j<EFBFBD>j<EFBFBD>l<EFBFBD><1A><1A>s <00><01><04>)r&r%rr)r'r) <0A>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__firstlineno__<5F>__doc__r+r7rCrFrMrV<00>__static_attributes__<5F>__classdictcell__<5F>rs@rrrsC<00><><00><00><08>(<28>(<28>&<26>T<EFBFBD>&<26>&<26>
$<24>
$<24>(<28>
<14><1B>r!rc<00><04>"<00>\V4p\P!V4GRjx<01>L
wr#\4pVFipVP V4VP 4GRjx<01>L
VP R4GRjx<01>L
pV'g \R4hVPV4Kk VP \4VP 4GRjx<01>L
\W#4p\V4;_uu_4GRjx<01>L
p\P!\\V4P4^
4GRjx<01>L
p V ^,VnRRR4GRjx<01>L
V#EL/L<>L<>L<>LhL/L +GRjx<01>L
'giT#;i5i)z@Open a plain D-Bus connection
:return: :class:`DBusConnection`
Niz#Socket closed before authentication)rr<00>open_unix_connectionrr3r5r>r?<00>feedrr<00>
DBusRouter<EFBFBD>wait_for<6F>Proxyr <00>Hellor')
<EFBFBD>bus<75>bus_addrrr<00>authr<68>req_datarB<00>conn<6E>router<65>
reply_bodys
& r<00>open_dbus_connectionrn@s*<00><00><00>
<17>s<EFBFBD>|<7C>H<EFBFBD>"<22>7<>7<><08>A<>A<>N<EFBFBD>F<EFBFBD> <1A>O<EFBFBD>E<EFBFBD><19><08><0E> <0C> <0C>X<EFBFBD><1E><14>l<EFBFBD>l<EFBFBD>n<EFBFBD><1C><1C><18>+<2B>+<2B>d<EFBFBD>#<23> #<23><01><10><1A>@<40>A<> A<> <0A>
<EFBFBD>
<EFBFBD>1<EFBFBD> <0A> <1A> <0B>L<EFBFBD>L<EFBFBD><15><17>
<10>,<2C>,<2C>.<2E><18><18> <1A>&<26> )<29>D<EFBFBD><1A>$<24><1F><1F><1F>6<EFBFBD>"<22>+<2B>+<2B>E<EFBFBD>+<2B>v<EFBFBD>,F<>,L<>,L<>,N<>PR<50>S<>S<>
<EFBFBD>%<25>a<EFBFBD>=<3D><04><18> <20><1F> <10>K<EFBFBD>1B<01> <1D> #<23> <19> <20>S<> <20><1F><1F><1F> <10>K<EFBFBD>s<EFBFBD><00>%F<01>E<04>9F<01>!E<06>"F<01>:E<06>; F<01>AF<01>E<04>&F<01>6E<08>7F<01>:7E%<05>1E!<08>2E%<05> F<01>E#<04>F<01>F<01>F<01>F<01>F<01>!E%<05>#F<01>%E? <09>+E.<0E>,
E? <09>7E? <09>9 Fc<00><>a<00>]tRt^`toRtRtRtRtV3RlRlt] R4t
RR/Rlt V3RlR lt R
RR ^/V3R lR llt RtRtV3RlRltRtRtVtR#)rcz<>A 'client' D-Bus connection which can wait for a specific reply.
This runs a background receiver task, and makes it possible to send a
request and wait for the relevant reply.
Nc<00> <<01>V^8<>dQhRS[/#)rrk)r)rrs"<22>rr<00>DBusRouter.__annotate__js<00><><00>?<3F>?<3F>^<5E>?r!c<08><><00>Wn\4Vn\4Vn\
P !VP44VnR#rK) <09>_connr<00>_repliesr<00>_filtersr<00> create_task<73> _receiver<65> _rcv_task)r*rks&&rr+<00>DBusRouter.__init__js3<00><00><19>
<EFBFBD>$<24><0E><04> <0A>&<26>(<28><04> <0A> <20>,<2C>,<2C>T<EFBFBD>^<5E>^<5E>-=<3D>><3E><04>r!c<08>.<00>VPP#rK)rsr'rHs&rr'<00>DBusRouter.unique_nameps<00><00><13>z<EFBFBD>z<EFBFBD>%<25>%<25>%r!r-c<00> <0C>Z"<00>VPPWR7GRjx<01>L
R#L5i)z&Send a message, don't wait for a reply<6C>r-N)rsr7r6s&&$rr7<00>DBusRouter.sendts<00><00><00><12>j<EFBFBD>j<EFBFBD>o<EFBFBD>o<EFBFBD>g<EFBFBD>o<EFBFBD>5<>5<>5<>s <00> +<01>)<04>+c<00> <<01>V^8<>dQhRS[/#r:r0)rrs"<22>rrrqxs<00><><00> %<25> %<25>7<EFBFBD> %r!c<00> <0C><>"<00>\V4VPP4'd \R4h\ VP
P 4pVPPV\P!44;_uu_4pVPWR7GRjx<01>L
VGRjx<01>L
uuRRR4#LL +'giR#;i5i)ztSend a method call message and wait for the reply
Returns the reply message (method return or error message type).
zThis DBusRouter has stoppedr}N) rrx<00>donerr2rsr&rt<00>catchr<00>Futurer7)r*r/r-<00> reply_futs&& r<00>send_and_get_reply<6C>DBusRouter.send_and_get_replyxs<><00><00><00>
<18><07> <20> <0F>><3E>><3E> <1E> <1E> <20> <20><1E><<3C>=<3D> =<3D><15>d<EFBFBD>j<EFBFBD>j<EFBFBD>0<>0<>1<><06> <11>]<5D>]<5D> <20> <20><16><17><1E><1E>)9<> :<3A> :<3A>i<EFBFBD><16>)<29>)<29>G<EFBFBD>)<29>3<> 3<> 3<>#<23>O<EFBFBD>;<3B> :<3A> 3<>#<23>;<3B> :<3A> :<3A>sB<00>B C<01>C<05>%B><08>& C<05>/C<08>0C<05>3 C<01>>C<05>C<05> C <09> C<01>queue<75>bufsizec<00>D<<01>V^8<>dQhRS[S[P,/#)rr<>)rr<00>Queue)rrs"<22>rrrq<00>s <00><><00> R<01> R<01>X<EFBFBD>g<EFBFBD>m<EFBFBD>m<EFBFBD>%<<3C> Rr!c <0C>j<00>\VPY;'g\P!V44#)a:Create a filter for incoming messages
Usage::
with router.filter(rule) as queue:
matching_msg = await queue.get()
:param MatchRule rule: Catch messages matching this rule
:param asyncio.Queue queue: Send matching messages here
:param int bufsize: If no queue is passed in, create one with this size
)rrurr<>)r*<00>ruler<65>r<>s&&$$r<00>filter<65>DBusRouter.filter<65>s&<00><00><1C>D<EFBFBD>M<EFBFBD>M<EFBFBD>4<EFBFBD>1P<31>1P<31>'<27>-<2D>-<2D><07>:P<>Q<>Qr!c<00><08>"<00>V#5irKrLrHs&rrM<00>DBusRouter.__aenter__<5F>rOrPc<00><08>x"<00>VPP4'dVPP4R#VPP4\P
!\ P4;_uu_4VPGRjx<01>L
RRR4R#L +'giR#;i5i)NF)rxr<><00>result<6C>cancel<65>
contextlib<EFBFBD>suppressr<00>CancelledErrorrRs&&&&rrV<00>DBusRouter.__aexit__<5F>s{<00><00><00> <0F>><3E>><3E> <1E> <1E> <20> <20> <10>N<EFBFBD>N<EFBFBD> !<21> !<21> #<23>
<15> <11>N<EFBFBD>N<EFBFBD> !<21> !<21> #<23><1B>$<24>$<24>W<EFBFBD>%;<3B>%;<3B><<3C><<3C><1A>n<EFBFBD>n<EFBFBD>$<24>$<24>=<3D><14>%<25>=<3D><<3C><14>s0<00>BB:<01>B&<05>B$<08>B&<05>
B:<01>$B&<05>& B7 <09>1 B:c<00> <<01>V^8<>dQhRS[/#)rrAr0)rrs"<22>rrrq<00>s<00><><00> <15> <15>W<EFBFBD> r!c <0C><00>VPPV4'dR#\VPP V44FpVP
P V4K! R# \PdK=i;i)zHandle one received messageN) rt<00>dispatch<63>listru<00>matchesr<73><00>
put_nowaitr<00> QueueFull)r*rAr<>s&& r<00> _dispatch<63>DBusRouter._dispatch<63>si<00><00> <0F>=<3D>=<3D> !<21> !<21>#<23> &<26> &<26> <12><1A>4<EFBFBD>=<3D>=<3D>0<>0<><13>5<>6<>F<EFBFBD> <15><16> <0C> <0C>'<27>'<27><03>,<2C>7<><37><1B>$<24>$<24> <15><14> <15>s<00> A-<02>-B<05>Bc<00> <0C><>"<00>VPP4GRjx<01>L
pVPV4K6L TPP 4i;i5i)z'Receiver loop - runs in a separate taskN)rsrCr<>rt<00>drop_all)r*rAs& rrw<00>DBusRouter._receiver<65>sF<00><00><00> %<25><16> <20>J<EFBFBD>J<EFBFBD>.<2E>.<2E>0<>0<><03><14><0E><0E>s<EFBFBD>#<23>1<><31> <11>M<EFBFBD>M<EFBFBD> "<22> "<22> $<24>s<00>A<01><<00>:<04><<00>A<03>A)rsrurxrt)rXrYrZr[r\<00> _nursery_mgr<67>_send_cancel_scope<70>_rcv_cancel_scoper+<00>propertyr'r7r<>r<>rMrVr<>rwr]r^r_s@rrcrc`s<><00><><00><00><08>
<18>L<EFBFBD><1D><16><1C><15>?<3F>?<3F> <0E>&<26><0E>&<26>6<>D<EFBFBD>6<> %<25> %<25> R<01>d<EFBFBD> R<01>A<EFBFBD> R<01> R<01><14><15> <15> <15>%<25>%r!rcc<00>Ba<00>]tRt^<5E>toRtRtRtRRltRtRt Rt
Vt R#)<08>open_dbus_routerz<72>Open a D-Bus 'router' to send and receive messages
Use as an async context manager::
async with open_dbus_router() as router:
...
Nc<08><00>WnR#rK)rg)r*rgs&&rr+<00>open_dbus_router.__init__<5F>s<00><00><16>r!c<00><08><>"<00>\VP4GRjx<01>L
Vn\VP4VnVPP 4GRjx<01>L
#LEL5irK)rnrgrkrc<00>req_ctxrMrHs&rrM<00>open_dbus_router.__aenter__<5F>sF<00><00><00>.<2E>t<EFBFBD>x<EFBFBD>x<EFBFBD>8<>8<><04> <09>!<21>$<24>)<29>)<29>,<2C><04> <0C><19>\<5C>\<5C>,<2C>,<2C>.<2E>.<2E>.<2E>9<>.<2E>s"<00>A%<01>A!<04>AA%<01>A#<04>A%<01>#A%c<00><08><>"<00>VPPWV4GRjx<01>L
VPP4GRjx<01>L
R#L(L5irK)r<>rVrkrFrRs&&&&rrV<00>open_dbus_router.__aexit__<5F>s<<00><00><00><12>l<EFBFBD>l<EFBFBD>$<24>$<24>X<EFBFBD><06>?<3F>?<3F>?<3F><12>i<EFBFBD>i<EFBFBD>o<EFBFBD>o<EFBFBD><1F><1F><1F> @<01><1F>s!<00> A<01>A <04>!A<01>A <04>A<01> A)rgrkr<><00><01>SESSION) rXrYrZr[r\rkr<>r+rMrVr]r^r_s@rr<>r<><00>s*<00><><00><00><08> <10>D<EFBFBD><12>G<EFBFBD><17>/<2F>
 <20> r!r<>c<00>Baa<01>]tRt^<5E>toRtV3RltRtRtRtVt V;t
#)rea<>An asyncio proxy for calling D-Bus methods
You can call methods on the proxy object, such as ``await bus_proxy.Hello()``
to make a method call over D-Bus and wait for a reply. It will either
return a tuple of returned data, or raise :exc:`.DBusErrorResponse`.
The methods available are defined by the message generator you wrap.
:param msggen: A message generator object.
:param ~asyncio.DBusRouter router: Router to send and receive messages.
c<08>2<<01>\SV`V4W nR#rK)<03>superr+<00>_router)r*<00>msggenrl<00> __class__s&&&<26>rr+<00>Proxy.__init__<5F>s<00><><00> <0A><07><18><16> <20><1D> r!c<08>N<00>RPVPVP4#)z Proxy({}, {}))r<00>_msggenr<6E>rHs&r<00>__repr__<5F>Proxy.__repr__<5F>s<00><00><1E>%<25>%<25>d<EFBFBD>l<EFBFBD>l<EFBFBD>D<EFBFBD>L<EFBFBD>L<EFBFBD>A<>Ar!c<08>aa<01>VV3RlpV#)c<00><00><><"<00>S!V/VBpVPP\PJgQhSPP V4GRjx<01>L
p\ V4#L5irK)<07>header<65> message_typer <00> method_callr<6C>r<>r )<06>args<67>kwargsrA<00>reply<6C>make_msgr*s*, <20><>r<00>inner<65>!Proxy._method_call.<locals>.inner<65>sZ<00><><00><00><1A>D<EFBFBD>+<2B>F<EFBFBD>+<2B>C<EFBFBD><16>:<3A>:<3A>*<2A>*<2A>k<EFBFBD>.E<>.E<>E<> E<>E<><1E>,<2C>,<2C>9<>9<>#<23>><3E>><3E>E<EFBFBD><1D>e<EFBFBD>$<24> $<24>?<3F>s<00>AA&<01>A$<04>A&rL)r*r<>r<>sff r<00> _method_call<6C>Proxy._method_call<6C>s<00><><00> %<25> <15> r!)r<>) rXrYrZr[r\r+r<>r<>r]r^<00> __classcell__)r<>rs@@rrere<00>s<00><><00><00> <08><1E>B<01><15>r!rer<>)rr<><00> itertoolsr<00>typingr<00> jeepney.authrr<00> jeepney.busr<00>jeepneyrr r
<00>jeepney.wrappersr r <00>jeepney.bus_messagesr <00>commonrrrrrrrnrcr<>rerLr!r<00><module>r<>sa<00><01><0E><11><1B><1B>-<2D><1F>0<>0<>2<>,<2C><02><02>
-<1B>-<1B>`<10>@V%<25>V%<25>p <20> <20>0<15>I<EFBFBD>r!