git.fiddlerwoaroof.com
Browse code

fixed a problem with eventhandler

Ed L authored on 01/02/2012 18:44:35
Showing 2 changed files
... ...
@@ -77,7 +77,7 @@ highlight_language = 'python'
77 77
 master_doc = 'index'
78 78
 
79 79
 # General information about the project.
80
-project = u'JSONRPC'
80
+project = u'JSON-RPC'
81 81
 copyright = u'2011, Edward Langley'
82 82
 
83 83
 # The version info for the project you're documenting, acts as replacement for
... ...
@@ -90,7 +90,7 @@ class ServerEvents(object):
90 90
 
91 91
 		:returns: a callable or None if the method is not found'''
92 92
 		if self.methods is not None:
93
-			return self.methods.get_method(method_name)
93
+			return self.methods.get(method_name)
94 94
 		else:
95 95
 			raise NotImplementedError
96 96
 
... ...
@@ -134,7 +134,7 @@ class ServerEvents(object):
134 134
 		return threads.deferToThread(method, *a, **kw)
135 135
 
136 136
 	def defer_with_rpcrequest(self, method, rpcrequest, *a, **kw):
137
-		d = threads.deferToThread(method, rpcrequest, *a, **kw)
137
+		d = self.defer(method, rpcrequest, *a, **kw)
138 138
 
139 139
 		@d.addCallback
140 140
 		def _inner(result):
... ...
@@ -177,7 +177,9 @@ class JSON_RPC(Resource):
177 177
 		try:
178 178
 			try:
179 179
 				content = jsonrpc.jsonutil.decode(request.content.read())
180
-			except ValueError: raise jsonrpc.common.ParseError
180
+			except ValueError:
181
+				self.eventhandler.log(None, request, True)
182
+				raise jsonrpc.common.ParseError
181 183
 
182 184
 			content = self.eventhandler.processcontent(content, request)
183 185
 
... ...
@@ -212,6 +214,7 @@ class JSON_RPC(Resource):
212 214
 		if contents == []: raise jsonrpc.common.InvalidRequest
213 215
 
214 216
 		def callmethod(rpcrequest, request, add, **kwargs):
217
+			print 'jsonrpc.server callmethod: %s, %s, %s, %s' % (rpcrequest, request, add, kwargs)
215 218
 			add.update(kwargs)
216 219
 			result = self.eventhandler.callmethod(request, rpcrequest, **add)
217 220
 			return result
... ...
@@ -240,6 +243,7 @@ class JSON_RPC(Resource):
240 243
 							methodresult.raiseException()
241 244
 						except Exception, e:
242 245
 							res = self.render_error(e, rpcrequest.id)
246
+							self.eventhandler.log(res, request, error=True)
243 247
 
244 248
 					if res.id is not None:
245 249
 						result.append(res)