Skip to end of metadata
Go to start of metadata

The application profile specifies the configuration parameters for the OSGi framework and the bundles to be loaded by the framework.

Example ApplicationProfile.xml file
  • id - the application identifier
  • name - the application name
  • version - the application version
  • updates- specifies where the application updates are located
    • updateSite - the location of application updates
    • updatesFile - the file where the list application versions is listed
    • libDirectory - the directory where the application bundles are stored
    • pluginSite - the location of application plugins
    • pluginsFile - the file where the list of plugins is listed
  • frameworkConfiguration - a configuration parameter to be passed to the OSGi framework

    • name - the name of the configuration
    • value the value of the configuration
  • bundle- an OSGi bundle to be loaded in the framework
    • symbolicName -  the bundle name specified by the Bundle-SymbolicName header in the bundle manifest
    • version - the bundle version specified by the Bundle-Version header in the bundle manifest
    • fileName - the name of the bundle jar file

Framework Configuration Properties

These properties are passed the OSGi framework on startup. Properties starting with org.osgi are standard OSGi properties; implementations of OSGi frameworks may specify other properties (see the Felix configuration properties as an example)

The framework configuration properties specified for the Taverna Workbench are  

  • org.osgi.framework.bootdelegationa comma-delimited list of packages that should be made implicitly available to all bundles from the parent class loader
  • org.osgi.framework.system.packages.extra a comma-delimited list of packages that should be exported via the System Bundle from the framework class loader

  • org.osgi.framework.storage.cleanwhether the bundle cache is flushed. The value can either be "none" or "onFirstInit", where "none" does not flush the bundle cache and "onFirstInit" flushes the bundle cache when the framework instance is first initialized

Creating the Application Profile

The application profile is generated by the taverna-maven-plugin using plugin configuration properties and the project information in the application pom file.

Example taverna-maven-plugin configuration

Updating an Application

Taverna goes to the update site (e.g http://updates.taverna.org.uk/workbench/3.0/devto check for new versions of the application profile. The update site contains a list of application profile versions (updates.xml) and also specifies the latest application profile.

 

Example update site layout

Index of /workbench/3.0/dev

All files in an update site have checksum files so that download errors can be identified

If there is a more recent application profile on the update site Taverna will download the new application profile, compare the new set of bundles with the currently installed bundles and download any new versions bundles required for the new application profile. If all downloads are successful the new application profile is set as the current profile and used when Taverna is restarted.

 

Labels
  • None