Class CollectSetAccumulateFunction
- java.lang.Object
-
- org.drools.core.base.accumulators.AbstractAccumulateFunction<CollectSetAccumulateFunction.CollectListData>
-
- org.drools.core.base.accumulators.CollectSetAccumulateFunction
-
- All Implemented Interfaces:
java.io.Externalizable
,java.io.Serializable
,org.kie.api.runtime.rule.AccumulateFunction<CollectSetAccumulateFunction.CollectListData>
public class CollectSetAccumulateFunction extends AbstractAccumulateFunction<CollectSetAccumulateFunction.CollectListData>
An implementation of an accumulator capable of collecting sets of values. This is similar to the "collect" CE, but allows us to collect any value, not only facts.
Example:
rule "Set of unique employee names" when $names : Set() from accumulate( Employee( $n : firstName, $l : lastName ), collectSet( $n + " " + $l ) ) then // do something end
The set obviously does not computes duplications and the order of the elements in the set is not guaranteed.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CollectSetAccumulateFunction.CollectListData
-
Constructor Summary
Constructors Constructor Description CollectSetAccumulateFunction()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accumulate(CollectSetAccumulateFunction.CollectListData data, java.lang.Object value)
CollectSetAccumulateFunction.CollectListData
createContext()
java.lang.Object
getResult(CollectSetAccumulateFunction.CollectListData data)
java.lang.Class<?>
getResultType()
void
init(CollectSetAccumulateFunction.CollectListData data)
void
readExternal(java.io.ObjectInput in)
void
reverse(CollectSetAccumulateFunction.CollectListData data, java.lang.Object value)
boolean
supportsReverse()
void
writeExternal(java.io.ObjectOutput out)
-
Methods inherited from class org.drools.core.base.accumulators.AbstractAccumulateFunction
equals, hashCode
-
-
-
-
Method Detail
-
readExternal
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
writeExternal
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
- Throws:
java.io.IOException
-
createContext
public CollectSetAccumulateFunction.CollectListData createContext()
-
init
public void init(CollectSetAccumulateFunction.CollectListData data)
-
accumulate
public void accumulate(CollectSetAccumulateFunction.CollectListData data, java.lang.Object value)
-
reverse
public void reverse(CollectSetAccumulateFunction.CollectListData data, java.lang.Object value)
-
getResult
public java.lang.Object getResult(CollectSetAccumulateFunction.CollectListData data)
-
supportsReverse
public boolean supportsReverse()
-
getResultType
public java.lang.Class<?> getResultType()
-
-