Swordfish Documentation: OSGi Configuration Agent
Provide feedback to this feature on the talk page.
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.
The configuration Agent has two advantages:
- All Swordfish related configuration parameters can be found in one place
- Dynamic Reconfiguration can be achieved by re-deploying the corresponding Bundle with updated configuration parameters.
- 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
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
Authentication and Authorization
Ease of Use
Architecture Outline/ Implementation Ideas
How can an Authentication and Authorization Concept also be applied to this ‘local’ configuration?
Return to Eclipse Swordfish Swordfish Product Backlog