Knopflerfish包装

时间:2010-04-03 19:29:44

标签: osgi equinox apache-felix knopflerfish

我目前正在创建一个矩阵,显示Knopflerfish,Equinox和Felix在OSGi 4.2中的合规程度。

到目前为止,我查看了Knopflerfish文档(Link 1Link 2),以了解实际实现了多少Core和Compendium规范。

核心规范似乎已完全实现,但有关安全层声明性服务的一些不一致的陈述。

令我惊讶的是,所有纲要规范的实施程度是多少:

  • 远程服务
  • 日志服务
  • Http Service
  • 设备访问
  • 配置管理服务
  • 元节目服务
  • 偏好服务
  • 用户管理服务
  • 电汇管理服务
  • IO连接器服务
  • 初始供应
  • UPnP设备服务
  • 声明服务
  • 活动管理服务
  • 部署管理员
  • 自动配置
  • 应用程序管理员
  • DMT管理服务
  • 监控管理服务
  • 外国申请访问
  • 蓝图容器
  • 跟踪器
  • XML分析服务
  • 位置
  • 测量和状态
  • 执行环境

要了解更多我下载的(Download page)Knopflerfish的源代码,并查看了它。看起来规范的某些部分是通过OSGi Alliance(org.osgi。*)提供的“原始”框架实现的。

一个例子是UPnP包:

alt text http://img6.imageshack.us/img6/5853/screenshot20100403at212.png

这是否意味着通过“原始”OSGi框架添加了未由Knopflerfish直接实现的缺失部分?

这是否也适用于其他框架,如Felix或Equinox?

1 个答案:

答案 0 :(得分:1)

大多数OSGi规范定义了服务的接口类。您可以直接从OSGi Alliance的网站下载这些类和规范。

Knopflerfish等实现必须提供基本功能,例如:您在示例中提到的UPnP服务管理员的实际实现。一些接口类还提供必须由用户服务的开发者实现的接口,例如,用户服务的开发者。 BundleActivator。

声称符合OSGi标准的所有框架都必须提供这些接口的实现。没有“原始”OSGi框架(当然,除了参考实现之外)。接口不提供实现。