The Knopflerfish release contains:
See bundle docs for detail
information on all bundles.
Also, the source code kit includes an easy-to use Ant
build system for creating
bundles.
Components defined by OSGi R3
The OSGi R3 specification defines several components, which could be
expected to exist in OSGi implementations. However, it should be noted that no
service is required to be present.
The OSGi specification currently supported by Knopflerfish is R3 and includes
the the R3 components listed below.
- Base framework The framework allows installing, start, stop,
update and uninstalling of program or data components called
bundles. Bundles are standard jar files
The framework contains the following internal components:
- PackageAdmin service. The PackageAdmin service allows
bundles to inspect other bundles packages.
- PermissionAdmin service. The PermissionAdmin service allows
bundles to manage the permissions of other bundles.
- StartLevel service. (new in R3)
The StartLevel service allows grouping of bundles into startlevels.
- URL service. (new in R3)
The URL service allows bundles to safely add URL schemas to
the framework.
- ServiceTracker utility The ServiceTracker provides utilities
for handling dynamic services.
- Log service The log service provides logging functions for
other bundles.
- HTTP service The HTTP service provides a web server where
applications can publish servlets or data.
- Configuration Manager The Configuration Manager
manages persistant storage of application data.
- Device Manager The Device Manager manages software
components related to physical device drivers.
- UserAdmin service The UserAdmin service provides functionality
for users, groups and access control.
- Preferences service (new in R3)
The Preferences service provides API and
functionality for storing bundle preferences.
- Position API (new in R3)
The Position API allows applications to
handle position-ralated data in a uniform way.
- Measurement API (new in R3)
The Measurement API allows applications to
handle measurements in well-defined units.
- Metatype API
The Metatype API allows applications to publish typing information
for configuration data.
- XML utility
The XML utility class privides a template class for publishing
XML parsers.
Note: All components following the OSGi R3 specification has been
known to pass the OSGi R3 tests (in external tests performed by Gatespace Teletics).
The Knopflerfish distributions cannot formally call itself "OSGi R3 certified", since only OSGi members are allowed to use this term. Instead, we use the term "designed to be compliant with OSGi R3", which is an allowed term.
Knopflerfish components
The Knopflerfish distributions contains a set of other useful components:
Knopflerfish optional components
The Knopflerfish optional distributions contains a set of optional
bundles:
Knopflerfish components available from SVN
Some components in Knopflerfish are currently only available as source code
in the Subversion repository. These components can be checked out by anyone
and installed into a previously installed KF distribution.
- OSGi Jini support
The Jini support follows the R3 Jini API. It uses Sun's reference
implementation for the Jini core and Nico Goeminne's driver
code.
See Jini
- X10 support
The X10 support uses code from the Java X10 Project, http://x10.homelinux.org.
see x10