Package org.apache.shiro.session.mgt
Class ExecutorServiceSessionValidationScheduler
- java.lang.Object
-
- org.apache.shiro.session.mgt.ExecutorServiceSessionValidationScheduler
-
- All Implemented Interfaces:
Runnable
,SessionValidationScheduler
public class ExecutorServiceSessionValidationScheduler extends Object implements SessionValidationScheduler, Runnable
SessionValidationScheduler implementation that uses aScheduledExecutorService
to callValidatingSessionManager.validateSessions()
everyinterval
milliseconds.- Since:
- 0.9
-
-
Constructor Summary
Constructors Constructor Description ExecutorServiceSessionValidationScheduler()
ExecutorServiceSessionValidationScheduler(ValidatingSessionManager sessionManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
disableSessionValidation()
Disables the session validation job.void
enableSessionValidation()
Creates a single threadScheduledExecutorService
to validate sessions at fixed intervals and enables this scheduler.long
getInterval()
ValidatingSessionManager
getSessionManager()
String
getThreadNamePrefix()
boolean
isEnabled()
Returnstrue
if this Scheduler is enabled and ready to begin validation at the appropriate time,false
otherwise.void
run()
void
setInterval(long interval)
void
setSessionManager(ValidatingSessionManager sessionManager)
void
setThreadNamePrefix(String threadNamePrefix)
-
-
-
Constructor Detail
-
ExecutorServiceSessionValidationScheduler
public ExecutorServiceSessionValidationScheduler()
-
ExecutorServiceSessionValidationScheduler
public ExecutorServiceSessionValidationScheduler(ValidatingSessionManager sessionManager)
-
-
Method Detail
-
getSessionManager
public ValidatingSessionManager getSessionManager()
-
setSessionManager
public void setSessionManager(ValidatingSessionManager sessionManager)
-
getInterval
public long getInterval()
-
setInterval
public void setInterval(long interval)
-
isEnabled
public boolean isEnabled()
Description copied from interface:SessionValidationScheduler
Returnstrue
if this Scheduler is enabled and ready to begin validation at the appropriate time,false
otherwise. It does not indicate if the validation is actually executing at that instant - only that it is prepared to do so at the appropriate time.- Specified by:
isEnabled
in interfaceSessionValidationScheduler
- Returns:
true
if this Scheduler is enabled and ready to begin validation at the appropriate time,false
otherwise.
-
setThreadNamePrefix
public void setThreadNamePrefix(String threadNamePrefix)
-
getThreadNamePrefix
public String getThreadNamePrefix()
-
enableSessionValidation
public void enableSessionValidation()
Creates a single threadScheduledExecutorService
to validate sessions at fixed intervals and enables this scheduler. The executor is created as a daemon thread to allow JVM to shut down- Specified by:
enableSessionValidation
in interfaceSessionValidationScheduler
-
disableSessionValidation
public void disableSessionValidation()
Description copied from interface:SessionValidationScheduler
Disables the session validation job.- Specified by:
disableSessionValidation
in interfaceSessionValidationScheduler
-
-