Package org.apache.cassandra.db.rows
Class BufferCell
- java.lang.Object
-
- org.apache.cassandra.db.rows.ColumnData
-
- org.apache.cassandra.db.rows.Cell<V>
-
- org.apache.cassandra.db.rows.AbstractCell<java.nio.ByteBuffer>
-
- org.apache.cassandra.db.rows.BufferCell
-
public class BufferCell extends AbstractCell<java.nio.ByteBuffer>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.cassandra.db.rows.Cell
Cell.Factory<V>
-
-
Field Summary
-
Fields inherited from class org.apache.cassandra.db.rows.Cell
comparator, MAX_DELETION_TIME, NO_DELETION_TIME, NO_TTL, serializer
-
Fields inherited from class org.apache.cassandra.db.rows.ColumnData
column
-
-
Constructor Summary
Constructors Constructor Description BufferCell(ColumnMetadata column, long timestamp, int ttl, int localDeletionTime, java.nio.ByteBuffer value, CellPath path)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ValueAccessor<java.nio.ByteBuffer>
accessor()
Cell<?>
copy(AbstractAllocator allocator)
static BufferCell
expiring(ColumnMetadata column, long timestamp, int ttl, int nowInSec, java.nio.ByteBuffer value)
static BufferCell
expiring(ColumnMetadata column, long timestamp, int ttl, int nowInSec, java.nio.ByteBuffer value, CellPath path)
static BufferCell
live(ColumnMetadata column, long timestamp, java.nio.ByteBuffer value)
static BufferCell
live(ColumnMetadata column, long timestamp, java.nio.ByteBuffer value, CellPath path)
int
localDeletionTime()
The cell local deletion time.CellPath
path()
For cells belonging to complex types (non-frozen collection and UDT), the path to the cell.long
timestamp()
The cell timestamp.static BufferCell
tombstone(ColumnMetadata column, long timestamp, int nowInSec)
static BufferCell
tombstone(ColumnMetadata column, long timestamp, int nowInSec, CellPath path)
int
ttl()
The cell ttl.long
unsharedHeapSizeExcludingData()
java.nio.ByteBuffer
value()
Cell<?>
withSkippedValue()
Used to apply the same optimization as inCell.Serializer.deserialize(org.apache.cassandra.io.util.DataInputPlus, org.apache.cassandra.db.LivenessInfo, org.apache.cassandra.schema.ColumnMetadata, org.apache.cassandra.db.SerializationHeader, org.apache.cassandra.db.rows.DeserializationHelper, org.apache.cassandra.db.marshal.ValueAccessor<V>)
when the column is not queried but eventhough it's used for digest calculation.Cell<?>
withUpdatedColumn(ColumnMetadata newColumn)
Cell<?>
withUpdatedTimestampAndLocalDeletionTime(long newTimestamp, int newLocalDeletionTime)
Cell<?>
withUpdatedValue(java.nio.ByteBuffer newValue)
-
Methods inherited from class org.apache.cassandra.db.rows.AbstractCell
dataSize, digest, equals, equals, hashCode, hasInvalidDeletions, isCounterCell, isExpiring, isLive, isTombstone, markCounterLocalToBeCleared, maxTimestamp, purge, toString, updateAllTimestamp, validate
-
Methods inherited from class org.apache.cassandra.db.rows.ColumnData
column, digest
-
-
-
-
Constructor Detail
-
BufferCell
public BufferCell(ColumnMetadata column, long timestamp, int ttl, int localDeletionTime, java.nio.ByteBuffer value, CellPath path)
-
-
Method Detail
-
live
public static BufferCell live(ColumnMetadata column, long timestamp, java.nio.ByteBuffer value)
-
live
public static BufferCell live(ColumnMetadata column, long timestamp, java.nio.ByteBuffer value, CellPath path)
-
expiring
public static BufferCell expiring(ColumnMetadata column, long timestamp, int ttl, int nowInSec, java.nio.ByteBuffer value)
-
expiring
public static BufferCell expiring(ColumnMetadata column, long timestamp, int ttl, int nowInSec, java.nio.ByteBuffer value, CellPath path)
-
tombstone
public static BufferCell tombstone(ColumnMetadata column, long timestamp, int nowInSec)
-
tombstone
public static BufferCell tombstone(ColumnMetadata column, long timestamp, int nowInSec, CellPath path)
-
timestamp
public long timestamp()
Description copied from class:Cell
The cell timestamp.
-
ttl
public int ttl()
Description copied from class:Cell
The cell ttl.
-
localDeletionTime
public int localDeletionTime()
Description copied from class:Cell
The cell local deletion time.- Specified by:
localDeletionTime
in classCell<java.nio.ByteBuffer>
- Returns:
- the cell local deletion time, or
NO_DELETION_TIME
if the cell is neither a tombstone nor an expiring one.
-
accessor
public ValueAccessor<java.nio.ByteBuffer> accessor()
-
path
public CellPath path()
Description copied from class:Cell
For cells belonging to complex types (non-frozen collection and UDT), the path to the cell.
-
withUpdatedColumn
public Cell<?> withUpdatedColumn(ColumnMetadata newColumn)
- Specified by:
withUpdatedColumn
in classCell<java.nio.ByteBuffer>
-
withUpdatedValue
public Cell<?> withUpdatedValue(java.nio.ByteBuffer newValue)
- Specified by:
withUpdatedValue
in classCell<java.nio.ByteBuffer>
-
withUpdatedTimestampAndLocalDeletionTime
public Cell<?> withUpdatedTimestampAndLocalDeletionTime(long newTimestamp, int newLocalDeletionTime)
- Specified by:
withUpdatedTimestampAndLocalDeletionTime
in classCell<java.nio.ByteBuffer>
-
withSkippedValue
public Cell<?> withSkippedValue()
Description copied from class:Cell
Used to apply the same optimization as inCell.Serializer.deserialize(org.apache.cassandra.io.util.DataInputPlus, org.apache.cassandra.db.LivenessInfo, org.apache.cassandra.schema.ColumnMetadata, org.apache.cassandra.db.SerializationHeader, org.apache.cassandra.db.rows.DeserializationHelper, org.apache.cassandra.db.marshal.ValueAccessor<V>)
when the column is not queried but eventhough it's used for digest calculation.- Specified by:
withSkippedValue
in classCell<java.nio.ByteBuffer>
- Returns:
- a cell with an empty buffer as value
-
copy
public Cell<?> copy(AbstractAllocator allocator)
- Overrides:
copy
in classAbstractCell<java.nio.ByteBuffer>
-
unsharedHeapSizeExcludingData
public long unsharedHeapSizeExcludingData()
- Specified by:
unsharedHeapSizeExcludingData
in classColumnData
-
-