diff options
Diffstat (limited to 'src/main/java/org/openslx/imagemaster/serversession/ServerSession.java')
| -rw-r--r-- | src/main/java/org/openslx/imagemaster/serversession/ServerSession.java | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/main/java/org/openslx/imagemaster/serversession/ServerSession.java b/src/main/java/org/openslx/imagemaster/serversession/ServerSession.java new file mode 100644 index 0000000..e15f863 --- /dev/null +++ b/src/main/java/org/openslx/imagemaster/serversession/ServerSession.java @@ -0,0 +1,35 @@ +package org.openslx.imagemaster.serversession; + +public class ServerSession { + + private static final long TIMEOUT = 600L * 1000L; // TODO: config + + private long timeOut = 0; + private final ServerUser serverUser; + + public ServerSession(final ServerUser serverUser) + { + this.serverUser = serverUser; + 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 getOrganization() { + return serverUser.organization; + } + + public String getAddress() { + return serverUser.address; + } +} |
