## org.eclipse.emf.edit.provider.resource
Class ResourceItemProviderAdapterFactory

    java.lang.Object
      org.eclipse.emf.common.notify.impl.AdapterFactoryImpl
          org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory

All Implemented Interfaces:
  AdapterFactory, ComposeableAdapterFactory, IChangeNotifier, IDisposable

    public class ResourceItemProviderAdapterFactory

extends AdapterFactoryImpl
implements ComposeableAdapterFactory, IChangeNotifier, IDisposable

This is the factory that is used to provide the interfaces needed to support Viewers. The adapters generated by this factory convert EMF adapter notifications into calls to `fireNotifyChanged`. The adapters also support Eclipse property sheets. Note that most of the adapters are shared among multiple instances.

Field Summary
`protected IChangeNotifier` `changeNotifier` This is used to implement `IChangeNotifier`.
`protected Disposable` `disposable` This is used to implement `IDisposable`.
`protected ComposedAdapterFactory` `parentAdapterFactory` This keeps track of the root adapter factory that delegates to this adapter factory.
`protected static java.lang.Package` `resourcePackage`
`protected java.util.Collection<java.lang.Object>` `supportedTypes` This keeps track of all the supported types checked by `isFactoryForType`.

Constructor Summary
`ResourceItemProviderAdapterFactory()` This constructs an instance.

Method Summary
`Adapter` `adapt(Notifier notifier, java.lang.Object type)` This implementation substitutes the factory itself as the key for the adapter.
`java.lang.Object` `adapt(java.lang.Object object, java.lang.Object type)` Returns either the result of calling `adapt(Notifier, Object)` or the result of calling `resolve(Object, Object)`, depending on whether the target is a notifier.
`void` `addListener(INotifyChangedListener notifyChangedListener)` This adds a listener.
`protected void` `associate(Adapter adapter, Notifier target)` Associates an adapter with a notifier by adding it to the target's `adapters`.
`Adapter` `createAdapter(Notifier target)` Creates an `AdapterImpl`.
`Adapter` `createResourceAdapter()` This creates an adapter for a `Resource`.
`Adapter` `createResourceSetAdapter()` This creates an adapter for a `ResourceSet`.
`void` `dispose()` This is called to dispose the object.
`void` `fireNotifyChanged(Notification notification)` This delegates to `changeNotifier` and to `parentAdapterFactory`.
`ComposeableAdapterFactory` `getRootAdapterFactory()` This returns the root adapter factory that contains this factory.
`boolean` `isFactoryForType(java.lang.Object type)` Returns whether this factory is applicable for the type of the object
`void` `removeListener(INotifyChangedListener notifyChangedListener)` This removes a listener.
`void` `setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory)` This sets the composed adapter factory that contains this factory.

Methods inherited from class org.eclipse.emf.common.notify.impl.AdapterFactoryImpl
`adaptAllNew, adaptNew, createAdapter, resolve`

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

Methods inherited from interface org.eclipse.emf.common.notify.AdapterFactory
`adaptAllNew, adaptNew`

Field Detail

### resourcePackage

    protected static java.lang.Package resourcePackage

### parentAdapterFactory

    protected ComposedAdapterFactory parentAdapterFactory

  This keeps track of the root adapter factory that delegates to this adapter factory.

### changeNotifier

    protected IChangeNotifier changeNotifier

  This is used to implement `IChangeNotifier`.

### supportedTypes

    protected java.util.Collection<java.lang.Object> supportedTypes

  This keeps track of all the supported types checked by `isFactoryForType`.

### disposable

    protected Disposable disposable

  This is used to implement `IDisposable`.

Constructor Detail

### ResourceItemProviderAdapterFactory

    public ResourceItemProviderAdapterFactory()

  This constructs an instance.

Method Detail

### createAdapter

    public Adapter createAdapter(Notifier target)

  Description copied from class: `AdapterFactoryImpl`
  Creates an `AdapterImpl`.

  Overrides:
    `createAdapter` in class `AdapterFactoryImpl`
  Parameters:
    `target` - the notifier to adapt.
  Returns:
    a new adapter.
  See Also:
    `AdapterFactoryImpl.createAdapter(Notifier)`

