summaryrefslogtreecommitdiffstats
path: root/module/remote/wsbackend
diff options
context:
space:
mode:
authorGravatar RaNaN <Mast3rRaNaN@hotmail.de> 2013-01-02 22:03:02 +0100
committerGravatar RaNaN <Mast3rRaNaN@hotmail.de> 2013-01-02 22:03:02 +0100
commita786fef06639da439f9edd367db36388dc1c2658 (patch)
tree84b7d7acf23c300bef4b0fd5ee744e408ffc1152 /module/remote/wsbackend
parentNew naming: pyLoadCore -> pyload (diff)
downloadpyload-a786fef06639da439f9edd367db36388dc1c2658.tar.xz
little cleanup, improved handling of custom exceptions via api
Diffstat (limited to 'module/remote/wsbackend')
-rw-r--r--module/remote/wsbackend/AbstractHandler.py1
-rw-r--r--module/remote/wsbackend/ApiHandler.py6
2 files changed, 6 insertions, 1 deletions
diff --git a/module/remote/wsbackend/AbstractHandler.py b/module/remote/wsbackend/AbstractHandler.py
index 276f6fa38..f843fc278 100644
--- a/module/remote/wsbackend/AbstractHandler.py
+++ b/module/remote/wsbackend/AbstractHandler.py
@@ -28,6 +28,7 @@ class AbstractHandler:
PATH = "/"
OK = 200
+ BAD_REQUEST = 400
UNAUTHORIZED = 401
FORBIDDEN = 403
NOT_FOUND = 404
diff --git a/module/remote/wsbackend/ApiHandler.py b/module/remote/wsbackend/ApiHandler.py
index 52dd05b9f..eec546d47 100644
--- a/module/remote/wsbackend/ApiHandler.py
+++ b/module/remote/wsbackend/ApiHandler.py
@@ -18,6 +18,8 @@
from mod_pywebsocket.msgutil import receive_message
+from module.Api import ExceptionObject
+
from AbstractHandler import AbstractHandler
class ApiHandler(AbstractHandler):
@@ -50,7 +52,7 @@ class ApiHandler(AbstractHandler):
func, args, kwargs = self.handle_call(msg, req)
if not func:
- return # Result was already sent
+ return # handle_call already sent the result
if func == 'login':
user = self.api.checkAuth(*args, **kwargs)
@@ -74,6 +76,8 @@ class ApiHandler(AbstractHandler):
try:
result = getattr(req.api, func)(*args, **kwargs)
+ except ExceptionObject, e:
+ return self.send_result(req, self.BAD_REQUEST, e)
except AttributeError:
return self.send_result(req, self.NOT_FOUND, "Not Found")
except Exception, e: