This API allows to visualize tracking for progress of long lasting tasks.
The usual usecase goes like this:
ProgressHandle handle = ProgressHandleFactory.createHandle("My custom task");
...
// we have 100 workunits
// at this point the task appears in status bar.
handle.start(100);
...
handle.progress(10);
...
handle.progress(50);
...
// at this point the task is finished and removed from status bar
handle.finish();
There are several options on how detailed visualization you want.
- task with unknown duration or with hard to show progress steps.
- task with known scaled steps
- task with known steps and also with a time estimate for completion
All these usecases are supported by methods of {@link org.netbeans.api.progress.ProgressHandle} class. Additionally
it's possible to include textual information about current progress.
If the task allows to be cancelled by the user, then you have to implement
{@link org.openide.util.Cancellable} interface and pass it to the {@link org.netbeans.api.progress.ProgressHandleFactory}
when creating the handle.
|