XTypeProvider

From Apache OpenOffice Wiki
Jump to: navigation, search


每个 UNO 对象都应实现 com.sun.star.lang.XTypeProvider 接口。


一些应用程序需要了解 UNO 对象支持哪些接口,例如 OpenOffice.org Basic 引擎或调试工具(如 InstanceInspector)。引入 com.sun.star.lang.XTypeProvider 接口是为了避免分别调用 queryInterface() 来遍历所有已知接口。XTypeProvider 接口由 Java 和 C++ 帮助程序类实现。如果 XTypeProvider 必须手动实现,请使用以下方法:

  // module com::sun::star::lang
  interface XTypeProvider: com::sun::star::uno::XInterface
  { 
      sequence<type> getTypes(); 
      sequence<byte> getImplementationId(); 
  };


以下有关 Java 和 C++ 组件的各节介绍了 XTypeProvider 实现的示例。


Provided Types

方法 <idlml>com.sun.star.lang.XTypeProvider:getTypes</idlml>() 必须返回 OpenOffice.org 提供的所有接口类型的列表。OpenOffice.org Basic 引擎根据此信息来创建可用于对象的方法签名列表。


ImplementationID

为实现缓存功能,引入了 getImplementationId() 方法。此方法必须返回包含此实现类中已实现的接口集的标识符的 byte 数组。一个 ID 必须映射到一组接口,但是一组接口可以拥有多个 ID。每个实现类都应该生成一个静态 ID。


Content on this page is licensed under the Public Documentation License (PDL).
Personal tools
In other languages