OSGi Library Bundle

The OSGi Library Bundle holds a library with the basic OSGi Service APIs. The bundle itself has no functionality, it just exports API packages that can be implemented by other bundles in the OSGi framework. The bundles that should implement interfaces from the OSGi Library Bundle may import them instead of defining and then exporting them for the use of other bundles.

The interfaces, exported by the OSGi Library Bundle are used by many bundles. By exporting those interfaces, all client (importer) bundles can be resolved, without the necessity to load the bundles, which implement these interfaces. For example, as UserAdmin Bundle is not crucial for the proper functioning of the HTTP Bundle and as org.osgi.service.useradmin package is exported by the OSGi Library Bundle, it is not necessary to install and start the UserAdmin Bundle, in order to start the HTTP Bundle. So, if a lack of system resources suggests decrease of memory load or simply the scenario in which the framework is used does not require a specific bundle, each of the OSGi bundles may not be included from your configuration of bundles on a target device.

There is a set of bundles, each of them exporting a single OSGi API. These bundles are: CM API, Device API, HTTP API, Log API, MetaType API, Preferences API, User Management API, Service Tracker API, and Java Servlet API. Their purpose is the one explained above - when the framework configuration requires a little set of the OSGi APIs, they can be selected by any package, and the OSGi Library Bundle can be excluded from the configuration.

Bundle Information

Bundle JAR

The JAR file of the OSGi Library Bundle is osgilib.jar, and it is found in the bundles folder.

Import

The OSGi Library Bundle imports no packages.

Export

The OSGi Library Bundle exports the following packages:

Package Description
org.mbs.eventadmin Holds an event pool utility for optimized creation of event objects.
javax.servlet and javax.servlet.http Hosts the components of the Java Servlet API 2.2 developed by Sun Microsystems.
javax.servlet.jsp Contains classes of the JSP technology, developed by Sun Microsystems, used by each JSP class.
javax.servlet.jsp.tagext Contains components necessary for using tag libraries into the developed JSP pages.
org.osgi.service.cm Contains interfaces for administering, processing and receiving configuration data as defined in the OSGi Configuration Admin Service Specification. These interfaces are implemented by the Config Bundle.
org.osgi.service.device Holds the main components, defined by the OSGi Device Access Specification. These components are supported and managed by the Device Manager Bundle.
org.osgi.service.eventadmin Contains interfaces for subscribing for and generating events as described in the OSGi Event Admin Service Specification, implemented by the Event Admin bundle.
org.osgi.service.http Holds the basic components that are defined by the OSGi HTTP Service Specification, the Http Service is implemented by the HTTP Bundle.
org.osgi.service.metatype Shares interfaces through which an attribute can be described, they also provide access to meta types and description for the data type information of an objectclass. The package usage terms are specified in the OSGi Metatype Specification.
org.osgi.service.log Holds the basic components, defined by the OSGi Log Service Specification, the Log Service is implemented by the Log Bundle.
org.osgi.service.prefs Shares the interfaces for management and access to preferences data defined in the OSGi Preferences Service Specification, implemented by the Preferences Bundle.
org.osgi.service.provisioning Conatins the interfaces for initial provisioning of the OSGi platform for control by a remote management system.
org.osgi.service.useradmin Holds the basic components that are defined by the OSGi User Admin Specification, implemented by the User Admin Bundle.
prg.osgi.service.wireadmin Contains the The OSGi Wire Admin Service API.
org.osgi.util.measurement Holds utilties for measuring states and units.
org.osgi.util.position Represents geographic locations.
org.osgi.util.tracker Provides a utility, defined by the OSGi Service Tracker Specification, which simplifies using services from the Framework's service registry.

Configuration

The bundle has no user-definable properties for configuration.

References

Refer to the OSGi Service Platform Service Compendium.


OSGi Bundles