Runtime

## org.eclipse.gmf.runtime.common.core.service
Class AbstractProvider

    java.lang.Object
      org.eclipse.gmf.runtime.common.core.service.AbstractProvider

All Implemented Interfaces:
  IProvider

Direct Known Subclasses:
  AbstractActionFilterProvider, AbstractContributionItemProvider, AbstractDiagramEventBrokerProvider, AbstractDragDropListenerProvider, AbstractEditorProvider, AbstractElementSelectionProvider, AbstractGlobalActionHandlerProvider, AbstractMarkerNavigationProvider, AbstractStatusLineContributionItemProvider, AbstractTransferAdapterProvider, AbstractViewProvider, DefaultPaletteProvider, GenericEMFPropertiesProvider, ModelingAssistantProvider, ReadOnlyDiagramPropertiesModifier, Service, Service.ProviderDescriptor

    public abstract class AbstractProvider

extends java.lang.Object
implements IProvider

The abstract parent of all service providers. Implements basic support for thread-safe provider change notification.

Service implementers are expected to expose service specific provider classes extending this class.

Service provider implementers never need to extend this class directly, they instead derive their provider implementation from the service specific provider class extending this interface.

Constructor Summary
`protected` `AbstractProvider()` Constructs a new abstract provider.

Method Summary
`void` `addProviderChangeListener(IProviderChangeListener listener)` Adds the specified listener to the list of provider change listeners for this abstract provider.
`protected void` `fireProviderChange(ProviderChangeEvent event)` Notifies the listeners for this abstract provider that the specified event has occurred.
`void` `removeProviderChangeListener(IProviderChangeListener listener)` Removes the specified listener from the list of provider change listeners for this abstract provider.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.eclipse.gmf.runtime.common.core.service.IProvider
`provides`

Constructor Detail

### AbstractProvider

    protected AbstractProvider()

  Constructs a new abstract provider.

Method Detail

### addProviderChangeListener

    public void addProviderChangeListener(IProviderChangeListener listener)

  Adds the specified listener to the list of provider change listeners for this abstract provider.

  Specified by:
    `addProviderChangeListener` in interface `IProvider`
  Parameters:
    `listener` - The listener to be added.
  See Also:
    `IProvider.addProviderChangeListener(IProviderChangeListener)`

### removeProviderChangeListener

    public void removeProviderChangeListener(IProviderChangeListener listener)

  Removes the specified listener from the list of provider change listeners for this abstract provider.

  Specified by:
    `removeProviderChangeListener` in interface `IProvider`
  Parameters:
    `listener` - The listener to be removed.
  See Also:
    `IProvider.removeProviderChangeListener(IProviderChangeListener)`

### fireProviderChange

    protected void fireProviderChange(ProviderChangeEvent event)

  Notifies the listeners for this abstract provider that the specified event has occurred.

  Parameters:
    `event` - The provider change event to be fired.

Runtime

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp., Borland Software Corp., and others 2005,2006. All rights reserved.