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

## Class SimpleDataPageIO

- java.lang.Object
- - org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO
  - - org.apache.ignite.internal.processors.cache.persistence.tree.io.AbstractDataPageIO<SimpleDataRow>
    - - org.apache.ignite.internal.processors.cache.persistence.tree.io.SimpleDataPageIO

All Implemented Interfaces:
  CompactablePageIO

Direct Known Subclasses:
  MetastoreDataPageIO

    public class SimpleDataPageIO
    extends AbstractDataPageIO<SimpleDataRow>

Data pages IO for writing binary arrays.

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.AbstractDataPageIO

`AbstractDataPageIO.CC<T>`

### Field Summary

Fields
`static IOVersions<SimpleDataPageIO>` `VERSIONS`

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

`ITEMS_OFF, MIN_DATA_PAGE_OVERHEAD`

### 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, ROTATED_ID_PART_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_CACHE_ID_DATA_REF_MVCC_INNER, T_CACHE_ID_DATA_REF_MVCC_LEAF, T_DATA, T_DATA_METASTORAGE, T_DATA_PART, T_DATA_REF_INNER, T_DATA_REF_LEAF, T_DATA_REF_METASTORAGE_INNER, T_DATA_REF_METASTORAGE_LEAF, T_DATA_REF_MVCC_INNER, T_DATA_REF_MVCC_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_EX_REF_MVCC_INNER_END, T_H2_EX_REF_MVCC_INNER_START, T_H2_EX_REF_MVCC_LEAF_END, T_H2_EX_REF_MVCC_LEAF_START, T_H2_MVCC_REF_INNER, T_H2_MVCC_REF_LEAF, 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, T_TX_LOG_INNER, T_TX_LOG_LEAF, TYPE_OFF, VER_OFF`

### Constructor Summary

Constructors
Constructor and Description
`SimpleDataPageIO(int ver)`
`SimpleDataPageIO(int type, int ver)` Constructor is intended for extending types.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `printPage(long addr, int pageSize, GridStringBuilder sb)`
`protected void` `writeFragmentData(SimpleDataRow row, ByteBuffer buf, int rowOff, int payloadSize)` Write row data fragment.
`protected void` `writeRowData(long pageAddr, int dataOff, int payloadSize, SimpleDataRow row, boolean newRow)`

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

`addRow, addRow, addRowFragment, addRowFragment, checkIndex, compactPage, forAllItems, getDataOffset, getFreeListPageId, getFreeSpace, getPayloadOffset, getRealFreeSpace, getRowsCount, initNewPage, isEmpty, isFragmented, printPageLayout, readPayload, removeRow, restorePage, setFreeListPageId, updateRow, writeRowData`

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

`copyPage, deriveIndexPageType, getBPlusIO, getBPlusIO, getCompactedSize, getCompactedSize, getCompressedSize, getCompressedSize, getCompressionType, getCompressionType, getCrc, getCrc, getInnerVersions, getLeafVersions, getPageId, getPageId, getPageIO, getPageIO, getPageIO, getRotatedIdPart, getType, getType, getType, getVersion, getVersion, getVersion, isDataPageType, printPage, registerH2, registerH2ExtraInner, registerH2ExtraLeaf, registerTest, registerTest, setCompactedSize, setCompressedSize, setCompressionType, setCrc, setCrc, setPageId, setRotatedIdPart, setType, setVersion, 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<SimpleDataPageIO> VERSIONS

### Constructor Detail

#### SimpleDataPageIO

    public SimpleDataPageIO(int ver)

Parameters:
  `ver` - Page format version.

#### SimpleDataPageIO

    public SimpleDataPageIO(int type,
                            int ver)

Constructor is intended for extending types.

Parameters:
  `type` - IO type.
  `ver` - Page format version.

### Method Detail

#### writeFragmentData

    protected void writeFragmentData(SimpleDataRow row,
                                     ByteBuffer buf,
                                     int rowOff,
                                     int payloadSize)
                              throws IgniteCheckedException

Write row data fragment.

Specified by:
  `writeFragmentData` in class `AbstractDataPageIO<SimpleDataRow>`
Parameters:
  `row` - Row.
  `buf` - Byte buffer.
  `rowOff` - Offset in row data bytes.
  `payloadSize` - Data length that should be written in a fragment.
Throws:
  `IgniteCheckedException` - If failed.

#### writeRowData

    protected void writeRowData(long pageAddr,
                                int dataOff,
                                int payloadSize,
                                SimpleDataRow row,
                                boolean newRow)
                         throws IgniteCheckedException

Specified by:
  `writeRowData` in class `AbstractDataPageIO<SimpleDataRow>`
Parameters:
  `pageAddr` - Page address.
  `dataOff` - Data offset.
  `payloadSize` - Payload size.
  `row` - Data row.
  `newRow` - `False` if existing cache entry is updated, in this case skip key data write.
Throws:
  `IgniteCheckedException` - If failed.

#### printPage

    protected void printPage(long addr,
                             int pageSize,
                             GridStringBuilder sb)
                      throws IgniteCheckedException

Specified by:
  `printPage` in class `PageIO`
Parameters:
  `addr` - Address.
  `pageSize` - Page size.
  `sb` - Sb.
Throws:
  `IgniteCheckedException`

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.9.1
Release Date | : December 9 2020