org.apache.ignite.internal.processors.cache.tree

## Class AbstractPendingEntryLeafIO

- java.lang.Object
- - org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO
  - - org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusIO<L>
    - - org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusLeafIO<PendingRow>
      - - org.apache.ignite.internal.processors.cache.tree.AbstractPendingEntryLeafIO

All Implemented Interfaces:
  PendingRowIO

Direct Known Subclasses:
  CacheIdAwarePendingEntryLeafIO, PendingEntryLeafIO

    public abstract class AbstractPendingEntryLeafIO
    extends BPlusLeafIO<PendingRow>
    implements PendingRowIO

### Field Summary

### Fields inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusIO

`ITEMS_OFF, itemSize`

### Fields inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO

`COMMON_HEADER_END, CRC_OFF, MAX_PAYLOAD_SIZE, PAGE_ID_OFF, T_BPLUS_META, T_CACHE_ID_AWARE_DATA_REF_INNER, T_CACHE_ID_AWARE_DATA_REF_LEAF, T_CACHE_ID_AWARE_PENDING_REF_INNER, T_CACHE_ID_AWARE_PENDING_REF_LEAF, T_DATA, T_DATA_METASTORAGE, T_DATA_REF_INNER, T_DATA_REF_LEAF, T_DATA_REF_METASTORAGE_INNER, T_DATA_REF_METASTORAGE_LEAF, T_H2_EX_REF_INNER_END, T_H2_EX_REF_INNER_START, T_H2_EX_REF_LEAF_END, T_H2_EX_REF_LEAF_START, T_H2_REF_INNER, T_H2_REF_LEAF, T_META, T_METASTORE_INNER, T_METASTORE_LEAF, T_PAGE_LIST_META, T_PAGE_LIST_NODE, T_PAGE_UPDATE_TRACKING, T_PART_CNTRS, T_PART_META, T_PENDING_REF_INNER, T_PENDING_REF_LEAF, TYPE_OFF, VER_OFF`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`long` `getExpireTime(long pageAddr, int idx)`
`long` `getLink(long pageAddr, int idx)`
`PendingRow` `getLookupRow(BPlusTree<PendingRow,?> tree, long pageAddr, int idx)` Get lookup row.
`void` `store(long dstPageAddr, int dstIdx, BPlusIO<PendingRow> srcIo, long srcPageAddr, int srcIdx)` Store row info from the given source.
`void` `storeByOffset(long pageAddr, int off, PendingRow row)` Store the needed info about the row in the page.
`protected abstract boolean` `storeCacheId()`

### Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusLeafIO

`copyItems, getMaxCount, offset`

### Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusIO

`canGetRow, getCount, getForward, getItemSize, getRemoveId, initNewPage, insert, isLeaf, merge, printPage, remove, setCount, setForward, setRemoveId, splitExistingPage, splitForwardPage, store, visit`

### Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO

`getBPlusIO, getBPlusIO, getCrc, getCrc, getInnerVersions, getLeafVersions, getPageId, getPageId, getPageIO, getPageIO, getType, getType, getType, getVersion, getVersion, getVersion, isDataPageType, printPage, registerH2, registerH2ExtraInner, registerH2ExtraLeaf, registerTest, setCrc, setCrc, setPageId, setType, toString`

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

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

### Methods inherited from interface org.apache.ignite.internal.processors.cache.tree.PendingRowIO

`getCacheId`

### Method Detail

#### storeByOffset

    public void storeByOffset(long pageAddr,
                              int off,
                              PendingRow row)
                       throws IgniteCheckedException

Store the needed info about the row in the page. Leaf and inner pages can store different info.

Specified by:
  `storeByOffset` in class `BPlusIO<PendingRow>`
Parameters:
  `pageAddr` - Page address.
  `off` - Offset in bytes.
  `row` - Lookup or full row.
Throws:
  `IgniteCheckedException` - If failed.

#### store

    public void store(long dstPageAddr,
                      int dstIdx,
                      BPlusIO<PendingRow> srcIo,
                      long srcPageAddr,
                      int srcIdx)
               throws IgniteCheckedException

Store row info from the given source.

Specified by:
  `store` in class `BPlusIO<PendingRow>`
Parameters:
  `dstPageAddr` - Destination page address.
  `dstIdx` - Destination index.
  `srcIo` - Source IO.
  `srcPageAddr` - Source page address.
  `srcIdx` - Source index.
Throws:
  `IgniteCheckedException` - If failed.

#### getLookupRow

    public PendingRow getLookupRow(BPlusTree<PendingRow,?> tree,
                                   long pageAddr,
                                   int idx)
                            throws IgniteCheckedException

Get lookup row.

Specified by:
  `getLookupRow` in class `BPlusIO<PendingRow>`
Parameters:
  `tree` - Tree.
  `pageAddr` - Page address.
  `idx` - Index.
Returns:
  Lookup row.
Throws:
  `IgniteCheckedException` - If failed.

#### getExpireTime

    public long getExpireTime(long pageAddr,
                              int idx)

Specified by:
  `getExpireTime` in interface `PendingRowIO`
Parameters:
  `pageAddr` - Page address.
  `idx` - Index.
Returns:
  Expire time.

#### getLink

    public long getLink(long pageAddr,
                        int idx)

Specified by:
  `getLink` in interface `PendingRowIO`
Parameters:
  `pageAddr` - Page address.
  `idx` - Index.
Returns:
  Link.

#### storeCacheId

    protected abstract boolean storeCacheId()

Returns:
  `True` if cache ID has to be stored.

2018 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Fabric | : ver. 2.4.0
Release Date | : March 5 2018