Documentation ¶
Overview ¶
Package fetcher provides fetchers to fetch data from Scribe, BridgeConfig, and Swap.
Index ¶
- Constants
- func GetDefiLlamaData(ctx context.Context, timestamp int, coinGeckoID string) *float64
- type PriceService
- type ScribeFetcher
- func (s ScribeFetcher) FetchBlockTime(ctx context.Context, chainID int, blockNumber int) (*int, error)
- func (s ScribeFetcher) FetchLastIndexed(ctx context.Context, chainID uint32, contractAddress string) (uint64, error)
- func (s ScribeFetcher) FetchLogsInRange(ctx context.Context, chainID uint32, startBlock, endBlock uint64, ...) ([]ethTypes.Log, error)
- func (s ScribeFetcher) FetchTx(ctx context.Context, tx string, chainID int, blockNumber int) (*uint64, *string, error)
- func (s ScribeFetcher) FetchTxSender(ctx context.Context, chainID uint32, txHash string) (string, error)
- type Service
- type SwapService
Constants ¶
const NoTokenID = "NO_TOKEN_ID"
NoTokenID is the string returned when a token id is not found (not an authentic token).
Variables ¶
This section is empty.
Functions ¶
Types ¶
type PriceService ¶ added in v0.0.81
type PriceService interface { // GetDefiLlamaData historical price data GetDefiLlamaData(context.Context, int, string) *float64 }
PriceService --output=mocks --case=underscore.
type ScribeFetcher ¶
ScribeFetcher is the fetcher for the events. It uses GQL.
func NewFetcher ¶
func NewFetcher(fetchClient *client.Client) *ScribeFetcher
NewFetcher creates a new fetcher.
func (ScribeFetcher) FetchBlockTime ¶ added in v0.0.28
func (s ScribeFetcher) FetchBlockTime(ctx context.Context, chainID int, blockNumber int) (*int, error)
FetchBlockTime fetches the timestamp of a block.
func (ScribeFetcher) FetchLastIndexed ¶
func (s ScribeFetcher) FetchLastIndexed(ctx context.Context, chainID uint32, contractAddress string) (uint64, error)
FetchLastIndexed fetches the last indexed block per contract.
func (ScribeFetcher) FetchLogsInRange ¶
func (s ScribeFetcher) FetchLogsInRange(ctx context.Context, chainID uint32, startBlock, endBlock uint64, contractAddress common.Address) ([]ethTypes.Log, error)
FetchLogsInRange fetches logs in a range with the GQL client.
func (ScribeFetcher) FetchTx ¶ added in v0.0.43
func (s ScribeFetcher) FetchTx(ctx context.Context, tx string, chainID int, blockNumber int) (*uint64, *string, error)
FetchTx fetches the transaction of a log.
func (ScribeFetcher) FetchTxSender ¶
func (s ScribeFetcher) FetchTxSender(ctx context.Context, chainID uint32, txHash string) (string, error)
FetchTxSender fetches the sender of a transaction.
type Service ¶ added in v0.0.32
type Service interface { // GetTokenID gets the token id from the bridge config contract. GetTokenID(ctx context.Context, chainID *big.Int, tokenAddress common.Address) (tokenID *string, err error) // GetToken gets the token from the bridge config contract. GetToken(ctx context.Context, chainID uint32, tokenAddress common.Address) (token *bridgeconfig.BridgeConfigV3Token, err error) }
Service is the interface for the fetcher service.
func NewBridgeConfigFetcher ¶
func NewBridgeConfigFetcher(bridgeConfigAddress common.Address, bridgeConfigRef *bridgeconfig.BridgeConfigRef) (Service, error)
NewBridgeConfigFetcher creates a new config fetcher. Backend must be an archive backend.
type SwapService ¶ added in v0.0.43
type SwapService interface { // GetTokenMetaData gets the token from the erc20 token contract given a swap contract token id. GetTokenMetaData(ctx context.Context, tokenAddress common.Address) (*string, *uint8, error) // GetTokenAddress gets the token address from the swap contract given a swap contract token id. GetTokenAddress(ctx context.Context, tokenIndex uint8) (*common.Address, error) }
SwapService --output=mocks --case=underscore.
func NewSwapFetcher ¶
func NewSwapFetcher(swapAddress common.Address, backend bind.ContractBackend, isMetaSwap bool) (SwapService, error)
NewSwapFetcher creates a new swap fetcher. Backend must be an archive backend.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package tokenprice contains the historical price data
|
Package tokenprice contains the historical price data |