Package cli
Interface Task
- All Known Implementing Classes:
Renderer
public interface Task
Classes which inherit this interface provide a way for registered
TaskTracker
s to track the progress of a
large task this object is doing which consists of many small jobs.-
Method Summary
Modifier and Type Method Description default void
completeJobs(int number)
Let all registered trackers know that one more job has been completed.default void
finished()
Let all registered trackers know that the task has been completed.default void
performTask()
Trigger the task.default void
register(TaskTracker taskTracker)
Register aTaskTracker
to track the progress of this object.default void
start()
Let all registered trackers know that the task has been started.void
task()
The task to be performed.java.util.List<TaskTracker>
taskTrackers()
Get a list of all registeredTaskTracker
s.int
totalJobs()
Get the total number of jobs to be performed.
-
Method Details
-
totalJobs
int totalJobs()Get the total number of jobs to be performed.- Returns:
- The total number of jobs to be performed.
-
register
Register aTaskTracker
to track the progress of this object.- Parameters:
taskTracker
- The task tracker to track the progress of this object.
-
start
default void start()Let all registered trackers know that the task has been started. -
finished
default void finished()Let all registered trackers know that the task has been completed. -
task
void task()The task to be performed. This function will be called byperformTask()
. -
performTask
default void performTask()Trigger the task. This function notifies all registered task trackers that the task has commenced, then performs the task, then notifies registered trackers that it has completed. -
completeJobs
default void completeJobs(int number)Let all registered trackers know that one more job has been completed.- Parameters:
number
- The number of jobs to mark as completed.
-
taskTrackers
java.util.List<TaskTracker> taskTrackers()Get a list of all registeredTaskTracker
s.- Returns:
- A list of all registered
TaskTracker
s.
-