svgui/pyjs/jsonrpc/jsonrpc.py
changeset 3359 2c924cf26161
parent 3358 7478d0c0dc1c
child 3360 746e3e3f6537
--- a/svgui/pyjs/jsonrpc/jsonrpc.py	Fri Oct 01 15:36:09 2021 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-from __future__ import absolute_import
-import sys
-import gluon.contrib.simplejson as simplejson
-
-
-class JSONRPCServiceBase(object):
-
-    def __init__(self):
-        self.methods = {}
-
-    def response(self, id, result):
-        return simplejson.dumps({'version': '1.1', 'id': id,
-                                 'result': result, 'error': None})
-
-    def error(self, id, code, message):
-        return simplejson.dumps({
-            'id': id,
-            'version': '1.1',
-            'error': {'name': 'JSONRPCError',
-                      'code': code,
-                      'message': message}
-        })
-
-    def add_method(self, name, method):
-        self.methods[name] = method
-
-    def process(self, data):
-        data = simplejson.loads(data)
-        id, method, params = data["id"], data["method"], data["params"]
-        if method in self.methods:
-            try:
-                result = self.methods[method](*params)
-                return self.response(id, result)
-            except Exception:
-                etype, eval, _etb = sys.exc_info()
-                return self.error(id, 100, 'Exception %s: %s' % (etype, eval))
-            except BaseException:
-                etype, eval, _etb = sys.exc_info()
-                return self.error(id, 100, '%s: %s' % (etype.__name__, eval))
-        else:
-            return self.error(id, 100, 'method "%s" does not exist' % method)
-
-    def listmethods(self):
-        return self.methods.keys()