Package com.iizix
Class PropProgressMonitor
java.lang.Object
com.iizix.PropProgressMonitor
- All Implemented Interfaces:
IPropProgressMonitor
The progress monitor implementation.
- Author:
- Christopher Mindus
Field Summary
Fields inherited from interface com.iizix.IPropProgressMonitor
NULLConstructor Summary
ConstructorsMethod Summary
Modifier and TypeMethodDescriptionvoidNotifies that the main task is beginning.voidcancel()Cancels the progress monitor.voiddone()Notifies that the work is done; that is, either the main task is completed or the user canceled it.doubleGets the current percentage done.Gets the verbose progress from the main and all subtasks in %.Gets the org.eclipse.core.runtime.IProgressMonitor instance.Gets the submonitors that have been created for this progress monitor.Gets the task name being performed.booleanReturns whether cancellation of current operation has been requested.newSubMonitor(int work) Creates a new sub progress monitor taking up a number of work.voidsetListener(Runnable listener) Sets the cancel listener.voidsetProgressListener(Runnable listener) Sets the progress listener.voidsetTaskName(String name) Sets the task name to the given value.voidsetWorked(int worked) Set worked value.voidsetWorkRemaining(int workRemaining) Set worked remaining.voidworked(int work) Notifies that a given number of work unit of the main task has been completed.
Constructor Details
PropProgressMonitor
public PropProgressMonitor()Constructor.
Method Details
setProgressListener
Sets the progress listener.- Parameters:
listener- Listener for changes in the progress monitor, null for none.
setListener
Sets the cancel listener.- Parameters:
listener- Listener for changes in the progress monitor, null for none.
beginTask
Notifies that the main task is beginning. This must only be called once on a given progress monitor instance.- Specified by:
beginTaskin interfaceIPropProgressMonitor- Parameters:
name- The name (or description) of the main task.totalWork- The total number of work units into which the main task is been subdivided. The value must be greater than zero.- Throws:
IllegalArgumentException- If totalWork is zero or less.NullPointerException- If name is null.
setTaskName
Sets the task name to the given value. This method is used to restore the task label after a nested operation was executed. Normally there is no need for clients to call this method.- Specified by:
setTaskNamein interfaceIPropProgressMonitor- Parameters:
name- the name (or description) of the main task.- See Also:
getProgress
public double getProgress()Gets the current percentage done.- Returns:
- A value between 0 and 1, where 1 indicates completed.
getProgressDescription
Gets the verbose progress from the main and all subtasks in %.- Returns:
- A string formatted as "task (xx%), subtask (yy%)".
getTaskName
Gets the task name being performed.- Returns:
- The task name.
getSubProgressMonitors
Gets the submonitors that have been created for this progress monitor.- Returns:
- An array, never null, of progress monitors.
worked
public void worked(int work) Notifies that a given number of work unit of the main task has been completed. Note that this amount represents an installment, as opposed to a cumulative amount of work done to date.- Specified by:
workedin interfaceIPropProgressMonitor- Parameters:
work- A non-negative number of work units just completed.- Throws:
IllegalArgumentException- If work is less than zero.
setWorked
public void setWorked(int worked) Set worked value.- Specified by:
setWorkedin interfaceIPropProgressMonitor- Parameters:
worked- The work value.
setWorkRemaining
public void setWorkRemaining(int workRemaining) Set worked remaining.- Specified by:
setWorkRemainingin interfaceIPropProgressMonitor- Parameters:
workRemaining- The remaining work value, must be between zero and totalWork.
done
public void done()Notifies that the work is done; that is, either the main task is completed or the user canceled it. This method may be called more than once (implementations should be prepared to handle this case).- Specified by:
donein interfaceIPropProgressMonitor
isCanceled
public boolean isCanceled()Returns whether cancellation of current operation has been requested. Long-running operations should poll to see if cancellation has been requested.- Specified by:
isCanceledin interfaceIPropProgressMonitor- Returns:
trueif cancellation has been requested, andfalseotherwise.
cancel
public void cancel()Cancels the progress monitor.- Specified by:
cancelin interfaceIPropProgressMonitor
getProgressMonitor
Gets the org.eclipse.core.runtime.IProgressMonitor instance.- Specified by:
getProgressMonitorin interfaceIPropProgressMonitor- Returns:
- Always null.
newSubMonitor
Creates a new sub progress monitor taking up a number of work.- Specified by:
newSubMonitorin interfaceIPropProgressMonitor- Parameters:
work- A non-negative number of work units that the new sub progress monitor will tick off.- Returns:
- A new submonitor.