Package org.drools.core.rule.accessor
Interface Accumulator
-
- All Superinterfaces:
Invoker,RuleComponent
- All Known Implementing Classes:
Accumulator.SafeAccumulator,CollectAccumulator,JavaAccumulatorFunctionExecutor
public interface Accumulator extends Invoker
Accumulator Created: 04/06/2006- Version:
- $Id$
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classAccumulator.SafeAccumulatorThis class is used as a wrapper delegate when a security policy is in place.
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Objectaccumulate(Object workingMemoryContext, Object context, Tuple leftTuple, InternalFactHandle handle, Declaration[] declarations, Declaration[] innerDeclarations, ReteEvaluator reteEvaluator)Executes the accumulate (action) code for the given fact handleObjectcreateContext()Creates the context object for an accumulator session.ObjectcreateWorkingMemoryContext()Creates and return a context object for each working memory instancedefault Declaration[]getRequiredDeclarations()ObjectgetResult(Object workingMemoryContext, Object context, Tuple leftTuple, Declaration[] declarations, ReteEvaluator reteEvaluator)Gets the result of the accummulationObjectinit(Object workingMemoryContext, Object context, Tuple leftTuple, Declaration[] declarations, ReteEvaluator reteEvaluator)Executes the initialization block of codedefault voidreplaceDeclaration(Declaration declaration, Declaration resolved)booleansupportsReverse()Returns true if this accumulator supports operation reversalbooleantryReverse(Object workingMemoryContext, Object context, Tuple leftTuple, InternalFactHandle handle, Object value, Declaration[] declarations, Declaration[] innerDeclarations, ReteEvaluator reteEvaluator)Reverses the accumulate action for the given fact handle-
Methods inherited from interface org.drools.core.rule.accessor.Invoker
wrapsCompiledInvoker
-
-
-
-
Method Detail
-
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, Tuple leftTuple, Declaration[] declarations, ReteEvaluator reteEvaluator)
Executes the initialization block of code- Parameters:
leftTuple- tuple causing the rule firedeclarations- previous declarationsreteEvaluator-- Throws:
Exception
-
accumulate
Object accumulate(Object workingMemoryContext, Object context, Tuple leftTuple, InternalFactHandle handle, Declaration[] declarations, Declaration[] innerDeclarations, ReteEvaluator reteEvaluator)
Executes the accumulate (action) code for the given fact handle- Parameters:
leftTuple-handle-declarations-innerDeclarations-reteEvaluator-- Throws:
Exception
-
supportsReverse
boolean supportsReverse()
Returns true if this accumulator supports operation reversal- Returns:
-
tryReverse
boolean tryReverse(Object workingMemoryContext, Object context, Tuple leftTuple, InternalFactHandle handle, Object value, Declaration[] declarations, Declaration[] innerDeclarations, ReteEvaluator reteEvaluator)
Reverses the accumulate action for the given fact handle- Parameters:
context-leftTuple-handle-declarations-innerDeclarations-reteEvaluator-- Throws:
Exception
-
getResult
Object getResult(Object workingMemoryContext, Object context, Tuple leftTuple, Declaration[] declarations, ReteEvaluator reteEvaluator)
Gets the result of the accummulation- Parameters:
leftTuple-declarations-reteEvaluator-- Returns:
- Throws:
Exception
-
replaceDeclaration
default void replaceDeclaration(Declaration declaration, Declaration resolved)
-
getRequiredDeclarations
default Declaration[] getRequiredDeclarations()
-
-