Package hudson.model
Class TaskThread
- java.lang.Object
-
- java.lang.Thread
-
- hudson.model.TaskThread
-
- All Implemented Interfaces:
Runnable
public abstract class TaskThread extends Thread
Threadfor performing one-off task.Designed to be used inside
TaskAction.- Since:
- 1.191
- Author:
- Kohsuke Kawaguchi
- See Also:
TaskAction
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTaskThread.ListenerAndTextTuple ofTaskListenerandAnnotatedLargeText, representing the interface for producing output and how to retrieve it later.-
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
Constructors Modifier Constructor Description protectedTaskThread(TaskAction owner, TaskThread.ListenerAndText output)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidassociateWith(TaskAction action)Registers that thisTaskThreadis run for the specifiedTaskAction.protected TaskThread.ListenerAndTextcreateListener()Determines where the output of thisTaskThreadgoes.booleanisRunning()protected abstract voidperform(TaskListener listener)Do the actual work.ReaderreadAll()voidrun()voidstart()Starts the task execution asynchronously.-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, stop, suspend, toString, yield
-
-
-
-
Constructor Detail
-
TaskThread
protected TaskThread(TaskAction owner, TaskThread.ListenerAndText output)
- Parameters:
output- Determines where the output from this task thread goes.
-
-
Method Detail
-
readAll
public Reader readAll() throws IOException
- Throws:
IOException
-
associateWith
protected final void associateWith(TaskAction action)
Registers that thisTaskThreadis run for the specifiedTaskAction. This can be explicitly called from subtypes to associate a singleTaskThreadacross multiple tag actions.
-
start
public void start()
Starts the task execution asynchronously.
-
isRunning
public boolean isRunning()
-
createListener
protected TaskThread.ListenerAndText createListener() throws IOException
Determines where the output of thisTaskThreadgoes.Subclass can override this to send the output to a file, for example.
- Throws:
IOException
-
perform
protected abstract void perform(TaskListener listener) throws Exception
Do the actual work.- Throws:
Exception- The exception is recorded and reported as a failure.
-
-