Class CollectAccumulator
- java.lang.Object
-
- org.drools.core.base.accumulators.CollectAccumulator
-
- All Implemented Interfaces:
Externalizable,Serializable,Accumulator,Invoker,RuleComponent
public class CollectAccumulator extends Object implements Accumulator, Externalizable
An accumulator to execute "collect" CEs- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.drools.core.spi.Accumulator
Accumulator.SafeAccumulator
-
-
Constructor Summary
Constructors Constructor Description CollectAccumulator()CollectAccumulator(Collect collect, boolean unwrapHandle)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectaccumulate(Object workingMemoryContext, Object context, Tuple leftTuple, InternalFactHandle handle, Declaration[] declarations, Declaration[] innerDeclarations, WorkingMemory workingMemory)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 instanceObjectgetResult(Object workingMemoryContext, Object context, Tuple leftTuple, Declaration[] declarations, WorkingMemory workingMemory)Gets the result of the accummulationObjectinit(Object workingMemoryContext, Object context, Tuple leftTuple, Declaration[] declarations, WorkingMemory workingMemory)Executes the initialization block of codevoidreadExternal(ObjectInput in)booleansupportsReverse()Returns true if this accumulator supports operation reversalbooleantryReverse(Object workingMemoryContext, Object context, Tuple leftTuple, InternalFactHandle handle, Object value, Declaration[] declarations, Declaration[] innerDeclarations, WorkingMemory workingMemory)Reverses the accumulate action for the given fact handlevoidwriteExternal(ObjectOutput out)
-
-
-
Constructor Detail
-
CollectAccumulator
public CollectAccumulator()
-
CollectAccumulator
public CollectAccumulator(Collect collect, boolean unwrapHandle)
-
-
Method Detail
-
readExternal
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
- Specified by:
readExternalin interfaceExternalizable- Throws:
IOExceptionClassNotFoundException
-
writeExternal
public void writeExternal(ObjectOutput out) throws IOException
- Specified by:
writeExternalin interfaceExternalizable- Throws:
IOException
-
createContext
public Object createContext()
Description copied from interface:AccumulatorCreates the context object for an accumulator session. The context is passed as a parameter to every subsequent accumulator method call in the same session.- Specified by:
createContextin interfaceAccumulator- Returns:
-
init
public Object init(Object workingMemoryContext, Object context, Tuple leftTuple, Declaration[] declarations, WorkingMemory workingMemory)
Description copied from interface:AccumulatorExecutes the initialization block of code- Specified by:
initin interfaceAccumulatorleftTuple- tuple causing the rule firedeclarations- previous declarations
-
accumulate
public Object accumulate(Object workingMemoryContext, Object context, Tuple leftTuple, InternalFactHandle handle, Declaration[] declarations, Declaration[] innerDeclarations, WorkingMemory workingMemory)
Description copied from interface:AccumulatorExecutes the accumulate (action) code for the given fact handle- Specified by:
accumulatein interfaceAccumulator
-
tryReverse
public boolean tryReverse(Object workingMemoryContext, Object context, Tuple leftTuple, InternalFactHandle handle, Object value, Declaration[] declarations, Declaration[] innerDeclarations, WorkingMemory workingMemory)
Description copied from interface:AccumulatorReverses the accumulate action for the given fact handle- Specified by:
tryReversein interfaceAccumulator
-
getResult
public Object getResult(Object workingMemoryContext, Object context, Tuple leftTuple, Declaration[] declarations, WorkingMemory workingMemory)
Description copied from interface:AccumulatorGets the result of the accummulation- Specified by:
getResultin interfaceAccumulator- Returns:
-
supportsReverse
public boolean supportsReverse()
Description copied from interface:AccumulatorReturns true if this accumulator supports operation reversal- Specified by:
supportsReversein interfaceAccumulator- Returns:
-
createWorkingMemoryContext
public Object createWorkingMemoryContext()
Description copied from interface:AccumulatorCreates and return a context object for each working memory instance- Specified by:
createWorkingMemoryContextin interfaceAccumulator- Returns:
-
-