Package org.apache.cassandra.utils
Class MergeIterator<In,Out>
java.lang.Object
org.apache.cassandra.utils.AbstractIterator<Out>
org.apache.cassandra.utils.MergeIterator<In,Out>
- All Implemented Interfaces:
com.google.common.collect.PeekingIterator<Out>,AutoCloseable,Iterator<Out>,CloseableIterator<Out>,IMergeIterator<In,Out>
public abstract class MergeIterator<In,Out>
extends AbstractIterator<Out>
implements IMergeIterator<In,Out>
Merges sorted input iterators which individually contain unique items.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static final classstatic classAccumulator that collects values of type A, and outputs a value of type B. -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedMergeIterator(List<? extends Iterator<In>> iters, MergeIterator.Reducer<In, Out> reducer) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()static <In,Out> MergeIterator<In, Out> get(List<? extends Iterator<In>> sources, Comparator<? super In> comparator, MergeIterator.Reducer<In, Out> reducer) Methods inherited from class org.apache.cassandra.utils.AbstractIterator
computeNext, endOfData, hasNext, next, peek, removeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.Iterator
forEachRemaining, hasNext
-
Field Details
-
reducer
-
iterators
-
-
Constructor Details
-
MergeIterator
-
-
Method Details
-
get
public static <In,Out> MergeIterator<In,Out> get(List<? extends Iterator<In>> sources, Comparator<? super In> comparator, MergeIterator.Reducer<In, Out> reducer) -
iterators
- Specified by:
iteratorsin interfaceIMergeIterator<In,Out>
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseableIterator<In>- Overrides:
closein classAbstractIterator<Out>
-