|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.lang.Thread
com.ecyrd.jspwiki.util.WikiBackgroundThread
public abstract class WikiBackgroundThread
Abstract Thread subclass that operates in the background;
when it detects the WikiEngineEvent.SHUTDOWN event,
it terminates itself. Subclasses of this method need only
implement the method backgroundTask(), instead of
the normal Thread.run(), and provide a constructor that
passes the WikiEngine and sleep interval. This class is
thread-safe.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class java.lang.Thread |
|---|
Thread.State, Thread.UncaughtExceptionHandler |
| Field Summary |
|---|
| Fields inherited from class java.lang.Thread |
|---|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
| Constructor Summary | |
|---|---|
WikiBackgroundThread(WikiEngine engine,
int sleepInterval)
Constructs a new instance of this background thread with a specified sleep interval, and adds the new instance to the wiki engine's event listeners. |
|
| Method Summary | |
|---|---|
void |
actionPerformed(WikiEvent event)
Listens for WikiEngineEvent.SHUTDOWN
and, if detected, marks the thread for death. |
abstract void |
backgroundTask()
Abstract method that performs the actual work for this background thread; subclasses must implement this method. |
WikiEngine |
getEngine()
Returns the WikiEngine that created this background thread. |
void |
run()
Runs the background thread's backgroundTask() method
at the interval specified at construction. |
void |
shutdown()
Requests the shutdown of this background thread. |
void |
shutdownTask()
Executes a task after shutdown signal was detected. |
void |
startupTask()
Executes a task just after the thread's Thread.run()
method starts, but before the backgroundTask()
task executes. |
| Methods inherited from class java.lang.Thread |
|---|
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public WikiBackgroundThread(WikiEngine engine,
int sleepInterval)
engine - the wiki enginesleepInterval - the interval between invocations of
the thread's Thread.run() method, in seconds| Method Detail |
|---|
public final void actionPerformed(WikiEvent event)
WikiEngineEvent.SHUTDOWN
and, if detected, marks the thread for death.
actionPerformed in interface WikiEventListenerevent - a WikiEvent objectWikiEventListener.actionPerformed(com.ecyrd.jspwiki.event.WikiEvent)
public abstract void backgroundTask()
throws Exception
Exception - Any exception can be thrownpublic WikiEngine getEngine()
public void shutdown()
public final void run()
backgroundTask() method
at the interval specified at construction.
The thread will initially pause for a full sleep interval
before starting, after which it will execute
startupTask(). This method will cleanly
terminate the thread if it has previously
been marked as dead, before which it will execute
shutdownTask(). If any of the three methods
return an exception, it will be re-thrown as a
InternalWikiException.
run in interface Runnablerun in class ThreadThread.run()
public void shutdownTask()
throws Exception
Exception - Any exception can be thrown.
public void startupTask()
throws Exception
Thread.run()
method starts, but before the backgroundTask()
task executes. By default, this method does nothing;
override it to implement custom functionality.
Exception - Any exception can be thrown.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||