Package org.apache.cassandra.db.rows
Class WrappingUnfilteredRowIterator
- java.lang.Object
-
- com.google.common.collect.UnmodifiableIterator<Unfiltered>
-
- org.apache.cassandra.db.rows.WrappingUnfilteredRowIterator
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,java.util.Iterator<Unfiltered>
,BaseRowIterator<Unfiltered>
,UnfilteredRowIterator
,CloseableIterator<Unfiltered>
public abstract class WrappingUnfilteredRowIterator extends com.google.common.collect.UnmodifiableIterator<Unfiltered> implements UnfilteredRowIterator
Abstract class to make writing unfiltered iterators that wrap another iterator easier. By default, the wrapping iterator simply delegate every call to the wrapped iterator so concrete implementations will have to override some of the methods.Note that if most of what you want to do is modifying/filtering the returned
Unfiltered
,org.apache.cassandra.db.transform.Transformation#merge(UnfilteredRowIterator,Transformation)
can be a simpler option.
-
-
Field Summary
Fields Modifier and Type Field Description protected UnfilteredRowIterator
wrapped
-
Constructor Summary
Constructors Modifier Constructor Description protected
WrappingUnfilteredRowIterator(UnfilteredRowIterator wrapped)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
RegularAndStaticColumns
columns()
A subset of the columns for the (static and regular) rows returned by this iterator.boolean
hasNext()
boolean
isReverseOrder()
Whether or not the rows returned by this iterator are in reversed clustering order.TableMetadata
metadata()
The metadata for the table this iterator on.Unfiltered
next()
DecoratedKey
partitionKey()
The partition key of the partition this in an iterator over.DeletionTime
partitionLevelDeletion()
The partition level deletion for the partition this iterate over.Row
staticRow()
The static part corresponding to this partition (this can be an empty row but cannot benull
).EncodingStats
stats()
Return "statistics" about what is returned by this iterator.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.cassandra.db.rows.UnfilteredRowIterator
isEmpty
-
-
-
-
Field Detail
-
wrapped
protected final UnfilteredRowIterator wrapped
-
-
Constructor Detail
-
WrappingUnfilteredRowIterator
protected WrappingUnfilteredRowIterator(UnfilteredRowIterator wrapped)
-
-
Method Detail
-
metadata
public TableMetadata metadata()
Description copied from interface:BaseRowIterator
The metadata for the table this iterator on.- Specified by:
metadata
in interfaceBaseRowIterator<Unfiltered>
-
columns
public RegularAndStaticColumns columns()
Description copied from interface:BaseRowIterator
A subset of the columns for the (static and regular) rows returned by this iterator. Every row returned by this iterator must guarantee that it has only those columns.- Specified by:
columns
in interfaceBaseRowIterator<Unfiltered>
-
isReverseOrder
public boolean isReverseOrder()
Description copied from interface:BaseRowIterator
Whether or not the rows returned by this iterator are in reversed clustering order.- Specified by:
isReverseOrder
in interfaceBaseRowIterator<Unfiltered>
-
partitionKey
public DecoratedKey partitionKey()
Description copied from interface:BaseRowIterator
The partition key of the partition this in an iterator over.- Specified by:
partitionKey
in interfaceBaseRowIterator<Unfiltered>
-
partitionLevelDeletion
public DeletionTime partitionLevelDeletion()
Description copied from interface:UnfilteredRowIterator
The partition level deletion for the partition this iterate over.- Specified by:
partitionLevelDeletion
in interfaceUnfilteredRowIterator
-
staticRow
public Row staticRow()
Description copied from interface:BaseRowIterator
The static part corresponding to this partition (this can be an empty row but cannot benull
).- Specified by:
staticRow
in interfaceBaseRowIterator<Unfiltered>
-
stats
public EncodingStats stats()
Description copied from interface:UnfilteredRowIterator
Return "statistics" about what is returned by this iterator. Those are used for performance reasons (for delta-encoding for instance) and code should not expect those to be exact.- Specified by:
stats
in interfaceUnfilteredRowIterator
-
hasNext
public boolean hasNext()
- Specified by:
hasNext
in interfacejava.util.Iterator<Unfiltered>
-
next
public Unfiltered next()
- Specified by:
next
in interfacejava.util.Iterator<Unfiltered>
-
close
public void close()
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfaceCloseableIterator<Unfiltered>
-
-