Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrBadRelayConfig = errors.New("bad relay config")
Functions ¶
This section is empty.
Types ¶
type ChainContractReader ¶ added in v2.9.0
type ChainContractReader struct { ContractABI string `json:"contractABI"` // ChainReaderDefinitions key is chainAgnostic read name. ChainReaderDefinitions map[string]ChainReaderDefinition `json:"chainReaderDefinitions"` }
type ChainReaderConfig ¶ added in v2.9.0
type ChainReaderConfig struct { // ChainContractReaders key is contract name ChainContractReaders map[string]ChainContractReader `json:"chainContractReaders"` }
type ChainReaderDefinition ¶ added in v2.9.0
type ChainReaderDefinition struct { ChainSpecificName string `json:"chainSpecificName"` // chain specific contract method name or event type. Params map[string]any `json:"params"` ReturnValues []string `json:"returnValues"` CacheEnabled bool `json:"cacheEnabled"` ReadType ReadType `json:"readType"` }
type ConfigPoller ¶ added in v2.3.0
type FunctionsProvider ¶ added in v2.5.0
type FunctionsProvider interface { commontypes.FunctionsProvider LogPollerWrapper() LogPollerWrapper }
TODO(FUN-668): Migrate this fully into commontypes.FunctionsProvider
type LogPollerWrapper ¶ added in v2.5.0
type LogPollerWrapper interface { services.Service LatestEvents() ([]OracleRequest, []OracleResponse, error) // TODO (FUN-668): Remove from the LOOP interface and only use internally within the EVM relayer SubscribeToUpdates(name string, subscriber RouteUpdateSubscriber) }
A LogPoller wrapper that understands router proxy contracts
type OracleRequest ¶ added in v2.5.0
type OracleRequest struct { RequestId [32]byte RequestingContract common.Address RequestInitiator common.Address SubscriptionId uint64 SubscriptionOwner common.Address Data []byte DataVersion uint16 Flags [32]byte CallbackGasLimit uint64 TxHash common.Hash CoordinatorContract common.Address OnchainMetadata []byte }
type OracleResponse ¶ added in v2.5.0
type OracleResponse struct {
RequestId [32]byte
}
type RelayConfig ¶
type RelayConfig struct { ChainID *big.Big `json:"chainID"` FromBlock uint64 `json:"fromBlock"` EffectiveTransmitterID null.String `json:"effectiveTransmitterID"` ConfigContractAddress *common.Address `json:"configContractAddress"` ChainReader *ChainReaderConfig `json:"chainReader"` // Contract-specific SendingKeys pq.StringArray `json:"sendingKeys"` // Mercury-specific FeedID *common.Hash `json:"feedID"` }
type RelayOpts ¶ added in v2.5.0
type RelayOpts struct { // TODO BCF-2508 -- should anyone ever get the raw config bytes that are embedded in args? if not, // make this private and wrap the arg fields with funcs on RelayOpts commontypes.RelayArgs // contains filtered or unexported fields }
func NewRelayOpts ¶ added in v2.5.0
func (*RelayOpts) RelayConfig ¶ added in v2.5.0
func (o *RelayOpts) RelayConfig() (RelayConfig, error)
Click to show internal directories.
Click to hide internal directories.