serviceondemand.jar

Description
provides an activator to intercept calls to the bundle context in order to install bundles when services are required
For more details on how to use this bundle, refer to the /doc/readme.html file embedded in the bundle jarfile.

Contributors

License
Library GNU Public License

Services

Properties

Requirements

  • org.ungoverned.osgi.service.bundlerepository.BundleRepositoryService

  • Download

    Build

    1. configure the common.properties if necessary
    2. configure the project.properties if necessary
    3. build with ant

    Settings
    Set the manifest entries as following

    The Bundle-Activator instance creates and starts an instance of the X-Bundle-Activator class and intercepts all the method calls to the context. This enables to intercepts getServiceReferences() and getService() method calls in order to install and start bundles from OBR when those bundles provide matching services.
    Remark: The on-demand installation/activation is recursive if the bundles selected in the OBR are themselves driven by the ServiceOnDemand.

    Run the demo
    To run the demo of this bundle, enter the following commands in the OSCAR shell

    start the bundlerepository.jar if necessary (list it with the command ps.

    install http://www-adele.imag.fr/~donsez/dev/osgi/serviceondemand/serviceondemand.jar
    obr install "Service Binder"
    obr urls http://www-adele.imag.fr/~donsez/dev/osgi/serviceondemanddemo/test/repository.hello.xml
    obr list
    obr install "Hello Service Specification 1.2"
    install http://www-adele.imag.fr/~donsez/dev/osgi/serviceondemanddemo/serviceondemanddemo.jar
    ps
    services
    start 7
    ps
    services
    
    3 bundles are installed and started when the bundle 7 is started and calls getService() methods

    Typical Usages

  • Interactive TV deployment: the iTV operator push only the bundle containing the main XLet
  • Differed service installation
  • Differed service activation : active installed bundles when services are required
  • ...
  • Tested gateways

    Versions history

    TODO (contributions are welcome)