org.apache.cassandra.db.partitions

## Class AbstractBTreePartition

- java.lang.Object
- - org.apache.cassandra.db.partitions.AbstractBTreePartition

- All Implemented Interfaces:
    java.lang.Iterable<Row>, Partition
  Direct Known Subclasses:
    AtomicBTreePartition, ImmutableBTreePartition, PartitionUpdate

      public abstract class AbstractBTreePartition
      extends java.lang.Object
      implements Partition, java.lang.Iterable<Row>

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `AbstractBTreePartition.Holder`
    `class` | `AbstractBTreePartition.SlicesIterator`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static AbstractBTreePartition.Holder` | `EMPTY`
    `protected CFMetaData` | `metadata`
    `protected DecoratedKey` | `partitionKey`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `AbstractBTreePartition(CFMetaData metadata, DecoratedKey partitionKey)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected static AbstractBTreePartition.Holder` | `build(RowIterator rows, DeletionInfo deletion, boolean buildEncodingStats, int initialRowCapacity)`
    `protected static AbstractBTreePartition.Holder` | `build(UnfilteredRowIterator iterator, int initialRowCapacity)`
    `protected static AbstractBTreePartition.Holder` | `build(UnfilteredRowIterator iterator, int initialRowCapacity, boolean ordered)`
    `protected abstract boolean` | `canHaveShadowedData()`
    `PartitionColumns` | `columns()`
    `DeletionInfo` | `deletionInfo()`
    `Row` | `getRow(Clustering clustering)` Returns the row corresponding to the provided clustering, or null if there is not such row.
    `boolean` | `hasRows()`
    `protected abstract AbstractBTreePartition.Holder` | `holder()`
    `boolean` | `isEmpty()` Whether the partition object has no informations at all, including any deletion informations.
    `java.util.Iterator<Row>` | `iterator()`
    `Row` | `lastRow()`
    `CFMetaData` | `metadata()`
    `DecoratedKey` | `partitionKey()`
    `DeletionTime` | `partitionLevelDeletion()`
    `int` | `rowCount()`
    `SearchIterator<Clustering,Row>` | `searchIterator(ColumnFilter columns, boolean reversed)` Returns an iterator that allows to search specific rows efficiently.
    `Row` | `staticRow()`
    `EncodingStats` | `stats()`
    `java.lang.String` | `toString()`
    `UnfilteredRowIterator` | `unfilteredIterator()` Returns an UnfilteredRowIterator over all the rows/RT contained by this partition.
    `UnfilteredRowIterator` | `unfilteredIterator(AbstractBTreePartition.Holder current, ColumnFilter selection, Slices slices, boolean reversed)`
    `UnfilteredRowIterator` | `unfilteredIterator(ColumnFilter selection, Slices slices, boolean reversed)` Returns an UnfilteredRowIterator over the rows/RT contained by this partition selected by the provided slices.

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Field Detail

    - #### EMPTY

          protected static final AbstractBTreePartition.Holder EMPTY

    - #### metadata

          protected final CFMetaData metadata

    - #### partitionKey

          protected final DecoratedKey partitionKey

  - ### Constructor Detail

    - #### AbstractBTreePartition

          protected AbstractBTreePartition(CFMetaData metadata,
                                           DecoratedKey partitionKey)

  - ### Method Detail

    - #### holder

          protected abstract AbstractBTreePartition.Holder holder()

    - #### canHaveShadowedData

          protected abstract boolean canHaveShadowedData()

    - #### deletionInfo

          public DeletionInfo deletionInfo()

    - #### staticRow

          public Row staticRow()

    - #### isEmpty

          public boolean isEmpty()

      Description copied from interface: `Partition`
      Whether the partition object has no informations at all, including any deletion informations.
      Specified by:
        `isEmpty` in interface `Partition`

    - #### hasRows

          public boolean hasRows()

    - #### metadata

          public CFMetaData metadata()

      Specified by:
        `metadata` in interface `Partition`

    - #### partitionKey

          public DecoratedKey partitionKey()

      Specified by:
        `partitionKey` in interface `Partition`

    - #### partitionLevelDeletion

          public DeletionTime partitionLevelDeletion()

      Specified by:
        `partitionLevelDeletion` in interface `Partition`

    - #### columns

          public PartitionColumns columns()

      Specified by:
        `columns` in interface `Partition`

    - #### stats

          public EncodingStats stats()

      Specified by:
        `stats` in interface `Partition`

    - #### getRow

          public Row getRow(Clustering clustering)

      Description copied from interface: `Partition`
      Returns the row corresponding to the provided clustering, or null if there is not such row.
      Specified by:
        `getRow` in interface `Partition`

    - #### searchIterator

          public SearchIterator<Clustering,Row> searchIterator(ColumnFilter columns,
                                                               boolean reversed)

      Description copied from interface: `Partition`
      Returns an iterator that allows to search specific rows efficiently.
      Specified by:
        `searchIterator` in interface `Partition`

    - #### unfilteredIterator

          public UnfilteredRowIterator unfilteredIterator()

      Description copied from interface: `Partition`
      Returns an UnfilteredRowIterator over all the rows/RT contained by this partition.
      Specified by:
        `unfilteredIterator` in interface `Partition`

    - #### unfilteredIterator

          public UnfilteredRowIterator unfilteredIterator(ColumnFilter selection,
                                                          Slices slices,
                                                          boolean reversed)

      Description copied from interface: `Partition`
      Returns an UnfilteredRowIterator over the rows/RT contained by this partition selected by the provided slices.
      Specified by:
        `unfilteredIterator` in interface `Partition`

    - #### unfilteredIterator

          public UnfilteredRowIterator unfilteredIterator(AbstractBTreePartition.Holder current,
                                                          ColumnFilter selection,
                                                          Slices slices,
                                                          boolean reversed)

    - #### build

          protected static AbstractBTreePartition.Holder build(UnfilteredRowIterator iterator,
                                                               int initialRowCapacity)

    - #### build

          protected static AbstractBTreePartition.Holder build(UnfilteredRowIterator iterator,
                                                               int initialRowCapacity,
                                                               boolean ordered)

    - #### build

          protected static AbstractBTreePartition.Holder build(RowIterator rows,
                                                               DeletionInfo deletion,
                                                               boolean buildEncodingStats,
                                                               int initialRowCapacity)

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### rowCount

          public int rowCount()

    - #### iterator

          public java.util.Iterator<Row> iterator()

      Specified by:
        `iterator` in interface `java.lang.Iterable<Row>`

    - #### lastRow

          public Row lastRow()

Copyright © 2018 The Apache Software Foundation