Class CompositeMaxDurationTimer

  • All Implemented Interfaces:
    java.io.Externalizable, java.io.Serializable, java.lang.Cloneable, org.drools.base.rule.RuleComponent, org.drools.base.rule.RuleConditionElement, org.drools.base.time.impl.Timer

    public class CompositeMaxDurationTimer
    extends BaseTimer
    implements org.drools.base.time.impl.Timer
    While a rule might have multiple DurationTimers, due to LHS CEP rules, there can only ever be one timer attribute. Duration rules should be considered a priority over the one timer rule. So the Timer cannot fire, until the maximum duration has passed.
    See Also:
    Serialized Form
    • Constructor Detail

      • CompositeMaxDurationTimer

        public CompositeMaxDurationTimer()
    • Method Detail

      • getTimerDeclarations

        public org.drools.base.rule.Declaration[][] getTimerDeclarations​(java.util.Map<java.lang.String,​org.drools.base.rule.Declaration> outerDeclrs)
        Specified by:
        getTimerDeclarations in class BaseTimer
      • addDurationTimer

        public void addDurationTimer​(DurationTimer durationTimer)
      • setTimer

        public void setTimer​(org.drools.base.time.impl.Timer timer)
      • createTrigger

        public org.drools.base.time.Trigger createTrigger​(long timestamp,
                                                          org.drools.base.reteoo.BaseTuple leftTuple,
                                                          org.drools.base.time.JobHandle jh,
                                                          java.lang.String[] calendarNames,
                                                          org.kie.api.runtime.Calendars calendars,
                                                          org.drools.base.rule.Declaration[][] declrs,
                                                          org.drools.base.base.ValueResolver valueResolver)
        Specified by:
        createTrigger in interface org.drools.base.time.impl.Timer
      • createTrigger

        public org.drools.base.time.Trigger createTrigger​(long timestamp,
                                                          java.lang.String[] calendarNames,
                                                          org.kie.api.runtime.Calendars calendars)
        Specified by:
        createTrigger in interface org.drools.base.time.impl.Timer
      • clone

        public org.drools.base.rule.ConditionalElement clone()
        Specified by:
        clone in interface org.drools.base.rule.RuleConditionElement
        Specified by:
        clone in class org.drools.base.rule.ConditionalElement
      • writeExternal

        public void writeExternal​(java.io.ObjectOutput out)
                           throws java.io.IOException
        Specified by:
        writeExternal in interface java.io.Externalizable
        Throws:
        java.io.IOException
      • readExternal

        public void readExternal​(java.io.ObjectInput in)
                          throws java.io.IOException,
                                 java.lang.ClassNotFoundException
        Specified by:
        readExternal in interface java.io.Externalizable
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException