Eclipse Platform Release 3.7

## org.eclipse.core.runtime
Interface ISafeRunnable

All Known Implementing Classes:
  SafeRunnable

    public interface ISafeRunnable

Safe runnables represent blocks of code and associated exception handlers. They are typically used when a plug-in needs to call some untrusted code (e.g., code contributed by another plug-in via an extension).

This interface can be used without OSGi running.

Clients may implement this interface.

See Also:
  `SafeRunner.run(ISafeRunnable)`

Method Summary
`void` `handleException(Throwable exception)` Handles an exception thrown by this runnable's `run` method.
`void` `run()` Runs this runnable.

Method Detail

### handleException

    void handleException(Throwable exception)

  Handles an exception thrown by this runnable's `run` method. The processing done here should be specific to the particular usecase for this runnable. Generalized exception processing (e.g., logging in the platform's log) is done by the `SafeRunner`.

  All exceptions from the `run()` method are passed to this method, along with certain `Error` types that are typically caused by programming errors in the untrusted code being run.

  Parameters:
    `exception` - an exception which occurred during processing the body of this runnable (i.e., in `run()`)
  See Also:
    `SafeRunner.run(ISafeRunnable)`

### run

    void run()
             throws Exception

  Runs this runnable. Any exceptions thrown from this method will be passed to this runnable's `handleException` method.

  Throws:
    `Exception` - if a problem occurred while running this method. The exception will be processed by `handleException`
  See Also:
    `SafeRunner.run(ISafeRunnable)`

Eclipse Platform Release 3.7

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2011. All rights reserved.