Here are the examples of the python api twisted.web.xmlrpc.Proxy taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.
20 Examples
3
Example 1
def getMethods(self, url):
_server = self._server = Proxy(url.encode('utf8'))
self.startWorking()
return _server.callRemote('listMethods').addCallback(
# call self.receivedMethods(result, _server, "") on success
self.receivedMethods, _server, ""
).addErrback(
# on error, call this lambda
lambda e: _server.callRemote('system.listMethods').addCallback(
# call self.receievedMethods(result, _server, "system.")
self.receivedMethods, _server, 'system.'
)
).addErrback(
# log the failure instance, with a method
self.receivedMethodsFailure, 'listMethods()'
).addBoth(
# stop working nomatter what trap all errors (returns None)
lambda n:self.stopWorking()
)
3
Example 2
def getMethods(self, url):
_server = self.k_server = Proxy(url.encode('utf8'))
self.startWorking()
return _server.callRemote('listMethods').addCallback(
# call self.receivedMethods(result, _server, "") on success
self.receivedMethods, _server, ""
).addErrback(
# on error, call this lambda
lambda e: _server.callRemote('system.listMethods').addCallback(
# call self.receievedMethods(result, _server, "system.")
self.receivedMethods, _server, 'system.'
)
).addErrback(
# log the failure instance, with a method
self.receivedMethodsFailure, 'listMethods()'
).addBoth(
# stop working nomatter what trap all errors (returns None)
lambda n:self.stopWorking()
)
3
Example 3
def proxy(self, factory=None):
"""
Return a new xmlrpc.Proxy for the test site created in
setUp(), using the given factory as the queryFactory, or
self.queryFactory if no factory is provided.
"""
p = xmlrpc.Proxy("http://127.0.0.1:%d/" % self.port)
if factory is None:
p.queryFactory = self.queryFactory
else:
p.queryFactory = factory
return p
3
Example 4
Project: SubliminalCollaborator Source File: test_xmlrpc.py
def test_tcpTimeout(self):
"""
For I{HTTP} URIs, L{xmlrpc.Proxy.callRemote} passes the value it
received for the C{connectTimeout} parameter as the C{timeout} argument
to the underlying connectTCP call.
"""
reactor = MemoryReactor()
proxy = xmlrpc.Proxy("http://127.0.0.1:69", connectTimeout=2.0,
reactor=reactor)
proxy.callRemote("someMethod")
self.assertEqual(reactor.tcpClients[0][3], 2.0)
3
Example 5
Project: SubliminalCollaborator Source File: test_xmlrpc.py
def test_sslTimeout(self):
"""
For I{HTTPS} URIs, L{xmlrpc.Proxy.callRemote} passes the value it
received for the C{connectTimeout} parameter as the C{timeout} argument
to the underlying connectSSL call.
"""
reactor = MemoryReactor()
proxy = xmlrpc.Proxy("https://127.0.0.1:69", connectTimeout=3.0,
reactor=reactor)
proxy.callRemote("someMethod")
self.assertEqual(reactor.sslClients[0][4], 3.0)
3
Example 6
def proxy(self, factory=None):
p = xmlrpc.Proxy("http://127.0.0.1:%d" % self.port)
if factory is None:
p.queryFactory = self.queryFactory
else:
p.queryFactory = factory
return p
3
Example 7
def createServer(self, resource):
self.p = reactor.listenTCP(
0, server.Site(resource), interface="127.0.0.1")
self.addCleanup(self.p.stopListening)
self.port = self.p.getHost().port
self.proxy = xmlrpc.Proxy('http://127.0.0.1:%d' % self.port)
3
Example 8
def setUp(self):
"""
Create a new XML-RPC server with C{allowNone} set to C{True}.
"""
kwargs = {self.flagName: True}
self.p = reactor.listenTCP(
0, server.Site(Test(**kwargs)), interface="127.0.0.1")
self.addCleanup(self.p.stopListening)
self.port = self.p.getHost().port
self.proxy = xmlrpc.Proxy(
"http://127.0.0.1:%d/" % (self.port,), **kwargs)
3
Example 9
Project: SubliminalCollaborator Source File: test_xmlrpc.py
def test_cannotSetDateTime(self):
"""
Setting L{XMLRPC.useDateTime} to C{True} after initialization raises
L{RuntimeError}.
"""
xmlrpc = XMLRPC(useDateTime=False)
self.assertRaises(RuntimeError, setattr, xmlrpc, "useDateTime", True)
proxy = Proxy("http://localhost/", useDateTime=False)
self.assertRaises(RuntimeError, setattr, proxy, "useDateTime", True)
3
Example 10
def test_authInfoInURL(self):
p = xmlrpc.Proxy("http://%s:%[email protected]:%d/" % (
self.user, self.password, self.port))
d = p.callRemote("authinfo")
d.addCallback(self.assertEqual, [self.user, self.password])
return d
3
Example 11
def test_explicitAuthInfo(self):
p = xmlrpc.Proxy("http://127.0.0.1:%d/" % (
self.port,), self.user, self.password)
d = p.callRemote("authinfo")
d.addCallback(self.assertEqual, [self.user, self.password])
return d
3
Example 12
def test_explicitAuthInfoOverride(self):
p = xmlrpc.Proxy("http://wrong:[email protected]:%d/" % (
self.port,), self.user, self.password)
d = p.callRemote("authinfo")
d.addCallback(self.assertEqual, [self.user, self.password])
return d
3
Example 13
def test_erroneousResponse(self):
"""
Test that calling the xmlrpc client on a static http server raises
an exception.
"""
proxy = xmlrpc.Proxy("http://127.0.0.1:%d/" %
(self.port.getHost().port,))
return self.assertFailure(proxy.callRemote("someMethod"), Exception)
0
Example 14
Project: vumi Source File: test_mtn_rwanda_ussd.py
@inlineCallbacks
def test_inbound_request_and_reply(self):
address = self.transport.xmlrpc_server.getHost()
url = 'http://' + address.host + ':' + str(address.port) + '/foo/'
proxy = Proxy(url)
x = proxy.callRemote('handleUSSD', {
'TransactionId': '0001',
'USSDServiceCode': '543',
'USSDRequestString': '14321*1000#',
'MSISDN': '275551234',
'USSDEncoding': 'GSM0338', # Optional
'TransactionTime': '2013-07-05T22:58:47.565596'
})
[msg] = yield self.tx_helper.wait_for_dispatched_inbound(1)
expected_inbound_payload = {
'message_id': '',
'content': None,
'from_addr': '', # msisdn
'to_addr': '', # service code
'session_event': TransportUserMessage.SESSION_RESUME,
'transport_name': self.tx_helper.transport_name,
'transport_type': 'ussd',
'transport_metadata': {
'mtn_rwanda_ussd': {
'transaction_id': '0001',
'transaction_time': '2013-07-05T22:58:47.565596',
},
},
}
yield self.assert_inbound_message(
expected_inbound_payload,
msg,
from_addr='275551234',
to_addr='543',
session_event=TransportUserMessage.SESSION_NEW)
expected_reply = {'MSISDN': '275551234',
'TransactionId': '0001',
'TransactionTime': datetime.now().isoformat(),
'USSDEncoding': 'GSM0338',
'USSDResponseString': 'Test message',
'USSDServiceCode': '543',
'action': 'end'}
self.tx_helper.make_dispatch_reply(
msg, expected_reply['USSDResponseString'], continue_session=False)
received_text = yield x
for key in received_text.keys():
if key == 'TransactionTime':
self.assertEqual(len(received_text[key]),
len(expected_reply[key]))
else:
self.assertEqual(expected_reply[key], received_text[key])
0
Example 15
Project: vumi Source File: test_mtn_rwanda_ussd.py
@inlineCallbacks
def test_inbound_faulty_request(self):
address = self.transport.xmlrpc_server.getHost()
url = 'http://' + address.host + ':' + str(address.port) + '/foo/'
proxy = Proxy(url)
try:
yield proxy.callRemote('handleUSSD', {
'TransactionId': '0001',
'USSDServiceCode': '543',
'USSDRequestString': '14321*1000#',
'MSISDN': '275551234',
'USSDEncoding': 'GSM0338',
})
[msg] = yield self.tx_helper.wait_for_dispatched_inbound(1)
except xmlrpclib.Fault, e:
self.assertEqual(e.faultCode, 8002)
self.assertEqual(e.faultString, 'error')
else:
self.fail('We expected an invalid request error.')
[failure] = self.flushLoggedErrors(InvalidRequest)
err = failure.value
self.assertEqual(str(err), '4001: Missing Parameters')
0
Example 16
Project: vumi Source File: test_mtn_rwanda_ussd.py
@inlineCallbacks
def test_timeout(self):
address = self.transport.xmlrpc_server.getHost()
url = 'http://' + address.host + ':' + str(address.port) + '/foo/'
proxy = Proxy(url)
x = proxy.callRemote('handleUSSD', {
'TransactionId': '0001',
'USSDServiceCode': '543',
'USSDRequestString': '14321*1000#',
'MSISDN': '275551234',
'TransactionTime': '2013-07-05T22:58:47.565596'
})
[msg] = yield self.tx_helper.wait_for_dispatched_inbound(1)
self.clock.advance(30)
try:
yield x
except xmlrpclib.Fault, e:
self.assertEqual(e.faultCode, 8002)
self.assertEqual(e.faultString, 'error')
else:
self.fail('We expected a timeout error.')
[failure] = self.flushLoggedErrors(RequestTimedOutError)
err = failure.value
self.assertTrue(str(err).endswith('timed out.'))
0
Example 17
Project: vumi Source File: opera.py
@inlineCallbacks
def setup_transport(self):
log.msg('Starting the OperaInboundTransport config: %s' %
self.transport_name)
r_prefix = "%(transport_name)s@%(url)s" % self.config
self.session_manager = yield SessionManager.from_redis_config(
self.r_config, r_prefix, self.message_id_lifetime)
self.proxy = xmlrpc.Proxy(self.opera_url)
self.default_values = {
'Service': self.opera_service,
'Password': self.opera_password,
'Channel': self.opera_channel,
}
# start receipt web resource
self.web_resource = yield self.start_web_resources(
[
(OperaReceiptResource(self.handle_raw_incoming_receipt),
self.web_receipt_path),
(OperaReceiveResource(self.publish_message),
self.web_receive_path),
(OperaHealthResource(), 'health'),
],
self.web_port
)
0
Example 18
def web_client(self):
return Proxy(self.service_url)
0
Example 19
def makeRequest(self):
proxy = Proxy(self.url)
proxy.callRemote(self.method,*self.params).addCallbacks(self.retSuccess, self.retFail)
self.start_time = datetime.datetime.now()
0
Example 20
@check_arg(page='[0-9]+')
@defer.inlineCallbacks
def cmd_search(request, query='', page='0'):
if not query:
defer.returnValue(dict(ok=False, desc='So where is your query?'))
if len(query) > 2048:
defer.returnValue(dict(ok=False, desc='Search query is too long.'))
service = Proxy('http://127.0.0.1:%d/' % config.search_port)
start = time.time()
try:
result = yield service.callRemote('search', query, int(page))
except Exception:
log.msg('SEARCH ERROR:\n\n' + traceback.format_exc())
defer.returnValue(dict(ok=False, desc='Search internal error.'))
else:
if result is None:
defer.returnValue(dict(ok=False, desc='Bad request.'))
t = time.time() - start
log.msg('Queried "%s" by %s. Found %s results in %.3fs.' % (
query, request.user['name'] if request.user else '*', result['estimated'], t))
defer.returnValue(dict(ok=True, format='search', **result))