### createResourceAdapter

    public Adapter createResourceAdapter()

  This creates an adapter for a `Resource`.

### createResourceSetAdapter

    public Adapter createResourceSetAdapter()

  This creates an adapter for a `ResourceSet`.

### getRootAdapterFactory

    public ComposeableAdapterFactory getRootAdapterFactory()

  This returns the root adapter factory that contains this factory.

  Specified by:
    `getRootAdapterFactory` in interface `ComposeableAdapterFactory`

### setParentAdapterFactory

    public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory)

  This sets the composed adapter factory that contains this factory.

  Specified by:
    `setParentAdapterFactory` in interface `ComposeableAdapterFactory`

### isFactoryForType

    public boolean isFactoryForType(java.lang.Object type)

  Returns whether this factory is applicable for the type of the object. This implementation returns `true` if the object is either the model's package or is an instance object of the model.

  Specified by:
    `isFactoryForType` in interface `AdapterFactory`
  Overrides:
    `isFactoryForType` in class `AdapterFactoryImpl`
  Parameters:
    `type` - the key indicating the type of adapter in question.
  Returns:
    whether this factory is applicable for the type of the object.
  See Also:
    `Adapter.isAdapterForType(java.lang.Object)`

### adapt

    public Adapter adapt(Notifier notifier,
                         java.lang.Object type)

  This implementation substitutes the factory itself as the key for the adapter.

  Specified by:
    `adapt` in interface `AdapterFactory`
  Overrides:
    `adapt` in class `AdapterFactoryImpl`
  Parameters:
    `notifier` - the notifier to adapt.
    `type` - the key indicating the type of adapter required.
  Returns:
    an associated adapter.
  See Also:
    `Adapter.setTarget(org.eclipse.emf.common.notify.Notifier)`, `AdapterFactory.adaptNew(org.eclipse.emf.common.notify.Notifier, java.lang.Object)`

### adapt

    public java.lang.Object adapt(java.lang.Object object,
                                  java.lang.Object type)

  Description copied from class: `AdapterFactoryImpl`
  Returns either the result of calling `adapt(Notifier, Object)` or the result of calling `resolve(Object, Object)`, depending on whether the target is a notifier.

  Specified by:
    `adapt` in interface `AdapterFactory`
  Overrides:
    `adapt` in class `AdapterFactoryImpl`
  Parameters:
    `object` - arbitrary object to adapt.
    `type` - the key indicating the type of adapter required.
  Returns:
    either an associated adapter or the object itself.
  See Also:
    `AdapterFactoryImpl.adapt(Notifier,Object)`, `AdapterFactoryImpl.resolve(Object, Object)`

### addListener

    public void addListener(INotifyChangedListener notifyChangedListener)

  This adds a listener.

  Specified by:
    `addListener` in interface `IChangeNotifier`

### removeListener

    public void removeListener(INotifyChangedListener notifyChangedListener)

  This removes a listener.

  Specified by:
    `removeListener` in interface `IChangeNotifier`

### fireNotifyChanged

    public void fireNotifyChanged(Notification notification)

  This delegates to `changeNotifier` and to `parentAdapterFactory`.

  Specified by:
    `fireNotifyChanged` in interface `IChangeNotifier`

### associate

    protected void associate(Adapter adapter,
                             Notifier target)

  Description copied from class: `AdapterFactoryImpl`
  Associates an adapter with a notifier by adding it to the target's `adapters`.

  Overrides:
    `associate` in class `AdapterFactoryImpl`
  Parameters:
    `adapter` - the new adapter to associate.
    `target` - the notifier being adapted.

### dispose

    public void dispose()

  Description copied from interface: `IDisposable`
  This is called to dispose the object.

  Specified by:
    `dispose` in interface `IDisposable`

Copyright 2001-2006 IBM Corporation and others. All Rights Reserved.