Make RPC events threaded
Allows, for example, an RPC service to make remote RPC calls with its own connection without blocking its own thread waiting for the result.
This commit is contained in:
parent
e37adace62
commit
3607c5b792
1 changed files with 4 additions and 4 deletions
|
@ -699,10 +699,10 @@ class Remote(object):
|
||||||
with Remote._lock:
|
with Remote._lock:
|
||||||
del cls._sessions[client.boundjid.bare]
|
del cls._sessions[client.boundjid.bare]
|
||||||
result = RemoteSession(client, _session_close_callback)
|
result = RemoteSession(client, _session_close_callback)
|
||||||
client.plugin['xep_0009'].xmpp.add_event_handler('jabber_rpc_method_call', result._on_jabber_rpc_method_call)
|
client.plugin['xep_0009'].xmpp.add_event_handler('jabber_rpc_method_call', result._on_jabber_rpc_method_call, threaded=True)
|
||||||
client.plugin['xep_0009'].xmpp.add_event_handler('jabber_rpc_method_response', result._on_jabber_rpc_method_response)
|
client.plugin['xep_0009'].xmpp.add_event_handler('jabber_rpc_method_response', result._on_jabber_rpc_method_response, threaded=True)
|
||||||
client.plugin['xep_0009'].xmpp.add_event_handler('jabber_rpc_method_fault', result._on_jabber_rpc_method_fault)
|
client.plugin['xep_0009'].xmpp.add_event_handler('jabber_rpc_method_fault', result._on_jabber_rpc_method_fault, threaded=True)
|
||||||
client.plugin['xep_0009'].xmpp.add_event_handler('jabber_rpc_error', result._on_jabber_rpc_error)
|
client.plugin['xep_0009'].xmpp.add_event_handler('jabber_rpc_error', result._on_jabber_rpc_error, threaded=True)
|
||||||
if callback is None:
|
if callback is None:
|
||||||
start_event_handler = result._notify
|
start_event_handler = result._notify
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Reference in a new issue