package

com.atlassian.jira.task

Interfaces

ProvidesTaskProgress Long running tasks that implement ProvidesTaskProgress will be able to tell the task infrastructure about what progress they are making 
RequiresTaskInformation<T> A long running task that implements RequiresTaskInformation will be told about the TaskDescriptor that describes the task. 
TaskContext This interface is used by parts of the code that kick off tasks to give the task a "context" to operate in. 
TaskDescriptor<V> TaskDescriptor decribes the state of a long running task. 
TaskManager The TaskManager contains a collection of tasks that are long running. 
TaskMatcher Class to represent a condition when searching for tasks. 
TaskProgressIndicator Can be used to either pull or listen to the progress of a long running task. 
TaskProgressListener A listener that is told when progress is made on a long running task. 
TaskProgressSink Interface that can be used by tasks to indicate progress. 

Classes

ScalingTaskProgessSink Takes the "virtual progress" made and scales it into an "actual progress" for the contained sink. 
StatefulTaskProgressSink A simple TaskProgressSink thats keeps track of progress. 
StepTaskProgressSink Sink that divides a range a progress range into a number of steps. 
TaskManagerImpl An implementation of a TaskManager
TaskProgressEvent Event that represents the progess of a long running task. 
TimeBasedLogSink This TaskProgressSink will output progress to the Logger if either the percentage progress changes or its been more than n milliseconds since the last log entry. 

Exceptions

AlreadyExecutingException This exception is thrown when attempting to start a task in a TaskManager that already has a live task with the same context.