org.apache.cassandra.utils
Class MergeIterator<In,Out>
java.lang.Object
com.google.common.collect.UnmodifiableIterator<T>
com.google.common.collect.AbstractIterator<Out>
org.apache.cassandra.utils.MergeIterator<In,Out>
- All Implemented Interfaces:
- java.io.Closeable, java.util.Iterator<Out>, CloseableIterator<Out>
public abstract class MergeIterator<In,Out>
- extends com.google.common.collect.AbstractIterator<Out>
- implements CloseableIterator<Out>
Merges sorted input iterators which individually contain unique items.
Methods inherited from class com.google.common.collect.AbstractIterator |
endOfData, hasNext, next, peek |
Methods inherited from class com.google.common.collect.UnmodifiableIterator |
remove |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.util.Iterator |
hasNext, next, remove |
comp
public final java.util.Comparator<In> comp
iterators
protected final java.util.List<? extends CloseableIterator<In>> iterators
queue
protected final java.util.PriorityQueue<MergeIterator.Candidate<In>> queue
MergeIterator
protected MergeIterator(java.util.List<? extends CloseableIterator<In>> iters,
java.util.Comparator<In> comp)
get
public static <E> MergeIterator<E,E> get(java.util.List<? extends CloseableIterator<E>> iters)
get
public static <E> MergeIterator<E,E> get(java.util.List<? extends CloseableIterator<E>> iters,
java.util.Comparator<E> comp)
get
public static <In,Out> MergeIterator<In,Out> get(java.util.List<? extends CloseableIterator<In>> iters,
java.util.Comparator<In> comp,
MergeIterator.Reducer<In,Out> reducer)
iterators
public java.lang.Iterable<? extends CloseableIterator<In>> iterators()
consume
protected abstract Out consume()
- Consumes sorted items from the queue: should only remove items from the queue,
not add them.
advance
protected abstract void advance()
- Returns consumed items to the queue.
computeNext
protected final Out computeNext()
- Specified by:
computeNext
in class com.google.common.collect.AbstractIterator<Out>
close
public void close()
- Specified by:
close
in interface java.io.Closeable
Copyright © 2011 The Apache Software Foundation