NativeExpiringCell (apache-cassandra API)
Date: 2014-10-21

org.apache.cassandra.db

## Class NativeExpiringCell

- java.lang.Object
- - org.apache.cassandra.db.AbstractCell
  - - org.apache.cassandra.db.AbstractNativeCell
    - - org.apache.cassandra.db.NativeCell
      - - org.apache.cassandra.db.NativeExpiringCell

- All Implemented Interfaces:
    IMeasurableMemory, Cell, CellName, Composite, ExpiringCell, OnDiskAtom

      public class NativeExpiringCell
      extends NativeCell
      implements ExpiringCell

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.cassandra.db.OnDiskAtom

      `OnDiskAtom.Serializer`

    - ### Nested classes/interfaces inherited from interface org.apache.cassandra.db.composites.Composite

      `Composite.EOC`

  - ### Field Summary

    - ### Fields inherited from interface org.apache.cassandra.db.ExpiringCell

      `MAX_TTL`

    - ### Fields inherited from interface org.apache.cassandra.db.Cell

      `MAX_NAME_LENGTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `NativeExpiringCell(NativeAllocator allocator, OpOrder.Group writeOp, ExpiringCell copyOf)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `cellDataSize()`
    `protected void` | `construct(Cell from)`
    `boolean` | `equals(Cell cell)`
    `protected boolean` | `equals(ExpiringCell cell)`
    `int` | `getLocalDeletionTime()`
    `java.lang.String` | `getString(CellNameType comparator)`
    `int` | `getTimeToLive()`
    `boolean` | `isLive()`
    `boolean` | `isLive(long now)`
    `ExpiringCell` | `localCopy(CFMetaData metadata, AbstractAllocator allocator)`
    `ExpiringCell` | `localCopy(CFMetaData metadata, MemtableAllocator allocator, OpOrder.Group opGroup)`
    `protected int` | `postfixSize()`
    `Cell` | `reconcile(Cell cell)`
    `int` | `serializationFlags()`
    `int` | `serializedSize(CellNameType type, TypeSizes typeSizes)`
    `protected int` | `sizeOf(Cell cell)`
    `long` | `unsharedHeapSize()`
    `long` | `unsharedHeapSizeExcludingData()`
    `void` | `updateDigest(java.security.MessageDigest digest)`
    `void` | `validateFields(CFMetaData metadata)`

    - ### Methods inherited from class org.apache.cassandra.db.NativeCell

      `name, timestamp`

    - ### Methods inherited from class org.apache.cassandra.db.AbstractNativeCell

      `clusteringSize, collectionElement, compareTo, compareToSimple, copy, cql3ColumnName, dataSize, end, eoc, equals, equals, get, getByte, getByteBuffer, getBytes, getInt, getLong, getShort, internalSize, isCollectionCell, isEmpty, isPrefixOf, isSameCQL3RowAs, isStatic, maxTimestamp, minTimestamp, setByte, setBytes, setInt, setLong, setShort, size, slice, start, toByteBuffer, updateWithName, updateWithValue, value, withEOC, withUpdatedName, withUpdatedTimestamp, writeComponentTo, writeMemoryTo`

    - ### Methods inherited from class org.apache.cassandra.db.AbstractCell

      `create, diff, diffCounter, hashCode, onDiskIterator, reconcileCounter, validateName`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.apache.cassandra.db.Cell

      `diff, name, value, withUpdatedName, withUpdatedTimestamp`

    - ### Methods inherited from interface org.apache.cassandra.db.OnDiskAtom

      `timestamp`

