trigger

package
v1.0.6 Latest Latest
Warning

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

Go to latest
Published: Jun 12, 2023 License: GPL-3.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ChainRetriever added in v1.0.6

type ChainRetriever interface {
	Validator
	CanAcceptTxs() bool
	ConfirmedDepth() uint64
	CurrentBlockNumber() uint64
	GetTransactionTimeOnChain(Transaction) uint64
	GetTransactionNumberOnChain(Transaction) uint64
	GetConfirmedTransactionNumberOnChain(Transaction) uint64
}

ChainRetriever include Validator and provides blockchain retriever

type Executor

type Executor interface {
	SignHash([]byte) ([]byte, error)
	SubmitTransaction([]*core.ReceptTransaction)
	Start()
	Stop()
}

Executor execute transactions on blockchain

type Subscriber

type Subscriber interface {
	SubscribeBlockEvent(ch chan<- core.CrossBlockEvent) event.Subscription
	Stop()
}

Subscriber subscriber block logs, send them to crosschain service

type Transaction added in v1.0.6

type Transaction interface {
	ID() common.Hash
	ChainId() *big.Int
	DestinationId() *big.Int
	BlockHash() common.Hash
	From() common.Address
}

type Validator added in v1.0.6

type Validator interface {
	VerifyExpire(ctx *core.CrossTransaction) error
	VerifyContract(cws Transaction) error
	//VerifyReorg(ctx Transaction) error
	VerifySigner(ctx *core.CrossTransaction, signChain, storeChainID *big.Int) (common.Address, error)
	UpdateAnchors(info *core.RemoteChainInfo) error
	RequireSignatures() int
	ExpireNumber() int // return -1 if never expired
}

Validator validate cross transaction on blockchain, check tx signer on contract

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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