keeper

package
v1.10.0 Latest Latest
Warning

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

Go to latest
Published: Nov 10, 2023 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ErrValidatorWithAddrNotFound   = whoops.Errorf("validator with addr %s was not found")
	ErrValidatorNotInKeepAlive     = whoops.Errorf("validator is not in keep alive store %s")
	ErrMaxNumberOfExternalAccounts = whoops.Errorf("trying to submit %d accounts while the limit is %d")
	ErrValidatorCannotBePigeon     = whoops.Errorf("validator %s cannot be a pigeon")

	ErrSigningKeyNotFound             = whoops.Errorf("signing key for valAddr %s, chainType %s and chainReferenceID %s not found")
	ErrExternalChainAlreadyRegistered = whoops.Errorf("external account already registered: %s, %s, %s. Existing owner: %s, New owner: %s")
	ErrExternalAddressNotFound        = whoops.Errorf("external address (%s, %s, %s) for validator %s was not founds")

	ErrCannotJailValidator = whoops.Errorf("cannot jail validator: %s")

	ErrValidatorAlreadyJailed   = whoops.Errorf("validator already jailed: %s")
	ErrValidatorPigeonOutOfDate = whoops.Errorf("validator %s pigeon is out of date.  Version %s less than required %s")
)

Variables

This section is empty.

Functions

func NewMsgServerImpl

func NewMsgServerImpl(keeper Keeper) types.MsgServer

NewMsgServerImpl returns an implementation of the MsgServer interface for the provided Keeper.

Types

type Keeper

type Keeper struct {
	EvmKeeper         types.EvmKeeper
	SnapshotListeners []types.OnSnapshotBuiltListener
	// contains filtered or unexported fields
}

func NewKeeper

func NewKeeper(
	cdc codec.BinaryCodec,
	storeKey,
	memKey storetypes.StoreKey,
	ps paramtypes.Subspace,
	staking types.StakingKeeper,
	minimumPigeonVersion string,
	powerReduction sdkmath.Int,
) *Keeper

func (Keeper) AddExternalChainInfo

func (k Keeper) AddExternalChainInfo(ctx sdk.Context, valAddr sdk.ValAddress, newChainInfo []*types.ExternalChainInfo) error

addExternalChainInfo adds external chain info, such as this conductor's address on outside chains so that we can attribute rewards for running the jobs.

func (Keeper) CanAcceptKeepAlive added in v1.6.0

func (k Keeper) CanAcceptKeepAlive(ctx sdk.Context, valAddr sdk.ValAddress, pigeonVersion string) error

func (Keeper) CanAcceptValidator

func (k Keeper) CanAcceptValidator(ctx sdk.Context, valAddr sdk.ValAddress) error

func (Keeper) FindSnapshotByID

func (k Keeper) FindSnapshotByID(ctx sdk.Context, id uint64) (*types.Snapshot, error)

func (Keeper) GetAlivePigeons added in v0.8.0

func (Keeper) GetAllChainInfos added in v1.8.0

func (k Keeper) GetAllChainInfos(ctx sdk.Context) ([]*types.ValidatorExternalAccounts, error)

func (Keeper) GetCurrentSnapshot

func (k Keeper) GetCurrentSnapshot(ctx sdk.Context) (*types.Snapshot, error)

GetCurrentSnapshot returns the currently active snapshot.

func (Keeper) GetLatestPublishedSnapshot added in v1.9.0

func (Keeper) GetLatestSnapshotOnChain added in v1.2.0

func (k Keeper) GetLatestSnapshotOnChain(ctx sdk.Context, chainReferenceID string) (*types.Snapshot, error)

func (Keeper) GetParams

func (k Keeper) GetParams(ctx sdk.Context) types.Params

GetParams get all parameters as types.Params

func (Keeper) GetSigningKey

func (k Keeper) GetSigningKey(ctx sdk.Context, valAddr sdk.ValAddress, chainType, chainReferenceID, signedByAddress string) ([]byte, error)

GetSigningKey returns a signing key used by the conductor to sign arbitrary messages.

