summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/openslx/imagemaster/session/SessionManager.java
diff options
context:
space:
mode:
authorSimon Rettberg2014-10-06 16:10:22 +0200
committerSimon Rettberg2014-10-06 16:10:22 +0200
commita5ba3dbba96285a08da99c00bd0613d076ad0346 (patch)
treeb05fe851689cfefcec8d77126f60c64f54912a1a /src/main/java/org/openslx/imagemaster/session/SessionManager.java
parentAdd qnd script to fetch all bwIDM members (IdPs) and insert them into db (diff)
downloadmasterserver-a5ba3dbba96285a08da99c00bd0613d076ad0346.tar.gz
masterserver-a5ba3dbba96285a08da99c00bd0613d076ad0346.tar.xz
masterserver-a5ba3dbba96285a08da99c00bd0613d076ad0346.zip
Support new API methods, changed DB scheme, updated .sql script
Diffstat (limited to 'src/main/java/org/openslx/imagemaster/session/SessionManager.java')
-rw-r--r--src/main/java/org/openslx/imagemaster/session/SessionManager.java20
1 files changed, 18 insertions, 2 deletions
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;
+ }
+
}