keeper

package
v0.0.4 Latest Latest
Warning

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

Go to latest
Published: Nov 21, 2021 License: MIT Imports: 28 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

Functions

func CalcPositioningConstant

func CalcPositioningConstant(upkeepID int64, registryAddress ethkey.EIP55Address) (int32, error)

the positioning constant is fixed because upkeepID and registryAddress are immutable

func ValidatedKeeperSpec

func ValidatedKeeperSpec(tomlString string) (job.Job, error)

Types

type Delegate

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

func NewDelegate

func NewDelegate(
	db *gorm.DB,
	txm transmitter,
	jrm job.ORM,
	pr pipeline.Runner,
	ethClient eth.Client,
	headBroadcaster httypes.HeadBroadcaster,
	logBroadcaster log.Broadcaster,
	config *orm.Config,
) *Delegate

func (*Delegate) JobType

func (d *Delegate) JobType() job.Type

func (Delegate) OnJobCreated

func (Delegate) OnJobCreated(spec job.Job)

func (Delegate) OnJobDeleted

func (Delegate) OnJobDeleted(spec job.Job)

func (*Delegate) ServicesForSpec

func (d *Delegate) ServicesForSpec(spec job.Job) (services []job.Service, err error)

type MailRoom

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

MailRoom holds the log mailboxes for all the log types that keeper cares about

type ORM

type ORM struct {
	DB *gorm.DB
	// contains filtered or unexported fields
}

func NewORM

func NewORM(db *gorm.DB, txm transmitter, config *orm.Config) ORM

func (ORM) BatchDeleteUpkeepsForJob

func (korm ORM) BatchDeleteUpkeepsForJob(ctx context.Context, jobID int32, upkeedIDs []int64) (int64, error)

func (ORM) CreateEthTransactionForUpkeep

func (korm ORM) CreateEthTransactionForUpkeep(tx *gorm.DB, upkeep UpkeepRegistration, payload []byte) (models.EthTx, error)

func (ORM) EligibleUpkeepsForRegistry

func (korm ORM) EligibleUpkeepsForRegistry(
	ctx context.Context,
	registryAddress ethkey.EIP55Address,
	blockNumber int64,
	gracePeriod int64,
) (upkeeps []UpkeepRegistration, _ error)

func (ORM) LowestUnsyncedID

func (korm ORM) LowestUnsyncedID(ctx context.Context, reg Registry) (nextID int64, err error)

LowestUnsyncedID returns the largest upkeepID + 1, indicating the expected next upkeepID to sync from the contract

func (ORM) Registries

func (korm ORM) Registries(ctx context.Context) (registries []Registry, _ error)

func (ORM) RegistryForJob

func (korm ORM) RegistryForJob(ctx context.Context, jobID int32) (registry Registry, _ error)

func (ORM) SetLastRunHeightForUpkeepOnJob

func (korm ORM) SetLastRunHeightForUpkeepOnJob(db *gorm.DB, jobID int32, upkeepID int64, height int64) error

func (ORM) UpsertRegistry

func (korm ORM) UpsertRegistry(ctx context.Context, registry *Registry) error

func (ORM) UpsertUpkeep

func (korm ORM) UpsertUpkeep(ctx context.Context, registration *UpkeepRegistration) error

type Registry

type Registry struct {
	ID                int32 `gorm:"primary_key"`
	BlockCountPerTurn int32
	CheckGas          int32
	ContractAddress   ethkey.EIP55Address
	FromAddress       ethkey.EIP55Address
	JobID             int32
	KeeperIndex       int32
	NumKeepers        int32
}

func NewRegistry

func NewRegistry(address ethkey.EIP55Address, from ethkey.EIP55Address, jobID int32) Registry

func (Registry) TableName

func (Registry) TableName() string

type RegistrySynchronizer

type RegistrySynchronizer struct {
	utils.StartStopOnce
	// contains filtered or unexported fields
}

func NewRegistrySynchronizer

func NewRegistrySynchronizer(
	job job.Job,
	contract *keeper_registry_wrapper.KeeperRegistry,
	orm ORM,
	jrm job.ORM,
	logBroadcaster log.Broadcaster,
	syncInterval time.Duration,
	minConfirmations uint64,
) *RegistrySynchronizer

func (*RegistrySynchronizer) Close

func (rs *RegistrySynchronizer) Close() error

func (*RegistrySynchronizer) HandleLog

func (rs *RegistrySynchronizer) HandleLog(broadcast log.Broadcast)

func (*RegistrySynchronizer) IsV2Job

func (rs *RegistrySynchronizer) IsV2Job() bool

func (*RegistrySynchronizer) JobID

func (rs *RegistrySynchronizer) JobID() models.JobID

func (*RegistrySynchronizer) JobIDV2

func (rs *RegistrySynchronizer) JobIDV2() int32

func (*RegistrySynchronizer) Start

func (rs *RegistrySynchronizer) Start() error

type UpkeepExecuter

type UpkeepExecuter struct {
	utils.StartStopOnce
	// contains filtered or unexported fields
}

func NewUpkeepExecuter

func NewUpkeepExecuter(
	job job.Job,
	orm ORM,
	pr pipeline.Runner,
	ethClient eth.Client,
	headBroadcaster httypes.HeadBroadcaster,
	config orm.ConfigReader,
) *UpkeepExecuter

func (*UpkeepExecuter) Close

func (executer *UpkeepExecuter) Close() error

func (*UpkeepExecuter) Connect

func (executer *UpkeepExecuter) Connect(head *models.Head) error

func (*UpkeepExecuter) OnNewLongestChain

func (executer *UpkeepExecuter) OnNewLongestChain(ctx context.Context, head models.Head)

func (*UpkeepExecuter) Start

func (executer *UpkeepExecuter) Start() error

type UpkeepRegistration

type UpkeepRegistration struct {
	ID                  int32 `gorm:"primary_key"`
	CheckData           []byte
	ExecuteGas          uint64
	LastRunBlockHeight  int64
	RegistryID          int32
	Registry            Registry
	UpkeepID            int64
	PositioningConstant int32
}

Jump to

Keyboard shortcuts

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