Interface Accumulator

All Superinterfaces:
Invoker, RuleComponent

public interface Accumulator extends Invoker
Accumulator Created: 04/06/2006
Version:
$Id$
  • Method Details

    • createWorkingMemoryContext

      Object createWorkingMemoryContext()
      Creates and return a context object for each working memory instance
      Returns:
    • createContext

      Object createContext()
      Creates the context object for an accumulator session. The context is passed as a parameter to every subsequent accumulator method call in the same session.
      Returns:
    • init

      Object init(Object workingMemoryContext, Object context, BaseTuple leftTuple, Declaration[] declarations, ValueResolver valueResolver)
      Executes the initialization block of code
      Parameters:
      leftTuple - tuple causing the rule fire
      declarations - previous declarations
      valueResolver -
      Throws:
      Exception
    • accumulate

      Object accumulate(Object workingMemoryContext, Object context, BaseTuple leftTuple, FactHandle handle, Declaration[] declarations, Declaration[] innerDeclarations, ValueResolver valueResolver)
      Executes the accumulate (action) code for the given fact handle
      Parameters:
      leftTuple -
      handle -
      declarations -
      innerDeclarations -
      valueResolver -
      Throws:
      Exception
    • supportsReverse

      boolean supportsReverse()
      Returns true if this accumulator supports operation reversal
      Returns:
    • tryReverse

      boolean tryReverse(Object workingMemoryContext, Object context, BaseTuple leftTuple, FactHandle handle, Object value, Declaration[] declarations, Declaration[] innerDeclarations, ValueResolver valueResolver)
      Reverses the accumulate action for the given fact handle
      Parameters:
      context -
      leftTuple -
      handle -
      declarations -
      innerDeclarations -
      valueResolver -
      Throws:
      Exception
    • getResult

      Object getResult(Object workingMemoryContext, Object context, BaseTuple leftTuple, Declaration[] declarations, ValueResolver valueResolver)
      Gets the result of the accummulation
      Parameters:
      leftTuple -
      declarations -
      valueResolver -
      Returns:
      Throws:
      Exception
    • replaceDeclaration

      default void replaceDeclaration(Declaration declaration, Declaration resolved)
    • getRequiredDeclarations

      default Declaration[] getRequiredDeclarations()