From 51c76f635a152082d070c3b59421c4925aedfbe4 Mon Sep 17 00:00:00 2001 From: Jonathan Frank Date: Wed, 10 Sep 2014 15:54:27 -0400 Subject: [PATCH 1/2] Add support for adding custom data at the top level of the json request (Thanks to Alan Robson for contributing - source: https://groups.google.com/forum/#!msg/jsonrpclib/U1f-aQ-8F6E/E29j77N2BqAJ) --- jsonrpclib/config.py | 3 +++ jsonrpclib/jsonrpc.py | 3 +++ 2 files changed, 6 insertions(+) diff --git a/jsonrpclib/config.py b/jsonrpclib/config.py index 4d28f1b..6e26e4d 100644 --- a/jsonrpclib/config.py +++ b/jsonrpclib/config.py @@ -30,6 +30,9 @@ class Config(object): '.'.join([str(ver) for ver in sys.version_info[0:3]]) # User agent to use for calls. _instance = None + + #Allow extra parameters + extras = {} @classmethod def instance(cls): diff --git a/jsonrpclib/jsonrpc.py b/jsonrpclib/jsonrpc.py index e11939a..1fca5bc 100644 --- a/jsonrpclib/jsonrpc.py +++ b/jsonrpclib/jsonrpc.py @@ -414,6 +414,7 @@ def __init__(self, rpcid=None, version=None): version = config.version self.id = rpcid self.version = float(version) + self.extras = config.extras def request(self, method, params=[]): if type(method) not in types.StringTypes: @@ -421,6 +422,8 @@ def request(self, method, params=[]): if not self.id: self.id = random_id() request = { 'id':self.id, 'method':method } + request.update(self.extras) + if params: request['params'] = params if self.version >= 2: From 8e405d8a18126bdbb9322e28efb63ae9b6ea9e65 Mon Sep 17 00:00:00 2001 From: Jonathan Frank Date: Wed, 10 Sep 2014 15:57:24 -0400 Subject: [PATCH 2/2] Updated version number --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 72f8b35..e318f44 100755 --- a/setup.py +++ b/setup.py @@ -17,7 +17,7 @@ distutils.core.setup( name = "jsonrpclib", - version = "0.1.3", + version = "0.1.4", packages = ["jsonrpclib"], author = "Josh Marshall", author_email = "catchjosh@gmail.com",