OSGI basic

General
  • describe the unit of modularization in OSGi
  • describe the relationship of OSGi bundles to eclipse plugins
  • describe OSGi layers and their responsibilities
The manifest
  • identify the OSGi bundle meta data descriptor from a list of jar entries
  • detect incorrect bundles from a list of jar entries
  • From a selection of manifest headers identify the mandatory ones
  • be able to tell the default values for the following headers
    • Bundle-Classpath
    • Bundle-ManifestVersion
    • Bundle-Version
Bundle contents
  • know how bundles are packaged usually (technically speaking)
  • identify legal/illegal contents of a bundle
Common syntax knowledge
  • from a list of version-strings identify incorrect ones
  • be able to order version-strings
  • detect incorrect header syntax
Import/export directives
  • show how to use the following directives to extend/enable visibility of java packages:
    • export-package
    • import-package
    • private-package
  • find missing import-package for a given (small) bundle
  • find redundant import-package for a given (small) bundle
  • configure a bundle so that it substitutes a package
  • avoid using require-bundle header using import-package
  • Show how you can make a given importing package optional
Lifecycle Layer: Bundle States
  • Show the difference of the following bundle states: INSTALLED, RESOLVED, ACTIVE
  • predict the bundle-identifier after a framework restart
  • show how you can execute bundle code directly on bundle startup / stop
  • identify the system bundle from a list of bundles
  • predict the behaviour if the system bundles shuts down
  • show the requirements to start a bundle
Basic API
  • from a list of interfaces, determine the one that provides the main lifecycle methods for a bundle
  • show how can get the system bundleContext reference
  • show how you programmatically shutdown the framework
  • identify a valid BundleActivator implementation
  • predict the bundle state if an uncatched exception is thrown inside BundleActivator.start() or BundleActivator.stop()
  • predict the outcome of calling the following lifecycle-methods on the System Bundle:
    • start
    • stop
    • update
    • uninstall

你可能感兴趣的:(eclipse,osgi)