org.apache.ignite.internal.processors.cache.persistence.diagnostic.pagelocktracker.store

## Class HeapPageMetaInfoStore

- java.lang.Object
- - org.apache.ignite.internal.processors.cache.persistence.diagnostic.pagelocktracker.store.HeapPageMetaInfoStore

All Implemented Interfaces:
  PageMetaInfoStore

    public class HeapPageMetaInfoStore
    extends Object
    implements PageMetaInfoStore

### Constructor Summary

Constructors
Constructor and Description
`HeapPageMetaInfoStore(int capacity, @Nullable MemoryCalculator memoryCalc)`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `add(int itemIdx, int op, int structureId, long pageId, long pageAddrHeader, long pageAddr)` Add page to store.
`int` `capacity()`
`PageMetaInfoStore` `copy()`
`void` `free()` Free resource.
`int` `getOperation(int itemIdx)`
`long` `getPageAddr(int itemIdx)`
`long` `getPageAddrHeader(int itemIdx)`
`long` `getPageId(int itemIdx)`
`int` `getStructureId(int itemIdx)`
`boolean` `isEmpty()`
`void` `remove(int itemIdx)` Remove page from store by index.

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

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

### Constructor Detail

#### HeapPageMetaInfoStore

    public HeapPageMetaInfoStore(int capacity,
                                 @Nullable
                                 @Nullable MemoryCalculator memoryCalc)

### Method Detail

#### capacity

    public int capacity()

Specified by:
  `capacity` in interface `PageMetaInfoStore`
Returns:
  Capacity.

#### isEmpty

    public boolean isEmpty()

Specified by:
  `isEmpty` in interface `PageMetaInfoStore`
Returns:
  True if empty.

#### add

    public void add(int itemIdx,
                    int op,
                    int structureId,
                    long pageId,
                    long pageAddrHeader,
                    long pageAddr)

Add page to store.

Specified by:
  `add` in interface `PageMetaInfoStore`
Parameters:
  `itemIdx` - Index of page in store.
  `op` - Page operation.
  `structureId` - Data structure id.
  `pageId` - Page id.
  `pageAddrHeader` - Page header addres.
  `pageAddr` - Page addres.

#### remove

    public void remove(int itemIdx)

Remove page from store by index.

Specified by:
  `remove` in interface `PageMetaInfoStore`

#### getOperation

    public int getOperation(int itemIdx)

Specified by:
  `getOperation` in interface `PageMetaInfoStore`
Parameters:
  `itemIdx` - Index of page in store.
Returns:
  Page operation.

#### getStructureId

    public int getStructureId(int itemIdx)

Specified by:
  `getStructureId` in interface `PageMetaInfoStore`
Parameters:
  `itemIdx` - Index of page in store.
Returns:
  Data structure id.

#### getPageId

    public long getPageId(int itemIdx)

Specified by:
  `getPageId` in interface `PageMetaInfoStore`
Parameters:
  `itemIdx` - Index of page in store.
Returns:
  Page id.

#### getPageAddrHeader

    public long getPageAddrHeader(int itemIdx)

Specified by:
  `getPageAddrHeader` in interface `PageMetaInfoStore`
Parameters:
  `itemIdx` - Index of page in store.
Returns:
  Page header address.

#### getPageAddr

    public long getPageAddr(int itemIdx)

Specified by:
  `getPageAddr` in interface `PageMetaInfoStore`
Parameters:
  `itemIdx` - Index of page in store.
Returns:
  Page address.

#### copy

    public PageMetaInfoStore copy()

Specified by:
  `copy` in interface `PageMetaInfoStore`
Returns:
  Copy of current store state.

#### free

    public void free()

Free resource.

Specified by:
  `free` in interface `PageMetaInfoStore`

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.16.0
Release Date | : December 15 2023