func (Keeper) GetUnjailedValidators added in v1.5.0

func (k Keeper) GetUnjailedValidators(ctx sdk.Context) []stakingtypes.ValidatorI

func (Keeper) GetValidatorAliveUntil added in v0.6.0

func (Keeper) GetValidatorChainInfos added in v0.8.0

func (k Keeper) GetValidatorChainInfos(ctx sdk.Context, valAddr sdk.ValAddress) ([]*types.ExternalChainInfo, error)

func (Keeper) GetValidatorJailReason added in v0.6.0

func (Keeper) Heartbeat

func (k Keeper) Heartbeat(ctx sdk.Context)

TODO: not required now

func (Keeper) IsJailed

func (k Keeper) IsJailed(ctx sdk.Context, val sdk.ValAddress) bool

IsJailed returns if the current validator is jailed or not.

func (Keeper) IsValidatorAlive added in v0.6.0

func (k Keeper) IsValidatorAlive(ctx sdk.Context, valAddr sdk.ValAddress) (bool, error)

func (Keeper) Jail added in v0.6.0

func (k Keeper) Jail(ctx sdk.Context, valAddr sdk.ValAddress, reason string) error

func (Keeper) JailInactiveValidators added in v0.6.0

func (k Keeper) JailInactiveValidators(ctx sdk.Context) error

func (Keeper) KeepValidatorAlive added in v0.6.0

func (k Keeper) KeepValidatorAlive(ctx sdk.Context, valAddr sdk.ValAddress, pigeonVersion string) error

func (Keeper) Logger

func (k Keeper) Logger(ctx sdk.Context) log.Logger

func (Keeper) Params

func (Keeper) PunishValidator

func (k Keeper) PunishValidator(ctx sdk.Context)

TODO: not required now

func (Keeper) SaveModifiedSnapshot added in v1.2.0

func (k Keeper) SaveModifiedSnapshot(ctx sdk.Context, snapshot *types.Snapshot) error

SaveModifiedSnapshot is needed for integration tests

func (Keeper) SetExternalChainInfoState

func (k Keeper) SetExternalChainInfoState(ctx sdk.Context, valAddr sdk.ValAddress, chainInfos []*types.ExternalChainInfo) error

func (Keeper) SetParams

func (k Keeper) SetParams(ctx sdk.Context, params types.Params)

SetParams set the params

func (Keeper) SetSnapshotOnChain added in v1.2.0

func (k Keeper) SetSnapshotOnChain(ctx sdk.Context, snapshotID uint64, chainReferenceID string) error

func (Keeper) SetValidatorBalance added in v0.6.0

func (k Keeper) SetValidatorBalance(ctx sdk.Context, valAddr sdk.ValAddress, chainType string, chainReferenceID string, externalAddress string, balance *big.Int) error

func (Keeper) TriggerSnapshotBuild

func (k Keeper) TriggerSnapshotBuild(ctx sdk.Context) (*types.Snapshot, error)

TriggerSnapshotBuild creates the snapshot of currently active validators that are active and registered as conductors.

func (Keeper) UpdateGracePeriod added in v1.5.0

func (k Keeper) UpdateGracePeriod(ctx sdk.Context)

UpdateGracePeriod will compare the list of active validators against the snapshot taken during the last block. Any new members will receive a grace period of n blocks. Active validators are stored as one flattened entry to relief pressure on reads every block. Call this during the EndBlock logic.

func (Keeper) ValidatorAliveUntil added in v0.6.0

func (k Keeper) ValidatorAliveUntil(ctx sdk.Context, valAddr sdk.ValAddress) (int64, error)

func (Keeper) ValidatorInfo

ValidatorInfo returns validator info. It's not related to a snapshot.

func (Keeper) ValidatorSupportsAllChains added in v1.7.0

func (k Keeper) ValidatorSupportsAllChains(ctx sdk.Context, validatorAddress sdk.ValAddress) bool

ValidatorSupportsAllChains returns true if the validator supports all chains in the keeper

Jump to

Keyboard shortcuts

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