## org.eclipse.emf.ecore.provider
Class EcoreItemProviderAdapterFactory

    java.lang.Object
      org.eclipse.emf.common.notify.impl.AdapterFactoryImpl
          org.eclipse.emf.ecore.util.EcoreAdapterFactory
              org.eclipse.emf.ecore.provider.EcoreItemProviderAdapterFactory

All Implemented Interfaces:
  AdapterFactory, ComposeableAdapterFactory, IChangeNotifier, IDisposable

    public class EcoreItemProviderAdapterFactory

extends EcoreAdapterFactory
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 EAnnotationItemProvider` `eAnnotationItemProvider` This keeps track of the one adapter used for all `EAnnotation` instances
`protected EAttributeItemProvider` `eAttributeItemProvider` This keeps track of the one adapter used for all `EAttribute` instances
`protected EClassItemProvider` `eClassItemProvider` This keeps track of the one adapter used for all `EClass` instances
`protected EDataTypeItemProvider` `eDataTypeItemProvider` This keeps track of the one adapter used for all `EDataType` instances
`protected EEnumItemProvider` `eEnumItemProvider` This keeps track of the one adapter used for all `EEnum` instances
`protected EEnumLiteralItemProvider` `eEnumLiteralItemProvider` This keeps track of the one adapter used for all `EEnumLiteral` instances
`protected EFactoryItemProvider` `eFactoryItemProvider` This keeps track of the one adapter used for all `EFactory` instances
`protected EGenericTypeItemProvider` `eGenericTypeItemProvider` This keeps track of the one adapter used for all `EGenericType` instances
`protected ReflectiveItemProvider` `eObjectItemProvider` This keeps track of the one adapter used for all `EObject` instances
`protected EOperationItemProvider` `eOperationItemProvider` This keeps track of the one adapter used for all `EOperation` instances
`protected EPackageItemProvider` `ePackageItemProvider` This keeps track of the one adapter used for all `EPackage` instances
`protected EParameterItemProvider` `eParameterItemProvider` This keeps track of the one adapter used for all `EParameter` instances
`protected EReferenceItemProvider` `eReferenceItemProvider` This keeps track of the one adapter used for all `EReference` instances
`protected EStringToStringMapEntryItemProvider` `eStringToStringMapEntryItemProvider` This keeps track of the one adapter used for all `Map.Entry` instances
`protected ETypeParameterItemProvider` `eTypeParameterItemProvider` This keeps track of the one adapter used for all `ETypeParameter` instances
`protected ComposedAdapterFactory` `parentAdapterFactory` This keeps track of the root adapter factory that delegates to this adapter factory
`protected java.util.Collection<java.lang.Object>` `supportedTypes` This keeps track of all the supported types checked by `isFactoryForType`

Fields inherited from class org.eclipse.emf.ecore.util.EcoreAdapterFactory
`modelPackage, modelSwitch`

Constructor Summary
`EcoreItemProviderAdapterFactory()` 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)`
`void` `addListener(INotifyChangedListener notifyChangedListener)` This adds a listener
`Adapter` `createEAnnotationAdapter()` This creates an adapter for a `EAnnotation`
`Adapter` `createEAttributeAdapter()` This creates an adapter for a `EAttribute`
`Adapter` `createEClassAdapter()` This creates an adapter for a `EClass`
`Adapter` `createEDataTypeAdapter()` This creates an adapter for a `EDataType`
`Adapter` `createEEnumAdapter()` This creates an adapter for a `EEnum`
`Adapter` `createEEnumLiteralAdapter()` This creates an adapter for a `EEnumLiteral`
`Adapter` `createEFactoryAdapter()` This creates an adapter for a `EFactory`
`Adapter` `createEGenericTypeAdapter()` This creates an adapter for a `EGenericType`
`Adapter` `createEObjectAdapter()` This creates an adapter for a `EObject`
`Adapter` `createEOperationAdapter()` This creates an adapter for a `EOperation`
`Adapter` `createEPackageAdapter()` This creates an adapter for a `EPackage`
`Adapter` `createEParameterAdapter()` This creates an adapter for a `EParameter`
`Adapter` `createEReferenceAdapter()` This creates an adapter for a `EReference`
`Adapter` `createEStringToStringMapEntryAdapter()` This creates an adapter for a `Map.Entry`
`Adapter` `createETypeParameterAdapter()` This creates an adapter for a `ETypeParameter`
`void` `dispose()` This disposes all of the item providers created by this factory
`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)`
`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.ecore.util.EcoreAdapterFactory
`createAdapter, createEClassifierAdapter, createEModelElementAdapter, createENamedElementAdapter, createEStructuralFeatureAdapter, createETypedElementAdapter`

Methods inherited from class org.eclipse.emf.common.notify.impl.AdapterFactoryImpl
`adaptAllNew, adaptNew, associate, 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

### 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`.

### eAttributeItemProvider

    protected EAttributeItemProvider eAttributeItemProvider

  This keeps track of the one adapter used for all `EAttribute` instances.

### eAnnotationItemProvider

    protected EAnnotationItemProvider eAnnotationItemProvider

  This keeps track of the one adapter used for all `EAnnotation` instances.

### eClassItemProvider

    protected EClassItemProvider eClassItemProvider

  This keeps track of the one adapter used for all `EClass` instances.

