summaryrefslogtreecommitdiff
path: root/service/pixelated/resources/logout_resource.py
diff options
context:
space:
mode:
authorZara Gebru <zgebru@thoughtworks.com>2016-04-08 14:59:45 +0200
committerZara Gebru <zgebru@thoughtworks.com>2016-04-08 14:59:45 +0200
commit22a48f48963053e8e00777e305a42d5ec012874f (patch)
treedada446c31b92531b5fc509b27c35208fa48dc5a /service/pixelated/resources/logout_resource.py
parent373c9e043b15226dd92c150e6953052ad3d62cfa (diff)
Issue #431: add errback on logout
Diffstat (limited to 'service/pixelated/resources/logout_resource.py')
-rw-r--r--service/pixelated/resources/logout_resource.py17
1 files changed, 14 insertions, 3 deletions
diff --git a/service/pixelated/resources/logout_resource.py b/service/pixelated/resources/logout_resource.py
index 01092b05..e26ec4b2 100644
--- a/service/pixelated/resources/logout_resource.py
+++ b/service/pixelated/resources/logout_resource.py
@@ -1,11 +1,15 @@
-from twisted.web.server import NOT_DONE_YET
+import logging
-from pixelated.resources import BaseResource
-from twisted.web import util
from twisted.internet import defer
+from twisted.web import util
+from twisted.web.http import INTERNAL_SERVER_ERROR
+from twisted.web.server import NOT_DONE_YET
+from pixelated.resources import BaseResource
from pixelated.resources.login_resource import LoginResource
+log = logging.getLogger(__name__)
+
class LogoutResource(BaseResource):
BASE_URL = "logout"
@@ -23,7 +27,14 @@ class LogoutResource(BaseResource):
request.write(content)
request.finish()
+ def handle_error(e):
+ log.error(e)
+ request.setResponseCode(INTERNAL_SERVER_ERROR)
+ request.write('Something went wrong!')
+ request.finish()
+
d = self._execute_logout(request)
d.addCallback(_redirect_to_login)
+ d.addErrback(handle_error)
return NOT_DONE_YET