Interface InternalAgenda

All Superinterfaces:
ActivationsManager, Agenda

public interface InternalAgenda extends Agenda, ActivationsManager
  • Method Details

    • getWorkingMemory

      InternalWorkingMemory getWorkingMemory()
      Returns the WorkignMemory for this Agenda
      Returns:
      The WorkingMemory
    • setFocus

      boolean setFocus(String name)
      Sets the Agenda's focus to the specified AgendaGroup
      Returns:
      true if the AgendaGroup is changed
    • activateRuleFlowGroup

      void activateRuleFlowGroup(String name)
      Activates the RuleFlowGroup with the given name. All activations in the given RuleFlowGroup are added to the agenda. As long as the RuleFlowGroup remains active, its activations are automatically added to the agenda.
    • activateRuleFlowGroup

      void activateRuleFlowGroup(String name, String processInstanceId, String nodeInstanceId)
      Activates the RuleFlowGroup with the given name. All activations in the given RuleFlowGroup are added to the agenda. As long as the RuleFlowGroup remains active, its activations are automatically added to the agenda. The given processInstanceId and nodeInstanceId define the process context in which this RuleFlowGroup is used.
    • clearAndCancel

      void clearAndCancel()
      Clears all Activations from the Agenda
    • clearAndCancelAgendaGroup

      void clearAndCancelAgendaGroup(String name)
      Clears all Activations from an Agenda Group. Any Activations that are also in an Xor Group are removed the the Xor Group.
    • clearAndCancelActivationGroup

      void clearAndCancelActivationGroup(String name)
      Clears all Activations from an Activation-Group. Any Activations that are also in an Agenda Group are removed from the Agenda Group.
      Specified by:
      clearAndCancelActivationGroup in interface ActivationsManager
    • clearAndCancelRuleFlowGroup

      void clearAndCancelRuleFlowGroup(String name)
    • getFocusName

      String getFocusName()
      Returns the name of the agenda group that currently has the focus
    • isDeclarativeAgenda

      boolean isDeclarativeAgenda()
    • fireAllRules

      int fireAllRules(AgendaFilter agendaFilter, int fireLimit)
      Fires all activations currently in agenda that match the given agendaFilter until the fireLimit is reached or no more activations exist.
      Specified by:
      fireAllRules in interface ActivationsManager
      Parameters:
      agendaFilter - the filter on which activations may fire.
      fireLimit - the maximum number of activations that may fire. If -1, then it will fire until no more activations exist.
      Returns:
      the number of rules that were actually fired
    • halt

      void halt()
      Stop agenda from firing any other rule. It will finish the current rule execution though.
    • fireUntilHalt

      void fireUntilHalt()
      Keeps firing activations until a halt is called. If in a given moment, there is no activation to fire, it will wait for an activation to be added to an active agenda group or rule flow group.
    • fireUntilHalt

      void fireUntilHalt(AgendaFilter agendaFilter)
      Keeps firing activations until a halt is called. If in a given moment, there is no activation to fire, it will wait for an activation to be added to an active agenda group or rule flow group.
      Parameters:
      agendaFilter - filters the activations that may fire
    • dispose

      boolean dispose(InternalWorkingMemory wm)
    • isAlive

      boolean isAlive()
    • reset

      void reset()
    • setActivationsFilter

      void setActivationsFilter(ActivationsFilter filter)
      Sets a filter that prevents activations from being added to the agenda.
    • executeFlush

      void executeFlush()
    • activate

      void activate()
    • deactivate

      void deactivate()
    • tryDeactivate

      boolean tryDeactivate()
    • getActivationGroupsMap

      Map<String,InternalActivationGroup> getActivationGroupsMap()
    • sizeOfRuleFlowGroup

      int sizeOfRuleFlowGroup(String s)
    • isRuleActiveInRuleFlowGroup

      boolean isRuleActiveInRuleFlowGroup(String ruleflowGroupName, String ruleName, String processInstanceId)
    • notifyWaitOnRest

      void notifyWaitOnRest()
    • getActionsIterator

      Iterator<PropagationEntry> getActionsIterator()
    • hasPendingPropagations

      boolean hasPendingPropagations()
    • isParallelAgenda

      boolean isParallelAgenda()