Browse code
set server to always return reponse code 200, added hook to set alternative response code
Ed L authored on 20/10/2011 18:56:00
Showing 1 changed files
Showing 1 changed files
... | ... |
@@ -77,12 +77,15 @@ class ServerEvents(object): |
77 | 77 |
'''Given the freshly decoded content of the request, return what content should be used''' |
78 | 78 |
return content |
79 | 79 |
|
80 |
- def setResponseCode(self, result, request): |
|
81 |
- code = 200 |
|
80 |
+ def getresponsecode(self, result): |
|
81 |
+ # returns 200 so that the python client can see something useful |
|
82 |
+ return 200 |
|
83 |
+ # for example |
|
84 |
+ #code = 200 |
|
82 | 85 |
#if not isinstance(result, list): |
83 | 86 |
# if result is not None and result.error is not None: |
84 | 87 |
# code = result.error.code or 500 |
85 |
- request.setResponseCode(code) |
|
88 |
+ #return code |
|
86 | 89 |
|
87 | 90 |
|
88 | 91 |
|
... | ... |
@@ -184,7 +187,8 @@ class JSON_RPC(Resource): |
184 | 187 |
def _cbRender(self, result, request): |
185 | 188 |
@threads.deferToThread |
186 | 189 |
def _inner(*args, **_): |
187 |
- self.eventhandler.setResponseCode(result, request) |
|
190 |
+ code = self.eventhandler.getresponsecode(result, request) |
|
191 |
+ request.setResponseCode(code) |
|
188 | 192 |
self.eventhandler.log(result, request, error=False) |
189 | 193 |
if result is not None: |
190 | 194 |
request.setHeader("content-type", 'application/json') |
... | ... |
@@ -206,7 +210,9 @@ class JSON_RPC(Resource): |
206 | 210 |
else: err = result |
207 | 211 |
|
208 | 212 |
err = self.render_error(err, id) |
209 |
- self.eventhandler.setResponseCode(err, request) |
|
213 |
+ |
|
214 |
+ code = self.eventhandler.getresponsecode(result, request) |
|
215 |
+ request.setResponseCode(code) |
|
210 | 216 |
|
211 | 217 |
request.setHeader("content-type", 'application/json') |
212 | 218 |
result_ = jsonrpc.jsonutil.encode(err).encode('utf-8') |