Interface RuleEngineTestSupportService
- All Known Implementing Classes:
DefaultRuleEngineTestSupportService
public interface RuleEngineTestSupportService
Rule engine test supporting interface
-
Method Summary
Modifier and TypeMethodDescriptionvoidassociateRulesModule(AbstractRulesModuleModel module, Set<? extends AbstractRuleEngineRuleModel> rules) associate the rules to a moduleassociateRulesToNewModule(String moduleName, Set<? extends AbstractRuleEngineRuleModel> rules) create the rule module and associate the rules to itfactory method declaration to create new instance of AbstractRuleEngineRuleModeldecorateRuleForTest(Map<String, String> params) Returns a Customer, adding additional functionality to AbstractRuleEngineRuleModel, based on parameters mapgetTestModuleName(AbstractRuleEngineRuleModel ruleModel) Returns the name of the module, associated to the rulegetTestRulesModule(AbstractRuleEngineContextModel abstractContext, Set<AbstractRuleEngineRuleModel> ruleModels) Creates the concrete subclass of AbstractRulesModuleModel, based on rule engine implementationReturns a module, associated to a rule
-
Method Details
-
createRuleModel
AbstractRuleEngineRuleModel createRuleModel()factory method declaration to create new instance of AbstractRuleEngineRuleModel- Returns:
- instance of AbstractRuleEngineRuleModel subclass
-
associateRulesToNewModule
AbstractRulesModuleModel associateRulesToNewModule(String moduleName, 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, 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, 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
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
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
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
-