Package org.jeasy.rules.core
Class InferenceRulesEngine
- java.lang.Object
-
- org.jeasy.rules.core.AbstractRulesEngine
-
- org.jeasy.rules.core.InferenceRulesEngine
-
- All Implemented Interfaces:
RulesEngine
public final class InferenceRulesEngine extends AbstractRulesEngine
InferenceRulesEngineimplementation.Rules are selected based on given facts and fired according to their natural order which is priority by default. This implementation continuously selects and fires rules until no more rules are applicable.
- Author:
- Mahmoud Ben Hassine ([email protected])
-
-
Constructor Summary
Constructors Constructor Description InferenceRulesEngine()Create a new inference rules engine with default parameters.InferenceRulesEngine(RulesEngineParameters parameters)Create a new inference rules engine.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Map<Rule,Boolean>check(Rules rules, Facts facts)Check rules without firing them.voidfire(Rules rules, Facts facts)Fire all registered rules on given facts.voidregisterRuleListener(RuleListener ruleListener)Register a rule listener.voidregisterRuleListeners(List<RuleListener> ruleListeners)Register a list of rule listener.voidregisterRulesEngineListener(RulesEngineListener rulesEngineListener)Register a rules engine listener.voidregisterRulesEngineListeners(List<RulesEngineListener> rulesEngineListeners)Register a list of rules engine listener.-
Methods inherited from class org.jeasy.rules.core.AbstractRulesEngine
getParameters, getRuleListeners, getRulesEngineListeners
-
-
-
-
Constructor Detail
-
InferenceRulesEngine
public InferenceRulesEngine()
Create a new inference rules engine with default parameters.
-
InferenceRulesEngine
public InferenceRulesEngine(RulesEngineParameters parameters)
Create a new inference rules engine.- Parameters:
parameters- of the engine
-
-
Method Detail
-
fire
public void fire(Rules rules, Facts facts)
Description copied from interface:RulesEngineFire all registered rules on given facts.
-
check
public Map<Rule,Boolean> check(Rules rules, Facts facts)
Description copied from interface:RulesEngineCheck rules without firing them.- Returns:
- a map with the result of evaluation of each rule
-
registerRuleListener
public void registerRuleListener(RuleListener ruleListener)
Register a rule listener.- Overrides:
registerRuleListenerin classAbstractRulesEngine- Parameters:
ruleListener- to register
-
registerRuleListeners
public void registerRuleListeners(List<RuleListener> ruleListeners)
Register a list of rule listener.- Overrides:
registerRuleListenersin classAbstractRulesEngine- Parameters:
ruleListeners- to register
-
registerRulesEngineListener
public void registerRulesEngineListener(RulesEngineListener rulesEngineListener)
Register a rules engine listener.- Overrides:
registerRulesEngineListenerin classAbstractRulesEngine- Parameters:
rulesEngineListener- to register
-
registerRulesEngineListeners
public void registerRulesEngineListeners(List<RulesEngineListener> rulesEngineListeners)
Register a list of rules engine listener.- Overrides:
registerRulesEngineListenersin classAbstractRulesEngine- Parameters:
rulesEngineListeners- to register
-
-