适配器

org.eclipse.core.runtime.adapters

3.0

适配器扩展点允许插件注册适配器工厂。运行时 XML 表达式语言使用此信息来确定适配器是否存在,而不会导致装入插件。通过扩展点注册适配器工厂可以使得启动插件时无需手工注册适配器工厂。

<!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>


以下是适配器声明的一个示例。此示例声明此插件将提供一个适配器工厂,该适配器工厂将使 IFile 类型的对象适应 MyFile 类型的对象。

      

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

可以使用 IAdapterManager.hasAdapter 方法来查询或者使用 IAdapterFactory 上的其中一种 getAdapter 方法来检索使用此扩展点注册的适配器工厂。在运行时不需要使用 IAdapterFactory.registerAdapters 来注册使用此扩展点来注册的适配器工厂。

平台中的几个插件为许多不同的 IAdaptable 对象提供了适配器。