summaryrefslogtreecommitdiff
path: root/service/pixelated
diff options
context:
space:
mode:
authorNavaL <ayoyo@thoughtworks.com>2016-06-23 12:13:20 +0200
committerNavaL <ayoyo@thoughtworks.com>2016-06-23 12:13:20 +0200
commitf1e5f54048cfadec42990f3dfb212c7147bf5faa (patch)
tree00e0b29d62a2b90fc350a25c18b833f6e6ad1330 /service/pixelated
parent3b678f8d23a116a231be04e6f4da2219bd636362 (diff)
refactoring: renaming services factory methods to relate them to user services sessions
Diffstat (limited to 'service/pixelated')
-rw-r--r--service/pixelated/application.py2
-rw-r--r--service/pixelated/config/services.py11
-rw-r--r--service/pixelated/resources/__init__.py2
-rw-r--r--service/pixelated/resources/auth.py2
-rw-r--r--service/pixelated/resources/login_resource.py2
-rw-r--r--service/pixelated/resources/logout_resource.py6
6 files changed, 14 insertions, 11 deletions
diff --git a/service/pixelated/application.py b/service/pixelated/application.py
index 7d8cd76c..65e974b6 100644
--- a/service/pixelated/application.py
+++ b/service/pixelated/application.py
@@ -113,7 +113,7 @@ def add_top_level_system_callbacks(deferred, services_factory):
def _log_user_out(event, user_data):
log.info('Invalid soledad token, logging out %s' % user_data)
user_data = {'user_id': user_data['uuid']} if 'uuid' in user_data else {'user_id': user_data, 'using_email': True}
- services_factory.log_out_user(**user_data)
+ services_factory.destroy_session(**user_data)
def _log_user_out_on_token_expire(leap_session):
register(events.SOLEDAD_INVALID_AUTH_TOKEN, _log_user_out)
diff --git a/service/pixelated/config/services.py b/service/pixelated/config/services.py
index cec4803e..b36eb0bb 100644
--- a/service/pixelated/config/services.py
+++ b/service/pixelated/config/services.py
@@ -90,17 +90,17 @@ class ServicesFactory(object):
def map_email(self, username, user_id):
self._map_email[username] = user_id
- def is_logged_in(self, user_id):
+ def has_session(self, user_id):
return user_id in self._services_by_user
def services(self, user_id):
return self._services_by_user[user_id]
- def log_out_user(self, user_id, using_email=False):
+ def destroy_session(self, user_id, using_email=False):
if using_email:
user_id = self._map_email[user_id.split('@')[0]]
- if self.is_logged_in(user_id):
+ if self.has_session(user_id):
_services = self._services_by_user[user_id]
_services.close()
del self._services_by_user[user_id]
@@ -126,5 +126,8 @@ class SingleUserServicesFactory(object):
def services(self, user_id):
return self._services
- def log_out_user(self, user_id, using_email=False):
+ def has_session(self, user_id):
+ return True
+
+ def destroy_session(self, user_id, using_email=False):
reactor.stop()
diff --git a/service/pixelated/resources/__init__.py b/service/pixelated/resources/__init__.py
index 8fc8080a..0015db16 100644
--- a/service/pixelated/resources/__init__.py
+++ b/service/pixelated/resources/__init__.py
@@ -72,7 +72,7 @@ class BaseResource(Resource):
def is_logged_in(self, request):
session = self.get_session(request)
- return session.is_logged_in() and self._services_factory.is_logged_in(session.user_uuid)
+ return session.is_logged_in() and self._services_factory.has_session(session.user_uuid)
def get_session(self, request):
return IPixelatedSession(request.getSession())
diff --git a/service/pixelated/resources/auth.py b/service/pixelated/resources/auth.py
index a6ab5396..5aedad3a 100644
--- a/service/pixelated/resources/auth.py
+++ b/service/pixelated/resources/auth.py
@@ -82,7 +82,7 @@ class SessionChecker(object):
def requestAvatarId(self, credentials):
session = self.get_session(credentials.request)
- if session.is_logged_in() and self._services_factory.is_logged_in(session.user_uuid):
+ if session.is_logged_in() and self._services_factory.has_session(session.user_uuid):
return defer.succeed(session.user_uuid)
return defer.succeed(ANONYMOUS)
diff --git a/service/pixelated/resources/login_resource.py b/service/pixelated/resources/login_resource.py
index eaa21bd9..ab91176a 100644
--- a/service/pixelated/resources/login_resource.py
+++ b/service/pixelated/resources/login_resource.py
@@ -159,7 +159,7 @@ class LoginResource(BaseResource):
@defer.inlineCallbacks
def _setup_user_services(self, leap_session, request):
user_id = leap_session.user_auth.uuid
- if not self._services_factory.is_logged_in(user_id):
+ if not self._services_factory.has_session(user_id):
yield self._services_factory.create_services_from(leap_session)
self._services_factory.map_email(self.creds.username, user_id)
diff --git a/service/pixelated/resources/logout_resource.py b/service/pixelated/resources/logout_resource.py
index 4c700afe..a4fe584f 100644
--- a/service/pixelated/resources/logout_resource.py
+++ b/service/pixelated/resources/logout_resource.py
@@ -28,9 +28,9 @@ class LogoutResource(BaseResource):
@defer.inlineCallbacks
def _execute_logout(self, request):
- session = self.get_session(request)
- yield self._services_factory.log_out_user(session.user_uuid)
- session.expire()
+ http_session = self.get_session(request)
+ yield self._services_factory.destroy_session(http_session.user_uuid)
+ http_session.expire()
def render_POST(self, request):
def _redirect_to_login(_):