### eDataTypeItemProvider

    protected EDataTypeItemProvider eDataTypeItemProvider

  This keeps track of the one adapter used for all `EDataType` instances.

### eEnumItemProvider

    protected EEnumItemProvider eEnumItemProvider

  This keeps track of the one adapter used for all `EEnum` instances.

### eEnumLiteralItemProvider

    protected EEnumLiteralItemProvider eEnumLiteralItemProvider

  This keeps track of the one adapter used for all `EEnumLiteral` instances.

### eFactoryItemProvider

    protected EFactoryItemProvider eFactoryItemProvider

  This keeps track of the one adapter used for all `EFactory` instances.

### eObjectItemProvider

    protected ReflectiveItemProvider eObjectItemProvider

  This keeps track of the one adapter used for all `EObject` instances.

### eOperationItemProvider

    protected EOperationItemProvider eOperationItemProvider

  This keeps track of the one adapter used for all `EOperation` instances.

### ePackageItemProvider

    protected EPackageItemProvider ePackageItemProvider

  This keeps track of the one adapter used for all `EPackage` instances.

### eParameterItemProvider

    protected EParameterItemProvider eParameterItemProvider

  This keeps track of the one adapter used for all `EParameter` instances.

### eReferenceItemProvider

    protected EReferenceItemProvider eReferenceItemProvider

  This keeps track of the one adapter used for all `EReference` instances.

### eStringToStringMapEntryItemProvider

    protected EStringToStringMapEntryItemProvider eStringToStringMapEntryItemProvider

  This keeps track of the one adapter used for all `Map.Entry` instances.

### eGenericTypeItemProvider

    protected EGenericTypeItemProvider eGenericTypeItemProvider

  This keeps track of the one adapter used for all `EGenericType` instances.

### eTypeParameterItemProvider

    protected ETypeParameterItemProvider eTypeParameterItemProvider

  This keeps track of the one adapter used for all `ETypeParameter` instances.

Constructor Detail

### EcoreItemProviderAdapterFactory

    public EcoreItemProviderAdapterFactory()

  This constructs an instance.

Method Detail

### createEAttributeAdapter

    public Adapter createEAttributeAdapter()

  This creates an adapter for a `EAttribute`.

  Overrides:
    `createEAttributeAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EAttribute`

### createEAnnotationAdapter

    public Adapter createEAnnotationAdapter()

  This creates an adapter for a `EAnnotation`.

  Overrides:
    `createEAnnotationAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EAnnotation`

### createEClassAdapter

    public Adapter createEClassAdapter()

  This creates an adapter for a `EClass`.

  Overrides:
    `createEClassAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EClass`

### createEDataTypeAdapter

    public Adapter createEDataTypeAdapter()

  This creates an adapter for a `EDataType`.

  Overrides:
    `createEDataTypeAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EDataType`

### createEEnumAdapter

    public Adapter createEEnumAdapter()

  This creates an adapter for a `EEnum`.

  Overrides:
    `createEEnumAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EEnum`

### createEEnumLiteralAdapter

    public Adapter createEEnumLiteralAdapter()

  This creates an adapter for a `EEnumLiteral`.

  Overrides:
    `createEEnumLiteralAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EEnumLiteral`

### createEFactoryAdapter

    public Adapter createEFactoryAdapter()

  This creates an adapter for a `EFactory`.

  Overrides:
    `createEFactoryAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EFactory`

### createEObjectAdapter

    public Adapter createEObjectAdapter()

  This creates an adapter for a `EObject`.

  Overrides:
    `createEObjectAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.

### createEOperationAdapter

    public Adapter createEOperationAdapter()

  This creates an adapter for a `EOperation`.

  Overrides:
    `createEOperationAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EOperation`

### createEPackageAdapter

    public Adapter createEPackageAdapter()

  This creates an adapter for a `EPackage`.

  Overrides:
    `createEPackageAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EPackage`

### createEParameterAdapter

    public Adapter createEParameterAdapter()

  This creates an adapter for a `EParameter`.

  Overrides:
    `createEParameterAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EParameter`

### createEReferenceAdapter

    public Adapter createEReferenceAdapter()

  This creates an adapter for a `EReference`.

  Overrides:
    `createEReferenceAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EReference`

### createEStringToStringMapEntryAdapter

    public Adapter createEStringToStringMapEntryAdapter()

  This creates an adapter for a `Map.Entry`.

  Overrides:
    `createEStringToStringMapEntryAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `Map.Entry`

### createEGenericTypeAdapter

    public Adapter createEGenericTypeAdapter()

  This creates an adapter for a `EGenericType`.

  Overrides:
    `createEGenericTypeAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `EGenericType`

### createETypeParameterAdapter

    public Adapter createETypeParameterAdapter()

  This creates an adapter for a `ETypeParameter`.

  Overrides:
    `createETypeParameterAdapter` in class `EcoreAdapterFactory`
  Returns:
    the new adapter.
  See Also:
    `ETypeParameter`

### 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)

  Specified by:
    `isFactoryForType` in interface `AdapterFactory`
  Overrides:
    `isFactoryForType` in class `EcoreAdapterFactory`
  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:
    a previously existing associated adapter, a new associated adapter if possible, or `null` otherwise.
  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)

  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`

### dispose

    public void dispose()

  This disposes all of the item providers created by this factory.

  Specified by:
    `dispose` in interface `IDisposable`

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