org.apache.ignite.internal.processors.cache.persistence.metastorage

## Class MetastorageTree.MetastoreLeafIO

- 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<MetastorageSearchRow>
      - - org.apache.ignite.internal.processors.cache.persistence.metastorage.MetastorageTree.MetastoreLeafIO

Enclosing class:
  MetastorageTree

    public static class MetastorageTree.MetastoreLeafIO
    extends BPlusLeafIO<MetastorageSearchRow>

### Field Summary

Fields
`static IOVersions<MetastorageTree.MetastoreLeafIO>` `VERSIONS`

### 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 Concrete Methods
`String` `getKey(long pageAddr, int idx)`
`short` `getKeySize(long pageAddr, int idx)`
`long` `getLink(long pageAddr, int idx)`
`MetastorageSearchRow` `getLookupRow(BPlusTree<MetastorageSearchRow,?> tree, long pageAddr, int idx)` Get lookup row.
`void` `store(long dstPageAddr, int dstIdx, BPlusIO<MetastorageSearchRow> srcIo, long srcPageAddr, int srcIdx)` Store row info from the given source.
`void` `storeByOffset(long pageAddr, int off, MetastorageSearchRow row)` Store the needed info about the row in the page.

### 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`

### Field Detail

#### VERSIONS

    public static final IOVersions<MetastorageTree.MetastoreLeafIO> VERSIONS

### Method Detail

#### storeByOffset

    public void storeByOffset(long pageAddr,
                              int off,
                              MetastorageSearchRow 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<MetastorageSearchRow>`
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<MetastorageSearchRow> srcIo,
                      long srcPageAddr,
                      int srcIdx)
               throws IgniteCheckedException

Store row info from the given source.

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

#### getLookupRow

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

Get lookup row.

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

#### getLink

    public long getLink(long pageAddr,
                        int idx)

Parameters:
  `pageAddr` - Page address.
  `idx` - Index.
Returns:
  Row link.

#### getKeySize

    public short getKeySize(long pageAddr,
                            int idx)

Parameters:
  `pageAddr` - Page address.
  `idx` - Index.
Returns:
  Key size in bytes.

#### getKey

    public String getKey(long pageAddr,
                         int idx)

Parameters:
  `pageAddr` - Page address.
  `idx` - Index.
Returns:
  Key.

2018 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Fabric | : ver. 2.6.0
Release Date | : July 10 2018