keeper

package
v0.10.8 Latest Latest
Warning

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

Go to latest
Published: Jun 21, 2021 License: MIT Imports: 29 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

Functions

func CalcPositioningConstant added in v0.10.5

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 added in v0.10.8

func (Delegate) OnJobCreated(spec job.Job)

func (Delegate) OnJobDeleted added in v0.10.8

func (Delegate) OnJobDeleted(spec job.Job)

func (*Delegate) ServicesForSpec

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

type MailRoom added in v0.10.4

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) ORM

func (ORM) BatchDeleteUpkeepsForJob added in v0.10.4

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 added in v0.10.8

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 added in v0.10.4

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

func (ORM) SetLastRunHeightForUpkeepOnJob added in v0.10.4

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,
	db *gorm.DB,
	txm transmitter,
	jrm job.ORM,
	logBroadcaster log.Broadcaster,
	syncInterval time.Duration,
	minConfirmations uint64,
) *RegistrySynchronizer

func (*RegistrySynchronizer) Close

func (rs *RegistrySynchronizer) Close() error

func (*RegistrySynchronizer) HandleLog added in v0.10.4

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

func (*RegistrySynchronizer) IsV2Job added in v0.10.4

func (rs *RegistrySynchronizer) IsV2Job() bool

func (*RegistrySynchronizer) JobID added in v0.10.4

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

func (*RegistrySynchronizer) JobIDV2 added in v0.10.4

func (rs *RegistrySynchronizer) JobIDV2() int32

func (*RegistrySynchronizer) Start

func (rs *RegistrySynchronizer) Start() error

type UpkeepExecuter added in v0.10.6

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

func NewUpkeepExecuter added in v0.10.6

func NewUpkeepExecuter(
	job job.Job,
	db *gorm.DB,
	txm transmitter,
	pr pipeline.Runner,
	ethClient eth.Client,
	headBroadcaster httypes.HeadBroadcaster,
	config *orm.Config,
) *UpkeepExecuter

func (*UpkeepExecuter) Close added in v0.10.6

func (executer *UpkeepExecuter) Close() error

func (*UpkeepExecuter) Connect added in v0.10.8

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

func (*UpkeepExecuter) OnNewLongestChain added in v0.10.6

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

func (*UpkeepExecuter) Start added in v0.10.6

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