Jump to: navigation, search

Swordfish Documentation: OSGi Configuration Agent

{{#eclipseproject:rt.swordfish}} Provide feedback to this feature on the talk page.

Description

Provide a Configuration agent, which retrieves configuration from OSGi bundles. One Bundle contains all Swordfish configuration. This can be installed and deployed into Equinox. This enables dynamic re-configuration.

Current Problem / Pain

Dynamic reconfiguration is missing.

Advantages/Business Case

The configuration Agent has two advantages:

  1. All Swordfish related configuration parameters can be found in one place
  2. Dynamic Reconfiguration can be achieved by re-deploying the corresponding Bundle with updated configuration parameters.

Use Cases

  • When a new Plugin/OSGi Bundle is added to Swordfish it can immediately retrieve al necessary configuration from the Configuration Bundle (Status: Already implemented and tested)
  • The configuration of a running Swordfish can be changed dynamically (without stopping it) by replacing the configuration Bundle through one, containing the updated configuration parameters. (Status: Implemented but tests are missing)


Conditions of satisfaction

  • Feature is complete: Start/Run/Control and Documentation Criteria shall be fulfilled. An Example for developers to experiment with dynamic reconfiguration shall be provided.
  • Demonstrate the deployment of a new plugin into running swordfish and proof it is retrieving configuration from the Configuration Bundle.
  • Demonstrate the change of an Swordfish configuration parameter by replacing the Configuration bundle through one with a changed parameter. Proof the change of the parameter by showing corresponding changed behaviour. The changed configuration shall become effective without restarting swordfish or the plugin.
  • Successful Integration test which includes stability tests during the replacement of configuration.
  • Documentation of all Swordfish configuration parameters in the Swordfish documentation Wiki:
    • Parameter name
    • Allowed values/value range
    • Default value
    • Description of function of configuration parameter
    • The same information for attributes, in case attributes exist for a parameter

Limitations

A connection to a centralized remote configuration will only be added later. Feature completeness: Installation as Eclipse Feature and deployment can be added later.

Non Functional aspects

Volume/Load

Security aspects

Authentication and Authorization

Ease of Use

Architecture Outline/ Implementation Ideas

Open Questions

How can an Authentication and Authorization Concept also be applied to this ‘local’ configuration?




Return to Eclipse Swordfish Swordfish Product Backlog

Swordfish Wiki Home