Changes

Jump to: navigation, search

OSGi Concepts

2,868 bytes added, 09:55, 25 January 2011
no edit summary
[[Category:OSGi]]{{Ecl_menu}} The [http://www.osgi.org OSGi Alliance] - Open Services Gateway initiative - is an open standards organization founded in March 1999 that originally specified and continues to maintain the OSGi standard.[http://www.osgi.org/About/WhyOSGi OSGi technology] seems to be remarkably difficult to those unfamiliar with it. <u>Definitions:</u>::1. '''The OSGi technology is a set of specifications that define a dynamic component system for Java'''.[http://www.osgi.org/About/WhatIsOSGi]::A software component is a unit of composition that can be developed independently with contractually specified interfaces and explicit context dependencies.[http://www.softwareresearch.net/fileadmin/src/docs/publications/J010.pdf] '''OSGi''' enables the development of applications from '''components''' that could be:* reusable* dynamically composed* hide their implementation* communicate their dependencies and services ::2. <u>'''Bundle''' is the name for a component in the OSGi Architecture.</u><br/>(TODOgeneric bundle definition - a group of things fastened together for convenient handling[http://www.merriam-webster.com/dictionary/bundle] )  [[Image:OSGi-Layering.png|400px]] [http://zenit.senecac.Description on.ca/wiki/index.php/OSGi_Framework OSGi Framework]The following list contains a short definition of basics concepts the terms: * '''[http://zenit.senecac.on.ca/wiki/index.php/OSGi_Concepts_Bundles Bundles]''' - Bundles are the OSGi components made by the developers.* '''[http://zenit.senecac.on.ca/wiki/index.php/OSGi_Concepts_Services Services]''' - The services layer connects bundles in a dynamic way by offering a publish-find-bind model for plain old Java objects.* '''[http://zenit.senecac.on.ca/wiki/index.php/OSGi_Concepts_Bundle_Life-Cycle Life-Cycle]''' - The API to install, start, stop, update, and uninstall bundles.* '''[http://zenit.senecac.on.ca/wiki/index.php/OSGi_Concepts_Modules Modules]''' - The layer that defines how a bundle can import and export code.* '''[http://zenit.senecac.on.ca/wiki/index.php/OSGi_Concepts_Execution_Security Security]''' - The layer that handles the security aspects.* '''[http://zenit.senecac.on.ca/wiki/index.php/OSGi_Concepts_Execution_Environments Execution Environments]''' - Defines what methods and classes are available in a specific platform. The core component of the OSGi Specifications is the OSGi Framework. The Framework provides a standardized environment to applications with the layers described above.The most used implementations of [http://www.osgi.org/Specifications/HomePage OSGi developmentSpecifications] are [http://www.knopflerfish.org/ Knopflerfish] and [http://www.eclipse.org/equinox/ Equinox]. Regardless of the particular implementation, the interactions between layers take place as depicted in the below picture.<h4>[http://www.osgi.org/Release4/HomePage Interactions between layers]</h4> [[File:bundle-inter.png|400px|Interactions between layers]]

Navigation menu