Interface RuleEngineTestSupportService
-
- All Known Implementing Classes:
DefaultRuleEngineTestSupportService,DroolsRuleEngineTestSupportService
public interface RuleEngineTestSupportServiceRule engine test supporting interface
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidassociateRulesModule(AbstractRulesModuleModel module, java.util.Set<? extends AbstractRuleEngineRuleModel> rules)associate the rules to a moduleAbstractRulesModuleModelassociateRulesToNewModule(java.lang.String moduleName, java.util.Set<? extends AbstractRuleEngineRuleModel> rules)create the rule module and associate the rules to itAbstractRuleEngineRuleModelcreateRuleModel()factory method declaration to create new instance of AbstractRuleEngineRuleModeljava.util.function.Consumer<AbstractRuleEngineRuleModel>decorateRuleForTest(java.util.Map<java.lang.String,java.lang.String> params)Returns a Customer, adding additional functionality to AbstractRuleEngineRuleModel, based on parameters mapjava.lang.StringgetTestModuleName(AbstractRuleEngineRuleModel ruleModel)Returns the name of the module, associated to the ruleAbstractRulesModuleModelgetTestRulesModule(AbstractRuleEngineContextModel abstractContext, java.util.Set<AbstractRuleEngineRuleModel> ruleModels)Creates the concrete subclass of AbstractRulesModuleModel, based on rule engine implementationjava.util.Optional<AbstractRulesModuleModel>resolveAssociatedRuleModule(AbstractRuleEngineRuleModel ruleModel)Returns a module, associated to a rule
-
-
-
Method Detail
-
createRuleModel
AbstractRuleEngineRuleModel createRuleModel()
factory method declaration to create new instance of AbstractRuleEngineRuleModel- Returns:
- instance of AbstractRuleEngineRuleModel subclass
-
associateRulesToNewModule
AbstractRulesModuleModel associateRulesToNewModule(java.lang.String moduleName, java.util.Set<? extends AbstractRuleEngineRuleModel> rules)
create the rule module and associate the rules to it- Parameters:
moduleName- - name of the module (or the related knowledge base)rules- - set of rules to associate the module with- Returns:
- instance of AbstractRulesModuleModel subclass
-
associateRulesModule
void associateRulesModule(AbstractRulesModuleModel module, java.util.Set<? extends AbstractRuleEngineRuleModel> rules)
associate the rules to a module- Parameters:
module- - rule modulerules- - set of rules to associate the module with
-
getTestRulesModule
AbstractRulesModuleModel getTestRulesModule(AbstractRuleEngineContextModel abstractContext, java.util.Set<AbstractRuleEngineRuleModel> ruleModels)
Creates the concrete subclass of AbstractRulesModuleModel, based on rule engine implementation- Parameters:
abstractContext- instance of AbstractRuleEngineContextModelruleModels- - a set of AbstractRuleEngineRuleModel instances- Returns:
- instance of AbstractRulesModuleModel subclass (based on rule engine implementation)
-
resolveAssociatedRuleModule
java.util.Optional<AbstractRulesModuleModel> resolveAssociatedRuleModule(AbstractRuleEngineRuleModel ruleModel)
Returns a module, associated to a rule- Parameters:
ruleModel- an instance of the AbstractRuleEngineRuleModel subclass- Returns:
- Optional instance of AbstractRulesModuleModel
-
decorateRuleForTest
java.util.function.Consumer<AbstractRuleEngineRuleModel> decorateRuleForTest(java.util.Map<java.lang.String,java.lang.String> params)
Returns a Customer, adding additional functionality to AbstractRuleEngineRuleModel, based on parameters map- Parameters:
params- Map of strings to strings, parametrizing additional functionality (e.g. global values in case of Drools implementation)- Returns:
- an instance of Customer for AbstractRuleEngineRuleModel
-
getTestModuleName
java.lang.String getTestModuleName(AbstractRuleEngineRuleModel ruleModel)
Returns the name of the module, associated to the rule- Parameters:
ruleModel- an instance of AbstractRuleEngineRuleModel or it's subclass- Returns:
- name of the associated module, if applicable. Null otherwise
-
-