Skip to main content
https://travis-ci.org/mosquito/tornado-xmlrpc.svg Latest Version https://img.shields.io/pypi/wheel/tornado-xmlrpc.svg https://img.shields.io/pypi/pyversions/tornado-xmlrpc.svg https://img.shields.io/pypi/l/tornado-xmlrpc.svg

XML-RPC server and client implementation based on tornado. Using lxml and AsyncHttpClient.

Example:

from tornado_xmlrpc import handler, client
from tornado.testing import *


class XMLRPCTestHandler(handler.XMLRPCHandler):
    def rpc_test(self):
        return None

    def rpc_args(self, *args):
        return len(args)

    def rpc_kwargs(self, **kwargs):
        return len(kwargs)

    def rpc_args_kwargs(self, *args, **kwargs):
        return len(args) + len(kwargs)

    def rpc_exception(self):
        raise Exception("YEEEEEE!!!")


class TestSimple(tornado.testing.AsyncHTTPTestCase):
    def setUp(self):
        super(TestSimple, self).setUp()
        self.server = client.ServerProxy("http://localhost:%d" % self.get_http_port())

    def tearDown(self):
        super(TestSimple, self).tearDown()
        self.server = None

    def get_app(self):
        return Application(handlers=[
            ('/', XMLRPCTestHandler),
        ])

    @gen_test
    def test_00_test(self):
        result = yield self.server.test()
        self.assertIsNone(result)

    @gen_test
    def test_10_args(self):
        result = yield self.server.args(1, 2, 3, 4, 5)
        self.assertEqual(result, 5)

    @gen_test
    def test_20_kwargs(self):
        result = yield self.server.kwargs(foo=1, bar=2)
        self.assertEqual(result, 2)

    @gen_test
    def test_20_kwargs(self):
        result = yield self.server.args_kwargs(1, 2, 3, 4, 5, foo=1, bar=2)
        self.assertEqual(result, 7)

    @gen_test
    def test_30_exception(self):
        try:
            yield self.server.exception()
        except client.RemoteServerException as e:
            self.assertIn("YEEEEEE!!!", e.message)
        else:
            raise RuntimeError("No exception")

Release files for tornado-xmlrpc 1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tornado-xmlrpc 1.6
File Size Uploaded
tornado-xmlrpc-1.6.tar.gz 6.2 kB Details

Release files / tornado-xmlrpc-1.6.tar.gz

Download URL tornado-xmlrpc-1.6.tar.gz
Size 6.2 kB
Tags Source
SHA-256 checksum
How to use checksums
ba6f193973a2bd56a37cf09a8b3728128eeda059de3730e2017664ea541a61cb
BLAKE2b-256 checksum
How to use checksums
8baf910d25fb96fd109a3017d890422458ec93e821fd5eed672eb358e6e6c354
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

1.8.2

1 release file

1.7.1

1 release file

1.7.0

1 release file

This release

1.6 This release

1 release file

1.5

1 release file

1.4

1 release file

1.3

1 release file

1.2

2 release files

1.1

2 release files

1.0

6 release files

0.6

3 release files

0.5

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page