Package org.eclipse.equinox.p2.repository

# Interface IRunnableWithProgress

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.

Since:
  2.0

## Method Summary

Modifier and Type
Method
Description
`void`
`run(IProgressMonitor monitor)`
Runs this operation.

## Method Details

### run

void run(IProgressMonitor monitor) throws InvocationTargetException, OperationCanceledException
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`.

Parameters:
  `monitor` - the progress monitor to use to display progress and receive requests for cancelation
Throws:
  `OperationCanceledException` - if the operation detects a request to cancel, using `IProgressMonitor.isCanceled()`, it should exit by throwing `OperationCanceledException`
  `InvocationTargetException`