Package org.apache.cassandra.utils
Class MergeIterator.Reducer<In,Out>
- java.lang.Object
-
- org.apache.cassandra.utils.MergeIterator.Reducer<In,Out>
-
- Enclosing class:
- MergeIterator<In,Out>
public abstract static class MergeIterator.Reducer<In,Out> extends java.lang.ObjectAccumulator that collects values of type A, and outputs a value of type B.
-
-
Constructor Summary
Constructors Constructor Description Reducer()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidclose()May be overridden by implementations that require cleaning up after useprotected abstract OutgetReduced()protected voidonKeyChange()Called at the beginning of each new key, before any reduce is called.abstract voidreduce(int idx, In current)combine this object with the previous ones.booleantrivialReduceIsTrivial()
-
-
-
Method Detail
-
trivialReduceIsTrivial
public boolean trivialReduceIsTrivial()
- Returns:
- true if Out is the same as In for the case of a single source iterator
-
reduce
public abstract void reduce(int idx, In current)combine this object with the previous ones. intermediate state is up to your implementation.
-
getReduced
protected abstract Out getReduced()
- Returns:
- The last object computed by reduce
-
onKeyChange
protected void onKeyChange()
Called at the beginning of each new key, before any reduce is called. To be overridden by implementing classes.
-
close
public void close()
May be overridden by implementations that require cleaning up after use
-
-