public abstract class BatchingProgressMonitor extends Object implements ProgressMonitor
UNKNOWN
Constructor and Description |
---|
BatchingProgressMonitor() |
Modifier and Type | Method and Description |
---|---|
void |
beginTask(String title,
int work)
Begin processing a single task.
|
void |
endTask()
Finish the current task, so the next can begin.
|
boolean |
isCancelled()
Check for user task cancellation.
|
protected abstract void |
onEndTask(String taskName,
int workCurr)
Finish the progress monitor when the total wasn't known in advance.
|
protected abstract void |
onEndTask(String taskName,
int workCurr,
int workTotal,
int percentDone)
Finish the progress monitor when the total is known in advance.
|
protected abstract void |
onUpdate(String taskName,
int workCurr)
Update the progress monitor if the total work isn't known,
|
protected abstract void |
onUpdate(String taskName,
int workCurr,
int workTotal,
int percentDone)
Update the progress monitor when the total is known in advance.
|
void |
setDelayStart(long time,
TimeUnit unit)
Set an optional delay before the first output.
|
void |
start(int totalTasks)
Advise the monitor of the total number of subtasks.
|
void |
update(int completed)
Denote that some work units have been completed.
|
public void setDelayStart(long time, TimeUnit unit)
time
- how long to wait before output. If 0 output begins on the
first update(int)
call.unit
- time unit of time
.public void start(int totalTasks)
This should be invoked at most once per progress monitor interface.
start
in interface ProgressMonitor
totalTasks
- the total number of tasks the caller will need to complete
their processing.public void beginTask(String title, int work)
beginTask
in interface ProgressMonitor
title
- title to describe the task. Callers should publish these as
stable string constants that implementations could match
against for translation support.work
- total number of work units the application will perform;
ProgressMonitor.UNKNOWN
if it cannot be predicted in advance.public void update(int completed)
This is an incremental update; if invoked once per work unit the correct
value for our argument is 1
, to indicate a single unit of
work has been finished by the caller.
update
in interface ProgressMonitor
completed
- the number of work units completed since the last call.public void endTask()
endTask
in interface ProgressMonitor
public boolean isCancelled()
isCancelled
in interface ProgressMonitor
protected abstract void onUpdate(String taskName, int workCurr)
taskName
- name of the task.workCurr
- number of units already completed.protected abstract void onEndTask(String taskName, int workCurr)
taskName
- name of the task.workCurr
- total number of units processed.protected abstract void onUpdate(String taskName, int workCurr, int workTotal, int percentDone)
taskName
- name of the task.workCurr
- number of units already completed.workTotal
- estimated number of units to process.percentDone
- workCurr * 100 / workTotal
.protected abstract void onEndTask(String taskName, int workCurr, int workTotal, int percentDone)
taskName
- name of the task.workCurr
- total number of units processed.workTotal
- estimated number of units to process.percentDone
- workCurr * 100 / workTotal
.Copyright © 2020 Eclipse JGit Project. All rights reserved.