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>,java.lang.AutoCloseable,java.util.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 Classes Modifier and Type Class Description protected static classMergeIterator.Candidate<In>static classMergeIterator.Reducer<In,Out>Accumulator that collects values of type A, and outputs a value of type B.
-
Constructor Summary
Constructors Modifier Constructor Description protectedMergeIterator(java.util.List<? extends java.util.Iterator<In>> iters, MergeIterator.Reducer<In,Out> reducer)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()static <In,Out>
MergeIterator<In,Out>get(java.util.List<? extends java.util.Iterator<In>> sources, java.util.Comparator<? super In> comparator, MergeIterator.Reducer<In,Out> reducer)java.lang.Iterable<? extends java.util.Iterator<In>>iterators()-
Methods inherited from class org.apache.cassandra.utils.AbstractIterator
computeNext, endOfData, hasNext, next, peek, remove
-
-
-
-
Field Detail
-
reducer
protected final MergeIterator.Reducer<In,Out> reducer
-
iterators
protected final java.util.List<? extends java.util.Iterator<In>> iterators
-
-
Constructor Detail
-
MergeIterator
protected MergeIterator(java.util.List<? extends java.util.Iterator<In>> iters, MergeIterator.Reducer<In,Out> reducer)
-
-
Method Detail
-
get
public static <In,Out> MergeIterator<In,Out> get(java.util.List<? extends java.util.Iterator<In>> sources, java.util.Comparator<? super In> comparator, MergeIterator.Reducer<In,Out> reducer)
-
iterators
public java.lang.Iterable<? extends java.util.Iterator<In>> iterators()
- Specified by:
iteratorsin interfaceIMergeIterator<In,Out>
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfaceCloseableIterator<In>- Overrides:
closein classAbstractIterator<Out>
-
-