EVMChainEventsBrowser
Defined in: atomiq-chain-evm/src/evm/events/EVMChainEventsBrowser.ts:47
EVM on-chain event handler for front-end systems without access to fs, uses WS or long-polling to subscribe, might lose out on some events if the network is unreliable, front-end systems should take this into consideration and not rely purely on events
Extended by
Implements
Constructors
Constructor
new EVMChainEventsBrowser(
chainInterface,
evmSwapContract,
evmSpvVaultContract,
pollIntervalSeconds): EVMChainEventsBrowser;
Defined in: atomiq-chain-evm/src/evm/events/EVMChainEventsBrowser.ts:110
Parameters
| Parameter | Type | Default value |
|---|---|---|
chainInterface | EVMChainInterface | undefined |
evmSwapContract | EVMSwapContract | undefined |
evmSpvVaultContract | EVMSpvVaultContract<any> | undefined |
pollIntervalSeconds | number | 5 |
Returns
EVMChainEventsBrowser
Methods
init()
init(noAutomaticPoll?): Promise<void>;
Defined in: atomiq-chain-evm/src/evm/events/EVMChainEventsBrowser.ts:616
Initializes the chains event listener, by default this initiates a websocket events subscription or HTTP polling for new events.
Parameters
| Parameter | Type | Description |
|---|---|---|
noAutomaticPoll? | boolean | When this flag is passed the listener doesn't initiate the websocket events subscription or HTTP polling, instead it relies on the implementor calling the ChainEvents.poll to fetch new events |
Returns
Promise<void>
Implementation of
poll()
poll(lastState?): Promise<object[]>;
Defined in: atomiq-chain-evm/src/evm/events/EVMChainEventsBrowser.ts:432
Triggers a single poll on the events instance, usually ran automatically, but should be called manually
when initiated with noAutomaticPoll=true
Parameters
| Parameter | Type | Description |
|---|---|---|
lastState? | object[] | The current state of the chain events |
Returns
Promise<object[]>
The new state that should be saved, persisted and passed to the subsequent poll() call
Implementation of
registerListener()
registerListener(cbk): void;
Defined in: atomiq-chain-evm/src/evm/events/EVMChainEventsBrowser.ts:645
Registers a new listener to listen for on-chain events
Parameters
| Parameter | Type | Description |
|---|---|---|
cbk | EventListener<EVMSwapData> |
Returns
void
Implementation of
stop()
stop(): Promise<void>;
Defined in: atomiq-chain-evm/src/evm/events/EVMChainEventsBrowser.ts:630
Stops the event listener's polling and websocket subscription
Returns
Promise<void>
Implementation of
unregisterListener()
unregisterListener(cbk): boolean;
Defined in: atomiq-chain-evm/src/evm/events/EVMChainEventsBrowser.ts:652
Unregisters a previously registered events listener, returning true if success, false if failed
Parameters
| Parameter | Type | Description |
|---|---|---|
cbk | EventListener<EVMSwapData> |
Returns
boolean
Implementation of
ChainEvents.unregisterListener
processEvents()
protected processEvents(events, currentBlock?): Promise<void>;
Defined in: atomiq-chain-evm/src/evm/events/EVMChainEventsBrowser.ts:273
Processes event as received from the chain, parses it & calls event listeners
Parameters
| Parameter | Type | Description |
|---|---|---|
events | ( | TypedEventLog< | TypedContractEvent<InputTuple, OutputTuple, OutputObject> | TypedContractEvent<InputTuple, OutputTuple, OutputObject> | TypedContractEvent<InputTuple, OutputTuple, OutputObject>> | TypedEventLog< | TypedContractEvent<InputTuple, OutputTuple, OutputObject> | TypedContractEvent<InputTuple, OutputTuple, OutputObject> | TypedContractEvent<InputTuple, OutputTuple, OutputObject> | TypedContractEvent<InputTuple, OutputTuple, OutputObject> | TypedContractEvent<InputTuple, OutputTuple, OutputObject>>)[] | |
currentBlock? | Block |
Returns
Promise<void>