events

package
v1.4.2 Latest Latest
Warning

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

Go to latest
Published: Oct 16, 2023 License: LGPL-3.0 Imports: 10 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ChainClient

type ChainClient interface {
	FetchEventLogs(ctx context.Context, contractAddress common.Address, event string, startBlock *big.Int, endBlock *big.Int) ([]ethTypes.Log, error)
}

type Deposit

type Deposit struct {
	// ID of chain deposit will be bridged to
	DestinationDomainID uint8
	// ResourceID used to find address of handler to be used for deposit
	ResourceID types.ResourceID
	// Nonce of deposit
	DepositNonce uint64
	// Address of sender (msg.sender: user)
	SenderAddress common.Address
	// Additional data to be passed to specified handler
	Data []byte
	// ERC20Handler: responds with empty data
	// ERC721Handler: responds with deposited token metadata acquired by calling a tokenURI method in the token contract
	// GenericHandler: responds with the raw bytes returned from the call to the target contract
	HandlerResponse []byte
}

Deposit struct holds event data with all necessary parameters and a handler response https://github.com/ChainSafe/chainbridge-solidity/blob/develop/contracts/Bridge.sol#L47

type EventSig

type EventSig string
const (
	DepositSig          EventSig = "Deposit(uint8,bytes32,uint64,address,bytes,bytes)"
	ThresholdChangedSig EventSig = "RelayerThresholdChanged(uint256)"
	ProposalEventSig    EventSig = "ProposalEvent(uint8,uint64,uint8,bytes32)"
	ProposalVoteSig     EventSig = "ProposalVote(uint8,uint64,uint8,bytes32)"
)

func (EventSig) GetTopic

func (es EventSig) GetTopic() common.Hash

type Listener

type Listener struct {
	// contains filtered or unexported fields
}

func NewListener

func NewListener(client ChainClient) *Listener

func (*Listener) FetchDeposits

func (l *Listener) FetchDeposits(ctx context.Context, contractAddress common.Address, startBlock *big.Int, endBlock *big.Int) ([]*Deposit, error)

func (*Listener) UnpackDeposit

func (l *Listener) UnpackDeposit(abi abi.ABI, data []byte) (*Deposit, error)

Jump to

Keyboard shortcuts

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