Package org.apache.cassandra.db.virtual
Class AbstractVirtualTable
- java.lang.Object
-
- org.apache.cassandra.db.virtual.AbstractVirtualTable
-
- All Implemented Interfaces:
VirtualTable
- Direct Known Subclasses:
AbstractMutableVirtualTable
,AbstractVirtualTable.SimpleTable
,BatchMetricsTable
,CIDRFilteringMetricsTable.CIDRFilteringMetricsCountsTable
,CIDRFilteringMetricsTable.CIDRFilteringMetricsLatenciesTable
,ColumnIndexesSystemView
,InternodeInboundTable
,InternodeOutboundTable
,SegmentsSystemView
,SnapshotsTable
,SSTableIndexesSystemView
,StreamingVirtualTable
public abstract class AbstractVirtualTable extends java.lang.Object implements VirtualTable
An abstract virtual table implementation that builds the resultset on demand.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AbstractVirtualTable.AbstractDataSet
An abstract, map-backed DataSet implementation.static interface
AbstractVirtualTable.DataSet
static interface
AbstractVirtualTable.Partition
static class
AbstractVirtualTable.SimpleTable
-
Field Summary
Fields Modifier and Type Field Description protected TableMetadata
metadata
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractVirtualTable(TableMetadata metadata)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
apply(PartitionUpdate update)
Applies the specified update, if supported.abstract AbstractVirtualTable.DataSet
data()
Provide aAbstractVirtualTable.DataSet
that is contains all of the virtual table's data.AbstractVirtualTable.DataSet
data(DecoratedKey partitionKey)
Provide aAbstractVirtualTable.DataSet
that is potentially restricted to the provided partition - but is allowed to contain other partitions.TableMetadata
metadata()
Returns the view metadata.UnfilteredPartitionIterator
select(DataRange dataRange, ColumnFilter columnFilter)
Selects the rows from a range of partitions.UnfilteredPartitionIterator
select(DecoratedKey partitionKey, ClusteringIndexFilter clusteringIndexFilter, ColumnFilter columnFilter)
Selects the rows from a single partition.java.lang.String
toString()
void
truncate()
Truncates data from the underlying source, if supported.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.cassandra.db.virtual.VirtualTable
allowFilteringImplicitly, name
-
-
-
-
Field Detail
-
metadata
protected final TableMetadata metadata
-
-
Constructor Detail
-
AbstractVirtualTable
protected AbstractVirtualTable(TableMetadata metadata)
-
-
Method Detail
-
metadata
public TableMetadata metadata()
Description copied from interface:VirtualTable
Returns the view metadata.- Specified by:
metadata
in interfaceVirtualTable
- Returns:
- the view metadata.
-
data
public abstract AbstractVirtualTable.DataSet data()
Provide aAbstractVirtualTable.DataSet
that is contains all of the virtual table's data.
-
data
public AbstractVirtualTable.DataSet data(DecoratedKey partitionKey)
Provide aAbstractVirtualTable.DataSet
that is potentially restricted to the provided partition - but is allowed to contain other partitions.
-
select
public final UnfilteredPartitionIterator select(DecoratedKey partitionKey, ClusteringIndexFilter clusteringIndexFilter, ColumnFilter columnFilter)
Description copied from interface:VirtualTable
Selects the rows from a single partition.- Specified by:
select
in interfaceVirtualTable
- Parameters:
partitionKey
- the partition keyclusteringIndexFilter
- the clustering columns to selectedcolumnFilter
- the selected columns- Returns:
- the rows corresponding to the requested data.
-
select
public final UnfilteredPartitionIterator select(DataRange dataRange, ColumnFilter columnFilter)
Description copied from interface:VirtualTable
Selects the rows from a range of partitions.- Specified by:
select
in interfaceVirtualTable
- Parameters:
dataRange
- the range of data to retrievecolumnFilter
- the selected columns- Returns:
- the rows corresponding to the requested data.
-
apply
public void apply(PartitionUpdate update)
Description copied from interface:VirtualTable
Applies the specified update, if supported.- Specified by:
apply
in interfaceVirtualTable
- Parameters:
update
- the update to apply
-
truncate
public void truncate()
Description copied from interface:VirtualTable
Truncates data from the underlying source, if supported.- Specified by:
truncate
in interfaceVirtualTable
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-