1

I am at the moment creating a matrix which is showing how far Knopflerfish, Equinox and Felix are OSGi 4.2 compliant.

So far I looked at the Knopflerfish documentation (Link 1, Link 2) to get an idea of how much of the Core and Compendium specs are actually implemented.

The core specification seems to be fully implemented, although there are some inconsistent statements about the Security Layer and the Declarative Services.

What makes me wonder is how much of all the Compendium specs are implemented:

  • Remote Services
  • Log Service
  • Http Service
  • Device Access
  • Configuration Admin Service
  • Metatype Service
  • Preferences Service
  • User Admin Service
  • Wire Admin Service
  • IO Connector Service
  • Initial Provisioning
  • UPnP Device Service
  • Declarative Services
  • Event Admin Service
  • Deployment Admin
  • Auto Configuration
  • Application Admin
  • DMT Admin Service
  • Monitor Admin Service
  • Foreign Application Access
  • Blueprint Container
  • Tracker
  • XML Parser Service
  • Position
  • Measurement and State
  • Execution Environment

To find out more I downloaded (Download page) the source code of Knopflerfish and had a look at it. It looks like some parts of the spec are implemented through the "original" framework provided by the OSGi Alliance (org.osgi.*).

One example is the UPnP package:

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

Does this mean that missing parts which are not directly implemented by Knopflerfish are added through the "original" OSGi framework?

And does this also apply to other frameworks like Felix or Equinox?

4

1 回答 1

1

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

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

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

于 2010-04-05T12:18:40.053 回答