This commit is contained in:
Marco Pesenti Gritti
2006-05-23 12:48:29 -04:00
parent 178468e2c0
commit dde63625a5
2 changed files with 35 additions and 23 deletions
+16 -10
View File
@@ -10,6 +10,9 @@ import SimpleXMLRPCServer
import SocketServer
RESULT_FAILED = 0
RESULT_SUCCESS = 1
__authinfos = {}
def _add_authinfo(authinfo):
@@ -176,7 +179,7 @@ class GlibXMLRPCTransport(xmlrpclib.Transport):
if request_cb:
if len(response) == 1:
response = response[0]
gobject.idle_add(request_cb, response, user_data)
gobject.idle_add(request_cb, RESULT_SUCCESS, response, user_data)
class _Method:
"""Right, so python people thought it would be funny to make this
@@ -209,7 +212,7 @@ class GlibServerProxy(xmlrpclib.ServerProxy):
Here, 'xmlrpc_test_cb' is the callback function, which has the following
signature:
def xmlrpc_test_cb(response, user_data=None):
def xmlrpc_test_cb(result_status, response, user_data=None):
...
"""
def __init__(self, uri, encoding=None, verbose=0, allow_none=0):
@@ -236,14 +239,17 @@ class GlibServerProxy(xmlrpclib.ServerProxy):
request = xmlrpclib.dumps(params, methodname, encoding=self._encoding,
allow_none=self._allow_none)
response = self._transport.start_request(
self._host,
self._handler,
request,
verbose=self._verbose,
request_cb=request_cb,
user_data=user_data
)
try:
response = self._transport.start_request(
self._host,
self._handler,
request,
verbose=self._verbose,
request_cb=request_cb,
user_data=user_data
)
except socket.error, exc:
gobject.idle_add(request_cb, RESULT_FAILED, None, user_data)
def __getattr__(self, name):
# magic method dispatcher