package org.openslx.imagemaster.session; import org.openslx.imagemaster.Globals; /** * Simple representation of a user session. Contains user-related data and * information on whether the session is still valid. * */ public class Session { private static final long TIMEOUT = Long.valueOf( Globals.getSessionTimeoutUser() ) * 1000L; private long timeOut = 0; private final User user; public Session(final User dbuser) { this.user = dbuser; this.timeOut = System.currentTimeMillis() + TIMEOUT; } public synchronized void refresh() { if ( timedOut() ) return; // Don't allow refreshing timed out session this.timeOut = System.currentTimeMillis() + TIMEOUT; } public synchronized boolean timedOut() { return System.currentTimeMillis() > this.timeOut; } public String getSatelliteAddress() { return user.satelliteAddress; } public String getLogin() { return user.eppn; } public String getFirstName() { return user.firstName; } public String getLastName() { return user.lastName; } public String getEMail() { return user.eMail; } public String getOrgenizationId() { return user.organizationId; } }