From a5ba3dbba96285a08da99c00bd0613d076ad0346 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Mon, 6 Oct 2014 16:10:22 +0200 Subject: Support new API methods, changed DB scheme, updated .sql script --- .../openslx/imagemaster/session/SessionManager.java | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) (limited to 'src/main/java/org/openslx/imagemaster/session/SessionManager.java') diff --git a/src/main/java/org/openslx/imagemaster/session/SessionManager.java b/src/main/java/org/openslx/imagemaster/session/SessionManager.java index 295b53e..e468278 100644 --- a/src/main/java/org/openslx/imagemaster/session/SessionManager.java +++ b/src/main/java/org/openslx/imagemaster/session/SessionManager.java @@ -28,12 +28,15 @@ public class SessionManager synchronized ( sessions ) { sessions.put( authToken, session ); + sessions.put( sessionId, session ); } return new SessionData( sessionId, authToken, session.getSatelliteAddress() ); } - public static Session getSession( String token ) + public static Session getSessionFromToken( String token ) { + if ( token == null || token.length() != 64 ) + return null; final Session session; synchronized ( sessions ) { session = sessions.get( token ); @@ -60,7 +63,6 @@ public class SessionManager while ( it.hasNext() ) { final Session s = it.next(); if ( s.timedOut() ) { - log.debug( "Removing old session of " + s.getLogin() ); it.remove(); } } @@ -71,4 +73,18 @@ public class SessionManager gcThread.start(); } + public static Object getSessionFromSessionId( String sessionId ) + { + if ( sessionId == null || sessionId.length() != 32 ) + return null; + final Session session; + synchronized ( sessions ) { + session = sessions.get( sessionId ); + } + if ( session == null || session.timedOut() ) { + return null; + } + return session; + } + } -- cgit v1.2.3-55-g7522