Adapter

org.eclipse.core.runtime.adapters

3.0

Mit dem Erweiterungspunkt des Adapters können Plug-ins Adapterfactories registrieren. Diese Information wird von der Laufzeit-XML-Ausdruckssprache zur Ermittlung der vorhandenen Adapter verwendet, ohne ein Laden von Plug-ins zu verursachen. Eine Registrierung von Adapterfactories über einen Erweiterungspunkt erfordert keine manuelle Registrierung von Adapterfactories, wenn ein Plug-in gestartet wird.

<!ELEMENT extension (factory+)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT factory (adapter+)>

<!ATTLIST factory

adaptableType CDATA #REQUIRED

class         CDATA #REQUIRED>


<!ELEMENT adapter EMPTY>

<!ATTLIST adapter

type CDATA #REQUIRED>


Beispiel für eine Adapterdeklaration. Dieses Beispiel deklariert, dass dieser Plug-in eine Adapterfactory bereitstellt, die Objekte des Typs 'IFile' an Objekte des Typs 'MyFile' anpasst.

      

<extension point=

"org.eclipse.core.runtime.adapters"

>

<factory class=

"com.xyz.MyFileAdapterFactory"

adaptableType=

"org.eclipse.core.resources.IFile"

>

<adapter type=

"com.xyz.MyFile"

/>

</factory>

</extension>

Adapterfactories, die durch Verwendung dieses Erweiterungspunktes registriert werden, können durch Verwendung der Methode IAdapterManager.hasAdapter oder durch Verwendung einer der Methoden getAdapter in IAdapterFactory abgerufen werden. Eine Adapterfactory, die mit diesem Erweiterungspunkt registriert wurde, muss nicht zur Laufzeit und unter Verwendung von IAdapterFactory.registerAdapters registriert werden.

Mehrere Plug-ins in der Plattform stellen Adapter für eine Reihe verschiedener IAdaptable-Objekte bereit.