Package org.apache.cassandra.db.virtual
Class AbstractMutableVirtualTable
- java.lang.Object
-
- org.apache.cassandra.db.virtual.AbstractVirtualTable
-
- org.apache.cassandra.db.virtual.AbstractMutableVirtualTable
-
- All Implemented Interfaces:
VirtualTable
public abstract class AbstractMutableVirtualTable extends AbstractVirtualTable
An abstract virtual table implementation that builds the resultset on demand and allows fine-grained source modification via INSERT/UPDATE, DELETE and TRUNCATE operations. Virtual table implementation need to be thread-safe has they can be called from different threads.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAbstractMutableVirtualTable.ColumnValueA regular column value.static classAbstractMutableVirtualTable.ColumnValuesA set of partition key or clustering column values.-
Nested classes/interfaces inherited from class org.apache.cassandra.db.virtual.AbstractVirtualTable
AbstractVirtualTable.AbstractDataSet, AbstractVirtualTable.DataSet, AbstractVirtualTable.Partition, AbstractVirtualTable.SimpleTable
-
-
Field Summary
-
Fields inherited from class org.apache.cassandra.db.virtual.AbstractVirtualTable
metadata
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractMutableVirtualTable(TableMetadata metadata)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidapply(PartitionUpdate update)Applies the specified update, if supported.protected voidapplyColumnDeletion(AbstractMutableVirtualTable.ColumnValues partitionKey, AbstractMutableVirtualTable.ColumnValues clusteringColumns, java.lang.String columnName)protected voidapplyColumnUpdate(AbstractMutableVirtualTable.ColumnValues partitionKey, AbstractMutableVirtualTable.ColumnValues clusteringColumns, java.util.Optional<AbstractMutableVirtualTable.ColumnValue> columnValue)protected voidapplyPartitionDeletion(AbstractMutableVirtualTable.ColumnValues partitionKey)protected voidapplyRangeTombstone(AbstractMutableVirtualTable.ColumnValues partitionKey, com.google.common.collect.Range<AbstractMutableVirtualTable.ColumnValues> range)protected voidapplyRowDeletion(AbstractMutableVirtualTable.ColumnValues partitionKey, AbstractMutableVirtualTable.ColumnValues clusteringColumns)-
Methods inherited from class org.apache.cassandra.db.virtual.AbstractVirtualTable
data, data, metadata, select, select, toString, truncate
-
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
name
-
-
-
-
Constructor Detail
-
AbstractMutableVirtualTable
protected AbstractMutableVirtualTable(TableMetadata metadata)
-
-
Method Detail
-
apply
public final void apply(PartitionUpdate update)
Description copied from interface:VirtualTableApplies the specified update, if supported.- Specified by:
applyin interfaceVirtualTable- Overrides:
applyin classAbstractVirtualTable- Parameters:
update- the update to apply
-
applyPartitionDeletion
protected void applyPartitionDeletion(AbstractMutableVirtualTable.ColumnValues partitionKey)
-
applyRangeTombstone
protected void applyRangeTombstone(AbstractMutableVirtualTable.ColumnValues partitionKey, com.google.common.collect.Range<AbstractMutableVirtualTable.ColumnValues> range)
-
applyRowDeletion
protected void applyRowDeletion(AbstractMutableVirtualTable.ColumnValues partitionKey, AbstractMutableVirtualTable.ColumnValues clusteringColumns)
-
applyColumnDeletion
protected void applyColumnDeletion(AbstractMutableVirtualTable.ColumnValues partitionKey, AbstractMutableVirtualTable.ColumnValues clusteringColumns, java.lang.String columnName)
-
applyColumnUpdate
protected void applyColumnUpdate(AbstractMutableVirtualTable.ColumnValues partitionKey, AbstractMutableVirtualTable.ColumnValues clusteringColumns, java.util.Optional<AbstractMutableVirtualTable.ColumnValue> columnValue)
-
-