Skip to content

Commit a22d546

Browse files
committed
Merge pull request #56 from w3c/handlers_class_fixup
fixup! Eliminate constructs that prevent passing routes across processes...
2 parents 62b3d66 + cbc69e6 commit a22d546

File tree

2 files changed

+9
-8
lines changed

2 files changed

+9
-8
lines changed

wptserve/handlers.py

+8-7
Original file line numberDiff line numberDiff line change
@@ -223,11 +223,10 @@ def __call__(self, request, response):
223223
python_script_handler = PythonScriptHandler()
224224

225225
class FunctionHandler(object):
226-
def __call__(self, func):
226+
def __init__(self, func):
227227
self.func = func
228-
return self.handle_request
229228

230-
def handle_request(self, request, response):
229+
def __call__(self, request, response):
231230
try:
232231
rv = self.func(request, response)
233232
except Exception:
@@ -250,13 +249,15 @@ def handle_request(self, request, response):
250249

251250
#The generic name here is so that this can be used as a decorator
252251
def handler(func):
253-
return FunctionHandler()(func)
252+
return FunctionHandler(func)
254253

255254

256255
class JsonHandler(object):
257-
def __call__(self, func):
256+
def __init__(self, func):
258257
self.func = func
259-
return FunctionHandler(self.handle_request)
258+
259+
def __call__(self, request, response):
260+
return FunctionHandler(self.handle_request)(request, response)
260261

261262
def handle_request(self, request, response):
262263
rv = self.func(request, response)
@@ -273,7 +274,7 @@ def handle_request(self, request, response):
273274
return value
274275

275276
def json_handler(func):
276-
return JsonHandler()(func)
277+
return JsonHandler(func)
277278

278279
class AsIsHandler(object):
279280
def __init__(self, base_path=None, url_base="/"):

wptserve/server.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ def handle_one_request(self):
253253
err = [e.message]
254254
else:
255255
err = []
256-
err.append(traceback.format_exc())
256+
err.append(traceback.format_exc())
257257
response.set_error(500, "\n".join(err))
258258
self.logger.debug("%i %s %s (%s) %i" % (response.status[0],
259259
request.method,

0 commit comments

Comments
 (0)