- - ### Constructor Detail

    - #### NativeExpiringCell

          public NativeExpiringCell(NativeAllocator allocator,
                            OpOrder.Group writeOp,
                            ExpiringCell copyOf)

  - ### Method Detail

    - #### sizeOf

          protected int sizeOf(Cell cell)

      Overrides:
        `sizeOf` in class `AbstractNativeCell`

    - #### construct

          protected void construct(Cell from)

      Overrides:
        `construct` in class `AbstractNativeCell`

    - #### postfixSize

          protected int postfixSize()

      Overrides:
        `postfixSize` in class `AbstractNativeCell`

    - #### getTimeToLive

          public int getTimeToLive()

      Specified by:
        `getTimeToLive` in interface `ExpiringCell`

    - #### getLocalDeletionTime

          public int getLocalDeletionTime()

      Specified by:
        `getLocalDeletionTime` in interface `OnDiskAtom`
      Overrides:
        `getLocalDeletionTime` in class `AbstractCell`

    - #### isLive

          public boolean isLive()

      Specified by:
        `isLive` in interface `Cell`
      Overrides:
        `isLive` in class `AbstractCell`

    - #### isLive

          public boolean isLive(long now)

      Specified by:
        `isLive` in interface `Cell`
      Overrides:
        `isLive` in class `AbstractCell`

    - #### serializationFlags

          public int serializationFlags()

      Specified by:
        `serializationFlags` in interface `Cell`
      Overrides:
        `serializationFlags` in class `AbstractCell`

    - #### cellDataSize

          public int cellDataSize()

      Specified by:
        `cellDataSize` in interface `Cell`
      Overrides:
        `cellDataSize` in class `AbstractCell`

    - #### serializedSize

          public int serializedSize(CellNameType type,
                           TypeSizes typeSizes)

      Specified by:
        `serializedSize` in interface `Cell`
      Overrides:
        `serializedSize` in class `AbstractCell`

    - #### validateFields

          public void validateFields(CFMetaData metadata)
                              throws MarshalException

      Specified by:
        `validateFields` in interface `OnDiskAtom`
      Overrides:
        `validateFields` in class `AbstractCell`
      Throws:
        `MarshalException`

    - #### updateDigest

          public void updateDigest(java.security.MessageDigest digest)

      Specified by:
        `updateDigest` in interface `OnDiskAtom`
      Overrides:
        `updateDigest` in class `NativeCell`

    - #### reconcile

          public Cell reconcile(Cell cell)

      Specified by:
        `reconcile` in interface `Cell`
      Overrides:
        `reconcile` in class `AbstractCell`

    - #### equals

          public boolean equals(Cell cell)

      Overrides:
        `equals` in class `AbstractCell`

    - #### equals

          protected boolean equals(ExpiringCell cell)

    - #### getString

          public java.lang.String getString(CellNameType comparator)

      Specified by:
        `getString` in interface `Cell`
      Overrides:
        `getString` in class `AbstractCell`

    - #### localCopy

          public ExpiringCell localCopy(CFMetaData metadata,
                               AbstractAllocator allocator)

      Specified by:
        `localCopy` in interface `Cell`
      Specified by:
        `localCopy` in interface `ExpiringCell`
      Overrides:
        `localCopy` in class `NativeCell`

    - #### localCopy

          public ExpiringCell localCopy(CFMetaData metadata,
                               MemtableAllocator allocator,
                               OpOrder.Group opGroup)

      Specified by:
        `localCopy` in interface `Cell`
      Specified by:
        `localCopy` in interface `ExpiringCell`
      Overrides:
        `localCopy` in class `NativeCell`

    - #### unsharedHeapSizeExcludingData

          public long unsharedHeapSizeExcludingData()

      Specified by:
        `unsharedHeapSizeExcludingData` in interface `Cell`
      Specified by:
        `unsharedHeapSizeExcludingData` in interface `CellName`
      Overrides:
        `unsharedHeapSizeExcludingData` in class `NativeCell`

    - #### unsharedHeapSize

          public long unsharedHeapSize()

      Specified by:
        `unsharedHeapSize` in interface `IMeasurableMemory`
      Overrides:
        `unsharedHeapSize` in class `NativeCell`
      Returns:
        the amount of on-heap memory retained by the object that might be reclaimed if the object were reclaimed, i.e. it should try to exclude globally cached data where possible, or counting portions of arrays that are referenced by the object but used by other objects only (e.g. slabbed byte-buffers), etc.

Copyright © 2014 The Apache Software Foundation