Jump to: navigation, search

Gyrex/Developer Guide/Roles

< Gyrex‎ | Developer Guide
Revision as of 15:01, 28 November 2012 by Gunnar.wagenknecht.org (Talk | contribs) (Example)

In Gyrex roles are used to control what bundles and what OSGi applications (OSGi application admin) will be started on a particular node.


  • Bundle org.eclipse.gyrex.boot (Gyrex 1.0 or higher)
  • Equinox Extension Registry

Define Roles

Roles are implemented using the Equinox Extension Registry. This decision was made in order to allow a declaritive approach for devining roles without writing any line of Java as well as to support lazy activation. It may be possible to use DS in the future (bug 395332).

In order to define a role you need to create an extension to the org.eclipse.gyrex.server.roles extension point. Each role consists of an identifier, a name and references a set of bundles and/or applications to start. Applications must be defined using the Equinox org.eclipse.core.runtime.applications extension point.


The following Example defines a role "My Server Role".

<role id="com.abc.my.role" name="My Server Role">
    <requireBundle symbolicName="com.abc.thridparty" />
    <requireApplication applicationId="com.abc.my.application" />

The role requires the bundle com.abc.thridparty to be started as well as the application com.abc.my.application.