org.apache.cassandra.utils
Class MergeIterator.Reducer<In,Out>

java.lang.Object
  extended by org.apache.cassandra.utils.MergeIterator.Reducer<In,Out>
Direct Known Subclasses:
CompactionIterable.Reducer
Enclosing class:
MergeIterator<In,Out>

public abstract static class MergeIterator.Reducer<In,Out>
extends java.lang.Object

Accumulator that collects values of type A, and outputs a value of type B.


Constructor Summary
MergeIterator.Reducer()
           
 
Method Summary
 void close()
          May be overridden by implementations that require cleaning up after use
protected abstract  Out getReduced()
           
protected  void onKeyChange()
          Called at the begining of each new key, before any reduce is called.
abstract  void reduce(In current)
          combine this object with the previous ones.
 boolean trivialReduceIsTrivial()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MergeIterator.Reducer

public MergeIterator.Reducer()
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(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 begining of each new key, before any reduce is called. To be overriden by implementing classes.


close

public void close()
May be overridden by implementations that require cleaning up after use



Copyright © 2013 The Apache Software Foundation