def _ebRender(self, failure, id): if isinstance(failure.value, jsonrpclib.Fault): return failure.value log.err(failure) value = failure.value code = self._map_exception(type(value)) return jsonrpclib.Fault(code, str(value))
def _cbRender(self, result, request, id, version): def default_decimal(obj): if isinstance(obj, Decimal): return float(obj) if isinstance(result, Handler): result = result.result if isinstance(result, dict): result = result['result'] if version == jsonrpclib.VERSION_PRE1: if not isinstance(result, jsonrpclib.Fault): result = (result, ) # Convert the result (python) to JSON-RPC try: s = jsonrpclib.dumps(result, version=version, default=default_decimal) except: f = jsonrpclib.Fault(self.FAILURE, "can't serialize output") s = jsonrpclib.dumps(f, version=version) request.setHeader("content-length", str(len(s))) request.write(s) request.finish()
def _getFunction(self, functionPath): try: return jsonrpc.JSONRPC._getFunction(self, functionPath) except jsonrpclib.NoSuchFunction: if functionPath.startswith("SESSION"): raise jsonrpclib.Fault(self.SESSION_EXPIRED, "Session non-existant/expired.") else: raise
def _cbRender(self, result, req_id): if not isinstance(result, jsonrpclib.Fault): result = (result, ) try: s = jsonrpclib.dumps(result, id=req_id, version=self.version) except: f = jsonrpclib.Fault(self.FAILURE, "can't serialize output") s = jsonrpclib.dumps(f, id=req_id, version=self.version) return self.sendString(six.b(s))
def _cbRender(self, result): if not isinstance(result, jsonrpclib.Fault): result = (result, ) #s = None #e = None try: s = jsonrpclib.dumps(result) except: f = jsonrpclib.Fault(self.FAILURE, "can't serialize output") #e = jsonrpclib.dumps(f) s = jsonrpclib.dumps(f) #result = {'result': result, 'error': e} #return self.sendString(jsonrpclib.dumps(result)) return self.sendString(s)
def _cbRender(self, result, request, id, version): if isinstance(result, Handler): result = result.result if version == jsonrpclib.VERSION_PRE1: if not isinstance(result, jsonrpclib.Fault): result = (result,) # Convert the result (python) to JSON-RPC try: s = jsonrpclib.dumps(result, id=id, version=version) if not self.is_jsonp else "%s(%s)" %(self.callback,jsonrpclib.dumps(result, id=id, version=version)) except: f = jsonrpclib.Fault(self.FAILURE, "can't serialize output") s = jsonrpclib.dumps(f, id=id, version=version) if not self.is_jsonp else "%s(%s)" %(self.callback,jsonrpclib.dumps(f, id=id, version=version)) request.setHeader("content-length", str(len(s))) request.write(s) request.finish()
def jsonrpc_deferFault(self): return defer.fail(jsonrpclib.Fault(17, "hi"))
def jsonrpc_fault(self): return jsonrpclib.Fault(12, "hello")
def _ebRender(self, failure, id): if isinstance(failure.value, jsonrpclib.Fault): return failure.value log.err(failure) return jsonrpclib.Fault(self.FAILURE, "error")