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

    Modifier and Type
    Runs this operation.
  • Method Details

    • run

      Runs this operation. Progress should be reported to the given progress monitor. This method is usually invoked by an IRunnableContext's run method, which supplies the progress monitor. A request to cancel the operation should be honored and acknowledged by throwing InterruptedException.
      monitor - the progress monitor to use to display progress and receive requests for cancelation
      InvocationTargetException - if the run method must propagate a checked exception, it should wrap it inside an InvocationTargetException; runtime exceptions are automatically wrapped in an InvocationTargetException by the calling context
      InterruptedException - if the operation detects a request to cancel, using IProgressMonitor.isCanceled(), it should exit by throwing InterruptedException
      See Also: