async_geyser

package
v1.10.20 Latest Latest
Warning

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

Go to latest
Published: Oct 16, 2024 License: MIT Imports: 52 Imported by: 0

Documentation

Index

Constants

View Source
const (
	GrpcPluginEndointConfigEnvName = envConfigPrefix + "GRPC_PLUGIN_ENDPOINT"

	ProgramUpdateWorkerCountConfigEnvName = envConfigPrefix + "PROGRAM_UPDATE_WORKER_COUNT"

	ProgramUpdateQueueSizeConfigEnvName = envConfigPrefix + "PROGRAM_UPDATE_QUEUE_SIZE"

	BackupTimelockWorkerDaysCheckedConfigEnvName = envConfigPrefix + "BACKUP_TIMELOCK_WORKER_DAYS_CHECKED"

	BackupTimelockWorkerIntervalConfigEnvName = envConfigPrefix + "BACKUP_TIMELOCK_WORKER_INTERVAL"

	BackupExternalDepositWorkerCountConfigEnvName = envConfigPrefix + "BACKUP_EXTERNAL_DEPOSIT_WORKER_COUNT"

	BackupExternalDepositWorkerIntervalConfigEnvName = envConfigPrefix + "BACKUP_EXTERNAL_DEPOSIT_WORKER_INTERVAL"

	MessagingFeeCollectorPublicKeyConfigEnvName = envConfigPrefix + "MESSAGING_FEE_COLLECTOR_PUBLIC_KEY"

	SwapSubsidizerPublicKeyConfigEnvName = envConfigPrefix + "SWAP_SUBSIDIZER_PUBLIC_KEY"

	BackupMessagingWorkerIntervalConfigEnvName = envConfigPrefix + "BACKUP_MESSAGING_WORKER_INTERVAL"
)

Variables

View Source
var (
	ErrSubscriptionFallenBehind = errors.New("subscription stream fell behind")
	ErrTimeoutReceivingUpdate   = errors.New("timed out receiving update")
)
View Source
var (
	ErrUnexpectedProgramOwner = errors.New("unexpected program owner")
)

Functions

func New

func New(data code_data.Provider, pusher push_lib.Provider, configProvider ConfigProvider) async.Service

Types

type ConfigProvider

type ConfigProvider func() *conf

ConfigProvider defines how config values are pulled

func WithEnvConfigs

func WithEnvConfigs() ConfigProvider

WithEnvConfigs returns configuration pulled from environment variables

type ProgramAccountUpdateHandler

type ProgramAccountUpdateHandler interface {
	// Handle handles account updates from Geyser. Updates are not guaranteed
	// to come in order. Implementations must be idempotent and should not
	// trust the account data passed in. Always refer to finalized blockchain
	// state from another RPC provider.
	Handle(ctx context.Context, update *geyserpb.AccountUpdate) error
}

func NewSplitterProgramAccountHandler

func NewSplitterProgramAccountHandler(data code_data.Provider) ProgramAccountUpdateHandler

func NewTimelockV1ProgramAccountHandler

func NewTimelockV1ProgramAccountHandler(data code_data.Provider) ProgramAccountUpdateHandler

func NewTokenProgramAccountHandler

func NewTokenProgramAccountHandler(conf *conf, data code_data.Provider, pusher push_lib.Provider) ProgramAccountUpdateHandler

type SplitterProgramAccountHandler

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

func (*SplitterProgramAccountHandler) Handle

type TimelockV1ProgramAccountHandler

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

func (*TimelockV1ProgramAccountHandler) Handle

type TokenProgramAccountHandler

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

func (*TokenProgramAccountHandler) Handle

Directories

Path Synopsis
api
gen

Jump to

Keyboard shortcuts

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