chainio

package
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: Oct 13, 2024 License: MIT Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MaxRetries                        = 100
	RetryInterval                     = 1 * time.Second
	BlockInterval              uint64 = 1000
	PollLatestBatchInterval           = 5 * time.Second
	RemoveBatchFromSetInterval        = 5 * time.Minute
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AvsReader

type AvsReader struct {
	*sdkavsregistry.ChainReader
	AvsContractBindings            *AvsServiceBindings
	AlignedLayerServiceManagerAddr ethcommon.Address
	// contains filtered or unexported fields
}

func NewAvsReaderFromConfig

func NewAvsReaderFromConfig(baseConfig *config.BaseConfig, ecdsaConfig *config.EcdsaConfig) (*AvsReader, error)

func (*AvsReader) GetErc20Mock

func (r *AvsReader) GetErc20Mock(tokenAddr ethcommon.Address) (*contractERC20Mock.ContractERC20Mock, error)

func (*AvsReader) GetNotRespondedTasksFrom added in v0.9.0

func (r *AvsReader) GetNotRespondedTasksFrom(fromBlock uint64) ([]servicemanager.ContractAlignedLayerServiceManagerNewBatchV3, error)

Returns all the "NewBatchV3" logs that have not been responded starting from the given block number

func (*AvsReader) IsOperatorRegistered

func (r *AvsReader) IsOperatorRegistered(address ethcommon.Address) (bool, error)

type AvsServiceBindings

type AvsServiceBindings struct {
	ServiceManager         *csservicemanager.ContractAlignedLayerServiceManager
	ServiceManagerFallback *csservicemanager.ContractAlignedLayerServiceManager
	// contains filtered or unexported fields
}

func NewAvsServiceBindings

func NewAvsServiceBindings(serviceManagerAddr, blsOperatorStateRetrieverAddr gethcommon.Address, ethClient eth.InstrumentedClient, ethClientFallback eth.InstrumentedClient, logger logging.Logger) (*AvsServiceBindings, error)

type AvsSubscriber

type AvsSubscriber struct {
	AvsContractBindings            *AvsServiceBindings
	AlignedLayerServiceManagerAddr ethcommon.Address
	// contains filtered or unexported fields
}

Subscribers use a ws connection instead of http connection like Readers kind of stupid that the geth client doesn't have a unified interface for both... it takes a single url, so the bindings, even though they have watcher functions, those can't be used with the http connection... seems very very stupid. Am I missing something?

func NewAvsSubscriberFromConfig

func NewAvsSubscriberFromConfig(baseConfig *config.BaseConfig) (*AvsSubscriber, error)

func (*AvsSubscriber) SubscribeToNewTasksV2 added in v0.5.0

func (s *AvsSubscriber) SubscribeToNewTasksV2(newTaskCreatedChan chan *servicemanager.ContractAlignedLayerServiceManagerNewBatchV2) (chan error, error)

func (*AvsSubscriber) SubscribeToNewTasksV3 added in v0.7.0

func (s *AvsSubscriber) SubscribeToNewTasksV3(newTaskCreatedChan chan *servicemanager.ContractAlignedLayerServiceManagerNewBatchV3) (chan error, error)

func (*AvsSubscriber) WaitForOneBlock added in v0.5.0

func (s *AvsSubscriber) WaitForOneBlock(startBlock uint64) error

type AvsWriter

type AvsWriter struct {
	*avsregistry.ChainWriter
	AvsContractBindings *AvsServiceBindings

	Signer         signer.Signer
	Client         eth.InstrumentedClient
	ClientFallback eth.InstrumentedClient
	// contains filtered or unexported fields
}

func NewAvsWriterFromConfig

func NewAvsWriterFromConfig(baseConfig *config.BaseConfig, ecdsaConfig *config.EcdsaConfig) (*AvsWriter, error)

func (*AvsWriter) SendAggregatedResponse

func (w *AvsWriter) SendAggregatedResponse(batchIdentifierHash [32]byte, batchMerkleRoot [32]byte, senderAddress [20]byte, nonSignerStakesAndSignature servicemanager.IBLSSignatureCheckerNonSignerStakesAndSignature) (*common.Hash, error)

Jump to

Keyboard shortcuts

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