Class MergeIterator.Reducer<In,​Out>

  • 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

      Constructors 
      Constructor Description
      Reducer()  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      void close()
      May be overridden by implementations that require cleaning up after use
      protected abstract Out getReduced()  
      protected void onKeyChange()
      Called at the beginning of each new key, before any reduce is called.
      abstract void reduce​(int idx, 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

      • Reducer

        public 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​(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