# Package org.eclipse.core.runtime

Provides support for the runtime platform, core utility methods and the extension registry.

See: Description

Interface Summary
IAdaptable: An interface for an adaptable object.
IAdapterFactory: An adapter factory defines behavioral extensions for one or more classes that implements the `IAdaptable` interface.
IAdapterManager: An adapter manager maintains a registry of adapter factories.
IBundleGroup: Bundle groups represent a logical collection of plug-ins (aka bundles).
IBundleGroupProvider: Bundle group providers define groups of plug-ins which have been installed in the current system.
IConfigurationElement: A configuration element, with its attributes and children, directly reflects the content and structure of the extension section within the declaring plug-in's manifest (`plugin.xml`) file.
IContributor: This interface describes a registry contributor - an entity that supplies information to the extension registry.
ICoreRunnable: A functional interface for a runnable that can be cancelled and can report progress using the progress monitor passed to the `ICoreRunnable.run(IProgressMonitor)` method.
IExecutableExtension: Interface for executable extension classes that require access to their configuration element, or implement an extension adapter.
IExecutableExtensionFactory: This interface allows extension providers to control how the instances provided to extension-points are being created by referring to the factory instead of referring to a class.
IExtension: An extension declared in a plug-in.
IExtensionDelta: An extension delta represents changes to the extension registry.
IExtensionPoint: An extension point declared in a plug-in.
IExtensionRegistry: The extension registry holds the master list of all discovered namespaces, extension points and extensions.
ILibrary: Deprecated In Eclipse 3.0 the plug-in classpath representation was changed.
ILog: A log to which status events can be written.
ILogListener: A log listener is notified of entries added to a plug-in's log.
IPath: A path is an ordered collection of string segments, separated by a standard separator character, "/".
IPlatformRunnable: Deprecated use `IApplication`
IPluginDescriptor: Deprecated
IPluginPrerequisite: Deprecated In Eclipse 3.0 the plug-in prerequisite representation was changed.
IPluginRegistry: Deprecated
IProduct: Products are the Eclipse unit of branding.
IProductProvider: Product providers define products (units of branding) which have been installed in the current system.
IProgressMonitor: The `IProgressMonitor` interface is implemented by objects that monitor the progress of an activity; the methods in this interface are invoked by code that performs the activity.
IProgressMonitorWithBlocking: An extension to the IProgressMonitor interface for monitors that want to support feedback when an activity is blocked due to concurrent activity in another thread.
IRegistryChangeEvent: Registry change events describe changes to the extension registry.
IRegistryChangeListener: Note: for new implementations consider using `IRegistryEventListener`.
IRegistryEventListener: A registry event listener is notified of changes to extension points.
ISafeRunnable: Safe runnables represent blocks of code and associated exception handlers.
IStatus: A status object represents the outcome of an operation.
Preferences.IPropertyChangeListener: Listener for property changes.

Class Summary
Adapters: Provides a standard way to request adapters from adaptable objects
Assert: `Assert` is useful for for embedding runtime sanity checks in code.
ContributorFactoryOSGi: The contributor factory creates new registry contributors for use in OSGi-based registries.
ContributorFactorySimple: The contributor factory creates new registry contributors for use in a simple registry based on the String representation of the determining object.
FileLocator: This class contains a collection of helper methods for finding files in bundles.
ListenerList<E>: This class is a thread safe list that is designed for storing lists of listeners.
MultiStatus: A concrete multi-status implementation, suitable either for instantiating or subclassing.
NullProgressMonitor: A default progress monitor implementation suitable for subclassing.
Path: The standard implementation of the `IPath` interface.
PerformanceStats: PerformanceStats collects and aggregates timing data about events such as a builder running, an editor opening, etc.
PerformanceStats.PerformanceListener: A performance listener is periodically notified after performance events occur or after events fail.
Platform: The central class of the Eclipse Platform Runtime.
PlatformObject: An abstract superclass implementing the `IAdaptable` interface.
Plugin: The abstract superclass of all plug-in runtime class implementations.
PluginVersionIdentifier: Deprecated clients should use `Version` instead
Preferences: Deprecated This class is replaced by `IEclipsePreferences`.
Preferences.PropertyChangeEvent: An event object describing a change to a named property.
ProgressMonitorWrapper: An abstract wrapper around a progress monitor which, unless overridden, forwards `IProgressMonitor` and `IProgressMonitorWithBlocking` methods to the wrapped progress monitor.
QualifiedName: Qualified names are two-part names: qualifier and local name.
RegistryFactory: Use this class to create or obtain an extension registry.
SafeRunner: Runs the given ISafeRunnable in a protected mode: exceptions and certain errors thrown in the runnable are logged and passed to the runnable's exception handler.
Status: A concrete status implementation, suitable either for instantiating or subclassing.
SubMonitor: A progress monitor that uses a given amount of work ticks from a parent monitor.
SubProgressMonitor: Deprecated use `SubMonitor` instead
URIUtil: A utility class for manipulating URIs.

Exception Summary
AssertionFailedException: `AssertionFailedException` is a runtime exception thrown by some of the methods in `Assert`.
CoreException: A checked exception representing a failure.
InvalidRegistryObjectException: An unchecked exception indicating that an attempt to access an extension registry object that is no longer valid.
OperationCanceledException: This exception is thrown to blow out of a long-running method when the user cancels it.

## Package org.eclipse.core.runtime Description

Provides support for the runtime platform, core utility methods and the extension registry.

## Package Specification

This package contains three components:

- APIs related to the runtime platform itself (provided by the `org.eclipse.core.runtime` plug-in)
- Various utility types such as `Path`, `IPath` and various flavours of progress monitors (provided by the `org.eclipse.equinox.common` plug-in)
- Extension registry mechanism (provided by the `org.eclipse.equinox.registry` plug-in)