Class BaseRuleEngine

  • All Implemented Interfaces:
    RuleEngine

    public class BaseRuleEngine
    extends java.lang.Object
    implements RuleEngine
    Basic rules engine
    • Constructor Detail

      • BaseRuleEngine

        public BaseRuleEngine​(java.util.Set<Rule> ruleSet)
    • Method Detail

      • getRuleSet

        public java.util.Set<Rule> getRuleSet()
        Specified by:
        getRuleSet in interface RuleEngine
        Returns:
        current rules
      • addRule

        public void addRule​(Rule rule)
        Description copied from interface: RuleEngine
        Add a rule
        Specified by:
        addRule in interface RuleEngine
        Parameters:
        rule - rule
      • evaluateRules

        public StateObj evaluateRules​(StateObj state)
        Evaluate each rule, if it applies, accrue the new state changes
        Specified by:
        evaluateRules in interface RuleEngine
        Parameters:
        state - input state
        Returns:
        accrued state changes from matching rules
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object