Package hudson.model
Class TaskThread
- java.lang.Object
-
- java.lang.Thread
-
- hudson.model.TaskThread
-
- All Implemented Interfaces:
Runnable
public abstract class TaskThread extends Thread
Thread
for 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 class
TaskThread.ListenerAndText
Tuple ofTaskListener
andAnnotatedLargeText
, 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 protected
TaskThread(TaskAction owner, TaskThread.ListenerAndText output)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
associateWith(TaskAction action)
Registers that thisTaskThread
is run for the specifiedTaskAction
.protected TaskThread.ListenerAndText
createListener()
Determines where the output of thisTaskThread
goes.boolean
isRunning()
protected abstract void
perform(TaskListener listener)
Do the actual work.Reader
readAll()
void
run()
void
start()
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 thisTaskThread
is run for the specifiedTaskAction
. This can be explicitly called from subtypes to associate a singleTaskThread
across 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 thisTaskThread
goes.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.
-
-