-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Labels
Description
Add a SynchronousBundleListener to the Drools (or any Rule engine), which searches installed bundles for rule files, in the public packages of the bundle, and automatically adds them to the rule base of the engine.
The reverse process: automatically remove all rule files from the rule base when the bundle is being uninstalled; should also be managed.
use uAALBundleExtender as example of how to use this OSGi feature.
Advantages:
- Define different set of rules within a bundle, each in a different file, each identified uniquely through the same mechanism as package-class used in java
- These bundles can be created with the Drools IDE, only requiring the extra work of defining the POM to define the bundle.
- Drools files can coexist together with their support javacode.
- Aggregate different rule sets, and support code into a single bundle
- Aggregate different bundles into karaf_feature-like components, easing the interoperability between rule-based features. (maybe when there are enough rule-features we can catalogue them similarly to our ontologies)
- Managing conditional rule loading: public rules will automatically be loaded, private or protected packages will not, these rule sets can be managed by the bundle itself, and only it decides when these rules should be loaded (and unloaded), through the existing mechanism (which will support back-compatibility)
Reactions are currently unavailable