listener

package
v0.11.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 31, 2024 License: MIT Imports: 15 Imported by: 8

Documentation

Overview

Package listener is the listener used to pull in chain events

Index

Constants

This section is empty.

Variables

View Source
var (

	// ErrNoLatestBlockForChainID is returned when no block exists for the chain.
	ErrNoLatestBlockForChainID = listenerDB.ErrNoLatestBlockForChainID
)

Functions

This section is empty.

Types

type ContractListener

type ContractListener interface {
	// Listen starts the listener and call HandleLog for each event
	Listen(ctx context.Context, handler HandleLog) error
	// LatestBlock gets the last recorded latest block from the rpc.
	// this is NOT last indexed. It is provided as a helper for checking confirmation count
	LatestBlock() uint64
	// Address gets the address of the contract this listener is listening to
	Address() common.Address
	// SetPollInterval sets the poll interval for the listener.
	SetPollInterval(duration time.Duration)
}

ContractListener listens for chain events and calls HandleLog.

func NewChainListener

func NewChainListener(omnirpcClient client.EVM, store listenerDB.ChainListenerDB, address common.Address, initialBlock uint64, handler metrics.Handler) (ContractListener, error)

NewChainListener creates a new chain listener.

type HandleLog

type HandleLog func(ctx context.Context, log types.Log) error

HandleLog is the handler for a log event in the event this errors, the range will be reparsed.

Directories

Path Synopsis
Package db provides the database layer for the chain listener.
Package db provides the database layer for the chain listener.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL