Eclipse Platform Release 3.7

## org.eclipse.ui
Class AbstractSourceProvider

    java.lang.Object
      org.eclipse.ui.AbstractSourceProvider

All Implemented Interfaces:
  ISourceProvider

    public abstract class AbstractSourceProvider

extends Object
implements ISourceProvider

An implementation of `ISourceProvider` that provides listener support. Subclasses need only call `fireSourceChanged` whenever appropriate.

Since:
  3.1

Field Summary
`protected static boolean` `DEBUG` Whether source providers should print out debugging information to the console when events arrive.

Constructor Summary
`AbstractSourceProvider()`

Method Summary
`void` `addSourceProviderListener(ISourceProviderListener listener)` Adds a listener to this source provider.
`protected void` `fireSourceChanged(int sourcePriority, Map sourceValuesByName)` Notifies all listeners that multiple sources have changed.
`protected void` `fireSourceChanged(int sourcePriority, String sourceName, Object sourceValue)` Notifies all listeners that a single source has changed.
`void` `initialize(IServiceLocator locator)` This method is called when the source provider is instantiated by `org.eclipse.ui.services`.
`protected void` `logDebuggingInfo(String message)` Logs a debugging message in an appropriate manner.
`void` `removeSourceProviderListener(ISourceProviderListener listener)` Removes a listener from this source 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.ui.ISourceProvider
`dispose, getCurrentState, getProvidedSourceNames`

Field Detail

### DEBUG

    protected static boolean DEBUG

  Whether source providers should print out debugging information to the console when events arrive.

  Since:
    3.2

Constructor Detail

### AbstractSourceProvider

    public AbstractSourceProvider()

Method Detail

### addSourceProviderListener

    public final void addSourceProviderListener(ISourceProviderListener listener)

  Description copied from interface: `ISourceProvider`
  Adds a listener to this source provider. This listener will be notified whenever the corresponding source changes.

  Specified by:
    `addSourceProviderListener` in interface `ISourceProvider`
  Parameters:
    `listener` - The listener to add; must not be `null`.

### fireSourceChanged

    protected final void fireSourceChanged(int sourcePriority,
                                           String sourceName,
                                           Object sourceValue)

  Notifies all listeners that a single source has changed.

  Parameters:
    `sourcePriority` - The source priority that has changed.
    `sourceName` - The name of the source that has changed; must not be `null`.
    `sourceValue` - The new value for the source; may be `null`.

### fireSourceChanged

    protected final void fireSourceChanged(int sourcePriority,
                                           Map sourceValuesByName)

  Notifies all listeners that multiple sources have changed.

  Parameters:
    `sourcePriority` - The source priority that has changed.
    `sourceValuesByName` - The map of source names (`String`) to source values (`Object`) that have changed; must not be `null`. The names must not be `null`, but the values may be `null`.

### logDebuggingInfo

    protected final void logDebuggingInfo(String message)

  Logs a debugging message in an appropriate manner. If the message is `null` or the `DEBUG` is `false`, then this method does nothing.

  Parameters:
    `message` - The debugging message to log; if `null`, then nothing is logged.
  Since:
    3.2

### removeSourceProviderListener

    public final void removeSourceProviderListener(ISourceProviderListener listener)

  Description copied from interface: `ISourceProvider`
  Removes a listener from this source provider. This listener will be notified whenever the corresponding source changes.

  Specified by:
    `removeSourceProviderListener` in interface `ISourceProvider`
  Parameters:
    `listener` - The listener to remove; must not be `null`.

### initialize

    public void initialize(IServiceLocator locator)

  This method is called when the source provider is instantiated by `org.eclipse.ui.services`. Clients may override this method to perform initialization.

  Parameters:
    `locator` - The global service locator. It can be used to retrieve services like the IContextService
  Since:
    3.4

Eclipse Platform Release 3.7

Guidelines for using Eclipse APIs.

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