Class RuleGroupExecutionRRD

  • All Implemented Interfaces:
    java.io.Serializable

    public class RuleGroupExecutionRRD
    extends java.lang.Object
    implements java.io.Serializable
    Represents a Rule Group execution during rule evaluation (gets inserted as one fact per rule group, the code being the rule group's code). This is used as a control fact to track and check the rules that have been executed for this group. Use the custom (see template) method allowedToExecute(RuleConfigurationRRD config) for checking whether a specific rule is allowed to execute.
    See Also:
    Serialized Form
    • Constructor Detail

      • RuleGroupExecutionRRD

        public RuleGroupExecutionRRD()
    • Method Detail

      • setCode

        public void setCode​(java.lang.String code)
      • getCode

        public java.lang.String getCode()
      • setExecutedRules

        public void setExecutedRules​(java.util.Map<java.lang.String,​java.lang.Integer> executedRules)
      • getExecutedRules

        public java.util.Map<java.lang.String,​java.lang.Integer> getExecutedRules()
      • setExclusive

        public void setExclusive​(boolean exclusive)
      • isExclusive

        public boolean isExclusive()
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • allowedToExecute

        public boolean allowedToExecute​(RuleConfigurationRRD ruleConfig)
        Determines whether the given rule (identified by its config object) is allowed to be executed. When the already triggered rule gets triggered again, it is allowed to be executed as many times as specified by the rules 'maximum allowed executions' attribute.
      • trackRuleGroupExecution

        public void trackRuleGroupExecution​(RuleConfigurationRRD ruleConfig)