@proto-kit/sequencerDocs


Documentation / @proto-kit/sequencer / PrivateMempool

Class: PrivateMempool

Lifecycle of a SequencerModule

start(): Executed to execute any logic required to start the module

Extends

Implements

Constructors

new PrivateMempool()

new PrivateMempool(transactionValidator, transactionStorage, messageService, tracer, mempoolSorting): PrivateMempool

Parameters

transactionValidator: TransactionValidator

transactionStorage: TransactionStorage

messageService: undefined | IncomingMessagesService

tracer: Tracer

mempoolSorting: undefined | MempoolSorting

Returns

PrivateMempool

Overrides

SequencerModule.constructor

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:34

Properties

currentConfig

protected currentConfig: undefined | PrivateMempoolConfig

Store the config separately, so that we can apply additional checks when retrieving it via the getter

Inherited from

SequencerModule.currentConfig

Defined in

packages/common/dist/config/ConfigurableModule.d.ts:17


events

readonly events: EventEmitter<MempoolEvents>

Implementation of

Mempool.events

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:30


tracer

readonly tracer: Tracer

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:40


presets

static presets: Presets<unknown> = {}

Inherited from

SequencerModule.presets

Defined in

packages/sequencer/src/sequencer/builder/SequencerModule.ts:20

Accessors

config

Get Signature

get config(): Config

Returns

Config

Set Signature

set config(config): void

Parameters

config: Config

Returns

void

Inherited from

SequencerModule.config

Defined in

packages/common/dist/config/ConfigurableModule.d.ts:18

Methods

add()

add(tx): Promise<boolean>

Add a transaction to the mempool

Parameters

tx: PendingTransaction

Returns

Promise<boolean>

The new commitment to the mempool

Implementation of

Mempool.add

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:73


create()

create(childContainerProvider): void

Parameters

childContainerProvider: ChildContainerProvider

Returns

void

Inherited from

SequencerModule.create

Defined in

packages/common/dist/config/ConfigurableModule.d.ts:20


getMandatoryTxs()

getMandatoryTxs(): Promise<PendingTransaction[]>

Returns

Promise<PendingTransaction[]>

Implementation of

Mempool.getMandatoryTxs

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:131


getTargetBlockSize()

getTargetBlockSize(): number

Returns

number

Implementation of

Mempool.getTargetBlockSize

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:60


getTxs()

getTxs(offset?, limit?): Promise<PendingTransaction[]>

Retrieve all transactions that are currently in the mempool

Parameters

offset?: number

limit?: number

Returns

Promise<PendingTransaction[]>

Implementation of

Mempool.getTxs

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:110


length()

length(): Promise<number>

Returns

Promise<number>

Implementation of

Mempool.length

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:64


removeTxs()

removeTxs(included, dropped): Promise<void>

Parameters

included: string[]

dropped: string[]

Returns

Promise<void>

Implementation of

Mempool.removeTxs

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:104


start()

start(): Promise<void>

Start the module and all it’s functionality. The returned Promise has to resolve after initialization, since it will block in the sequencer init. That means that you mustn’t await server.start() for example.

Returns

Promise<void>

Overrides

SequencerModule.start

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:138


dependencies()

static dependencies(): object

Returns

object

MempoolInstrumentation

MempoolInstrumentation: object

MempoolInstrumentation.useClass

MempoolInstrumentation.useClass: typeof MempoolInstrumentation = MempoolInstrumentation

Defined in

packages/sequencer/src/mempool/private/PrivateMempool.ts:48