Package org.esa.snap.rcp.util
Class ProgressHandleMonitor
java.lang.Object
org.esa.snap.rcp.util.ProgressHandleMonitor
- All Implemented Interfaces:
ProgressMonitor,org.openide.util.Cancellable
public class ProgressHandleMonitor
extends Object
implements ProgressMonitor, org.openide.util.Cancellable
A progress monitor that notifies a
ProgressHandle instance (of the NetBeans Progress API).
Use case 1:
ProgressHandleMonitor pm = ProgressHandleMonitor.create("Training");
Runnable operation = () -> {
pm.beginTask("Classifier training...", 100);
try {
session.startTraining(queryPatches, pm);
} catch (Exception e) {
SnapApp.getDefault().handleError("Failed to train classifier", e);
} finally {
pm.done();
}
};
ProgressUtils.runOffEventThreadWithProgressDialog(operation, "Extracting Features", pm.getProgressHandle(), true, 50, 1000);
Use case 2:
RequestProcessor.getDefault().post(() -> {
ProgressHandle handle = ProgressHandleFactory.createHandle("Performing time consuming task");
ProgressMonitor pm = new ProgressHandleMonitor(handle);
performTimeConsumingTask(pm);
});
- Since:
- SNAP 2
-
Field Summary
Fields inherited from interface com.bc.ceres.core.ProgressMonitor
NULL, UNKNOWN -
Constructor Summary
ConstructorsConstructorDescriptionProgressHandleMonitor(org.netbeans.api.progress.ProgressHandle progressHandle) -
Method Summary
Modifier and TypeMethodDescriptionvoidbooleancancel()static ProgressHandleMonitorstatic ProgressHandleMonitorvoiddone()org.netbeans.api.progress.ProgressHandlevoidinternalWorked(double work) booleanvoidsetCanceled(boolean canceled) voidsetProgressHandle(org.netbeans.api.progress.ProgressHandle progressHandle) voidsetSubTaskName(String subTaskName) voidsetTaskName(String taskName) voidworked(int work)
-
Constructor Details
-
ProgressHandleMonitor
public ProgressHandleMonitor(org.netbeans.api.progress.ProgressHandle progressHandle)
-
-
Method Details
-
create
-
create
public static ProgressHandleMonitor create(String displayName, org.openide.util.Cancellable cancellable) -
getProgressHandle
public org.netbeans.api.progress.ProgressHandle getProgressHandle()- Returns:
- The progress handle.
-
setProgressHandle
public void setProgressHandle(org.netbeans.api.progress.ProgressHandle progressHandle) - Parameters:
progressHandle- The progress handle.
-
beginTask
- Specified by:
beginTaskin interfaceProgressMonitor
-
done
public void done()- Specified by:
donein interfaceProgressMonitor
-
internalWorked
public void internalWorked(double work) - Specified by:
internalWorkedin interfaceProgressMonitor
-
isCanceled
public boolean isCanceled()- Specified by:
isCanceledin interfaceProgressMonitor
-
setCanceled
public void setCanceled(boolean canceled) - Specified by:
setCanceledin interfaceProgressMonitor
-
setTaskName
- Specified by:
setTaskNamein interfaceProgressMonitor
-
setSubTaskName
- Specified by:
setSubTaskNamein interfaceProgressMonitor
-
worked
public void worked(int work) - Specified by:
workedin interfaceProgressMonitor
-
cancel
public boolean cancel()- Specified by:
cancelin interfaceorg.openide.util.Cancellable
-