Package org.eclipse.jface.operation
Interface IRunnableWithProgress
- All Known Implementing Classes:
AbstractDocumentProvider.DocumentProviderOperation,CompareEditorInput,ExportBreakpointsOperation,HistoryPageCompareEditorInput,ImportBreakpointsOperation,ImportOperation,ModelMergeOperation,ModelOperation,ModelParticipantMergeOperation,PageCompareEditorInput,ParticipantPageCompareEditorInput,PopulateRootOperation,SaveableCompareEditorInput,SelectFilesOperation,SynchronizationOperation,SynchronizeModelOperation,SyncInfoCompareInput,TeamOperation,TextFileDocumentProvider.DocumentProviderOperation,Worker,WorkspaceModifyDelegatingOperation,WorkspaceModifyOperation
public interface IRunnableWithProgress
The
IRunnableWithProgress interface should be implemented by any
class whose instances are intended to be executed as a long-running operation.
Long-running operations are typically presented at the UI via a modal dialog
showing a progress indicator and a Cancel button.
The class must define a run method that takes a progress monitor.
The run method is usually not invoked directly, but rather by
passing the IRunnableWithProgress to the run method of
an IRunnableContext, which provides the UI for the progress monitor
and Cancel button.- See Also:
-
Method Summary
-
Method Details
-
run
Runs this operation. Progress should be reported to the given progress monitor. This method is usually invoked by anIRunnableContext'srunmethod, which supplies the progress monitor. A request to cancel the operation should be honored and acknowledged by throwingInterruptedException.- Parameters:
monitor- the progress monitor to use to display progress and receive requests for cancelation- Throws:
InvocationTargetException- if the run method must propagate a checked exception, it should wrap it inside anInvocationTargetException; runtime exceptions are automatically wrapped in anInvocationTargetExceptionby the calling contextInterruptedException- if the operation detects a request to cancel, usingIProgressMonitor.isCanceled(), it should exit by throwingInterruptedException- See Also:
-