ddchain

package
v0.2.6 Latest Latest
Warning

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

Go to latest
Published: Aug 24, 2023 License: MIT Imports: 62 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ModuleName             = types.ModuleName
	ReserveName            = types.ReserveName
	AsgardName             = types.AsgardName
	BondName               = types.BondName
	LendingName            = types.LendingName
	AffiliateCollectorName = types.AffiliateCollectorName
	RouterKey              = types.RouterKey
	StoreKey               = types.StoreKey
	DefaultCodespace       = types.DefaultCodespace

	// pool status
	PoolAvailable = types.PoolStatus_Available
	PoolStaged    = types.PoolStatus_Staged
	PoolSuspended = types.PoolStatus_Suspended

	// Admin config keys
	MaxWithdrawBasisPoints = types.MaxWithdrawBasisPoints

	// Vaults
	AsgardVault    = types.VaultType_AsgardVault
	YggdrasilVault = types.VaultType_YggdrasilVault
	UnknownVault   = types.VaultType_UnknownVault
	ActiveVault    = types.VaultStatus_ActiveVault
	InactiveVault  = types.VaultStatus_InactiveVault
	RetiringVault  = types.VaultStatus_RetiringVault
	InitVault      = types.VaultStatus_InitVault

	// Node status
	NodeActive      = types.NodeStatus_Active
	NodeWhiteListed = types.NodeStatus_Whitelisted
	NodeDisabled    = types.NodeStatus_Disabled
	NodeReady       = types.NodeStatus_Ready
	NodeStandby     = types.NodeStatus_Standby
	NodeUnknown     = types.NodeStatus_Unknown

	// Node type
	NodeTypeUnknown   = types.NodeType_TypeUnknown
	NodeTypeValidator = types.NodeType_TypeValidator
	NodeTypeVault     = types.NodeType_TypeVault

	// Bond type
	BondPaid     = types.BondType_bond_paid
	BondReturned = types.BondType_bond_returned
	BondCost     = types.BondType_bond_cost
	BondReward   = types.BondType_bond_reward
	AsgardKeygen = types.KeygenType_AsgardKeygen

	// Bond type
	AddPendingLiquidity      = types.PendingLiquidityType_add
	WithdrawPendingLiquidity = types.PendingLiquidityType_withdraw

	// Order Type
	MarketOrder = types.OrderType_market
	LimitOrder  = types.OrderType_limit

	// Mint/Burn type
	MintSupplyType = types.MintBurnSupplyType_mint
	BurnSupplyType = types.MintBurnSupplyType_burn

	// Memos
	TxSwap            = mem.TxSwap
	TxLimitOrder      = mem.TxLimitOrder
	TxAdd             = mem.TxAdd
	TxBond            = mem.TxBond
	TxYggdrasilFund   = mem.TxYggdrasilFund
	TxYggdrasilReturn = mem.TxYggdrasilReturn
	TxMigrate         = mem.TxMigrate
	TxRagnarok        = mem.TxRagnarok
	TxReserve         = mem.TxReserve
	TxOutbound        = mem.TxOutbound
	TxRefund          = mem.TxRefund
	TxUnBond          = mem.TxUnbond
	TxLeave           = mem.TxLeave
	TxWithdraw        = mem.TxWithdraw
	TxDDName          = mem.TxDDName
	TxLoanOpen        = mem.TxLoanOpen
	TxLoanRepayment   = mem.TxLoanRepayment
)
View Source
const (
	// CodeBadVersion error code for bad version
	CodeInternalError     uint32 = 99
	CodeTxFail            uint32 = 100
	CodeBadVersion        uint32 = 101
	CodeInvalidMessage    uint32 = 102
	CodeInvalidVault      uint32 = 104
	CodeInvalidMemo       uint32 = 105
	CodeInvalidPoolStatus uint32 = 107

	CodeSwapFail                 uint32 = 108
	CodeSwapFailNotEnoughFee     uint32 = 110
	CodeSwapFailInvalidAmount    uint32 = 113
	CodeSwapFailInvalidBalance   uint32 = 114
	CodeSwapFailNotEnoughBalance uint32 = 115

	CodeAddLiquidityFailValidation    uint32 = 120
	CodeFailGetLiquidityProvider      uint32 = 122
	CodeAddLiquidityMismatchAddr      uint32 = 123
	CodeLiquidityInvalidPoolAsset     uint32 = 124
	CodeAddLiquidityKARMAOverLimit    uint32 = 125
	CodeAddLiquidityKARMAMoreThanBond uint32 = 126

	CodeWithdrawFailValidation uint32 = 130
	CodeFailAddOutboundTx      uint32 = 131
	CodeFailSaveEvent          uint32 = 132
	CodeNoLiquidityUnitLeft    uint32 = 135
	CodeWithdrawWithin24Hours  uint32 = 136
	CodeWithdrawFail           uint32 = 137
	CodeEmptyChain             uint32 = 138
	CodeWithdrawLockup         uint32 = 139
)

DDChain error code start at 99

View Source
const (
	EventTypeActiveVault   = "ActiveVault"
	EventTypeInactiveVault = "InactiveVault"
)

const values used to emit events

View Source
const (
	MimirRecallFund      = `MimirRecallFund`
	MimirUpgradeContract = `MimirUpgradeContract`

	MimirRecallFundTemplate      = `MimirRecallFund%s`
	MimirUpgradeContractTemplate = `MimirUpgradeContract%s`
)
View Source
const BEP2KarmaOwnerAddress = "bnb1e4q8whcufp6d72w8nwmpuhxd96r4n0fstegyuy"

BEP2KarmaOwnerAddress this is the BEP2 KARMA owner address , during migration all upgraded BEP2 KARMA will be send to this owner address DDChain admin will burn those upgraded KARMA appropriately , It need to send to owner address is because only owner can burn it

View Source
const ILPMinimumBlocks = 17280 // 1 days

Variables

View Source
var (
	NewPool                        = types.NewPool
	NewNetwork                     = types.NewNetwork
	NewProtocolOwnedLiquidity      = types.NewProtocolOwnedLiquidity
	NewObservedTx                  = types.NewObservedTx
	NewTssVoter                    = types.NewTssVoter
	NewBanVoter                    = types.NewBanVoter
	NewErrataTxVoter               = types.NewErrataTxVoter
	NewObservedTxVoter             = types.NewObservedTxVoter
	NewMsgLoanOpen                 = types.NewMsgLoanOpen
	NewMsgLoanRepayment            = types.NewMsgLoanRepayment
	NewMsgMimir                    = types.NewMsgMimir
	NewMsgNodePauseChain           = types.NewMsgNodePauseChain
	NewMsgDeposit                  = types.NewMsgDeposit
	NewMsgTssPool                  = types.NewMsgTssPool
	NewMsgTssKeysignFail           = types.NewMsgTssKeysignFail
	NewMsgObservedTxIn             = types.NewMsgObservedTxIn
	NewMsgObservedTxOut            = types.NewMsgObservedTxOut
	NewMsgNoOp                     = types.NewMsgNoOp
	NewMsgConsolidate              = types.NewMsgConsolidate
	NewMsgDonate                   = types.NewMsgDonate
	NewMsgAddLiquidity             = types.NewMsgAddLiquidity
	NewMsgWithdrawLiquidity        = types.NewMsgWithdrawLiquidity
	NewMsgSwap                     = types.NewMsgSwap
	NewKeygen                      = types.NewKeygen
	NewKeygenBlock                 = types.NewKeygenBlock
	NewMsgSetNodeKeys              = types.NewMsgSetNodeKeys
	NewMsgManageDDName             = types.NewMsgManageDDName
	NewTxOut                       = types.NewTxOut
	NewEventRewards                = types.NewEventRewards
	NewEventPool                   = types.NewEventPool
	NewEventDonate                 = types.NewEventDonate
	NewEventSwap                   = types.NewEventSwap
	NewEventStreamingSwap          = types.NewEventStreamingSwap
	NewEventLimitOrder             = types.NewEventLimitOrder
	NewEventAddLiquidity           = types.NewEventAddLiquidity
	NewEventWithdraw               = types.NewEventWithdraw
	NewEventRefund                 = types.NewEventRefund
	NewEventBond                   = types.NewEventBond
	NewEventGas                    = types.NewEventGas
	NewEventScheduledOutbound      = types.NewEventScheduledOutbound
	NewEventSecurity               = types.NewEventSecurity
	NewEventSlash                  = types.NewEventSlash
	NewEventSlashPoint             = types.NewEventSlashPoint
	NewEventReserve                = types.NewEventReserve
	NewEventErrata                 = types.NewEventErrata
	NewEventFee                    = types.NewEventFee
	NewEventOutbound               = types.NewEventOutbound
	NewEventSetMimir               = types.NewEventSetMimir
	NewEventSetNodeMimir           = types.NewEventSetNodeMimir
	NewEventTssKeygenMetric        = types.NewEventTssKeygenMetric
	NewEventTssKeysignMetric       = types.NewEventTssKeysignMetric
	NewEventPoolBalanceChanged     = types.NewEventPoolBalanceChanged
	NewEventPendingLiquidity       = types.NewEventPendingLiquidity
	NewEventDDName                 = types.NewEventDDName
	NewEventMintBurn               = types.NewEventMintBurn
	NewEventVersion                = types.NewEventVersion
	NewEventLoanOpen               = types.NewEventLoanOpen
	NewEventLoanRepayment          = types.NewEventLoanRepayment
	NewPoolMod                     = types.NewPoolMod
	NewMsgRefundTx                 = types.NewMsgRefundTx
	NewMsgOutboundTx               = types.NewMsgOutboundTx
	NewMsgMigrate                  = types.NewMsgMigrate
	NewMsgRagnarok                 = types.NewMsgRagnarok
	NewQueryLiquidityProvider      = types.NewQueryLiquidityProvider
	NewQueryNodeAccount            = types.NewQueryNodeAccount
	NewQueryObservedTx             = types.NewQueryObservedTx
	NewQueryPool                   = types.NewQueryPool
	NewQuerySaver                  = types.NewQuerySaver
	NewQueryTxOutItem              = types.NewQueryTxOutItem
	NewQueryTxSigners              = types.NewQueryTxSigners
	NewQueryTxStages               = types.NewQueryTxStages
	NewQueryTxStatus               = types.NewQueryTxStatus
	ModuleCdc                      = types.ModuleCdc
	RegisterCodec                  = types.RegisterCodec
	RegisterInterfaces             = types.RegisterInterfaces
	NewBondProviders               = types.NewBondProviders
	NewBondProvider                = types.NewBondProvider
	NewNodeAccount                 = types.NewNodeAccount
	NewVault                       = types.NewVault
	NewReserveContributor          = types.NewReserveContributor
	NewMsgYggdrasil                = types.NewMsgYggdrasil
	NewMsgReserveContributor       = types.NewMsgReserveContributor
	NewMsgBond                     = types.NewMsgBond
	NewMsgUnBond                   = types.NewMsgUnBond
	NewMsgErrataTx                 = types.NewMsgErrataTx
	NewMsgBan                      = types.NewMsgBan
	NewMsgLeave                    = types.NewMsgLeave
	NewMsgSetVersion               = types.NewMsgSetVersion
	NewMsgSetIPAddress             = types.NewMsgSetIPAddress
	NewMsgNetworkFee               = types.NewMsgNetworkFee
	NewNetworkFee                  = types.NewNetworkFee
	NewDDName                      = types.NewDDName
	NewLoan                        = types.NewLoan
	NewStreamingSwap               = types.NewStreamingSwap
	GetPoolStatus                  = types.GetPoolStatus
	GetRandomVault                 = types.GetRandomVault
	GetRandomYggVault              = types.GetRandomYggVault
	GetRandomTx                    = types.GetRandomTx
	GetRandomObservedTx            = types.GetRandomObservedTx
	GetRandomTxOutItem             = types.GetRandomTxOutItem
	GetRandomObservedTxVoter       = types.GetRandomObservedTxVoter
	GetRandomValidatorNode         = types.GetRandomValidatorNode
	GetRandomVaultNode             = types.GetRandomVaultNode
	GetRandomDDAddress             = types.GetRandomDDAddress
	GetRandomKARMAAddress          = types.GetRandomKARMAAddress
	GetRandomBNBAddress            = types.GetRandomBNBAddress
	GetRandomTERRAAddress          = types.GetRandomTERRAAddress
	GetRandomGAIAAddress           = types.GetRandomGAIAAddress
	GetRandomBTCAddress            = types.GetRandomBTCAddress
	GetRandomLTCAddress            = types.GetRandomLTCAddress
	GetRandomTxHash                = types.GetRandomTxHash
	GetRandomBech32Addr            = types.GetRandomBech32Addr
	GetRandomBech32ConsensusPubKey = types.GetRandomBech32ConsensusPubKey
	GetRandomPubKey                = types.GetRandomPubKey
	GetRandomPubKeySet             = types.GetRandomPubKeySet
	GetCurrentVersion              = types.GetCurrentVersion
	SetupConfigForTest             = types.SetupConfigForTest
	HasSimpleMajority              = types.HasSimpleMajority
	HasSuperMajority               = types.HasSuperMajority
	HasMinority                    = types.HasMinority
	DefaultGenesis                 = types.DefaultGenesis
	NewSolvencyVoter               = types.NewSolvencyVoter
	NewMsgSolvency                 = types.NewMsgSolvency

	// Memo
	ParseMemo            = mem.ParseMemo
	ParseMemoWithDDNames = mem.ParseMemoWithDDNames
	FetchAddress         = mem.FetchAddress
	NewRefundMemo        = mem.NewRefundMemo
	NewOutboundMemo      = mem.NewOutboundMemo
	NewRagnarokMemo      = mem.NewRagnarokMemo
	NewYggdrasilReturn   = mem.NewYggdrasilReturn
	NewYggdrasilFund     = mem.NewYggdrasilFund
	NewMigrateMemo       = mem.NewMigrateMemo

	FetchDexAggregator         = aggregators.FetchDexAggregator
	FetchDexAggregatorGasLimit = aggregators.FetchDexAggregatorGasLimit
)
View Source
var (
	NewEventSwitch    = types.NewEventSwitch
	NewEventSwitchV87 = types.NewEventSwitchV87
	NewMsgSwitch      = types.NewMsgSwitch
)
View Source
var ADMINS = []string{
	"dd1f29rypfzupm926vyy7v8pu4r508lkg0gj652hh",
	"dd1spycspr76w6da7nd26f4qjngmsdr7eh5x4fvc9",
}

ADMINS hard coded admin address

View Source
var ErrNotEnoughToPayFee = errors.New("not enough asset to pay for fees")

ErrNotEnoughToPayFee will happen when the emitted asset is not enough to pay for fee

View Source
var IsValidDDNameV1 = regexp.MustCompile(`^[a-zA-Z0-9+_-]+$`).MatchString
View Source
var VALIDATORS = []string{}

TODO: remove on hard fork

View Source
var WhitelistedArbs = []string{
	"dd1egxvam70a86jafa8gcg3kqfmfax3s0m2g3m754",
	"bc1qq2z2f4gs4nd7t0a9jjp90y9l9zzjtegu4nczha",
	"qz7262r7uufxk89ematxrf6yquk7zfwrjqm97vskzw",
	"0x04c5998ded94f89263370444ce64a99b7dbc9f46",
	"bnb1pa6hpjs7qv0vkd5ks5tqa2xtt2gk5n08yw7v7f",
	"ltc1qaa064vvv4d6stgywnf777j6dl8rd3tt93fp6jx",
}

Functions

func BanAnteHandler

func BanAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgBan) error

BanAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func DepositAnteHandler

func DepositAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgDeposit) error

DepositAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func DollarInKarma added in v0.2.3

func DollarInKarma(ctx cosmos.Context, mgr Manager) cosmos.Uint

gets the amount of USD that is equal to 1 KARMA (in other words, 1 KARMA's price in USD)

func DollarInKarmaV1 added in v0.2.3

func DollarInKarmaV1(ctx cosmos.Context, mgr Manager) cosmos.Uint

func DollarInKarmaV102 added in v0.2.3

func DollarInKarmaV102(ctx cosmos.Context, mgr Manager) cosmos.Uint

func ErrInternal

func ErrInternal(err error, msg string) error

ErrInternal return an error of errInternal with additional message

func ErrataTxAnteHandler

func ErrataTxAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgErrataTx) error

ErrataTxAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func GetKeeper

func GetKeeper(version semver.Version, cdc codec.BinaryCodec, coinKeeper bankkeeper.Keeper, accountKeeper authkeeper.AccountKeeper, storeKey cosmos.StoreKey) (keeper.Keeper, error)

GetKeeper return Keeper

func IPAddressAnteHandler

func IPAddressAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgSetIPAddress) error

IPAddressAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func InitGenesis

func InitGenesis(ctx cosmos.Context, keeper keeper.Keeper, data GenesisState) []abci.ValidatorUpdate

InitGenesis read the data in GenesisState and apply it to data store

func MimirAnteHandler

func MimirAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgMimir) error

MimirAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func MsgSendHandleV1

func MsgSendHandleV1(ctx cosmos.Context, mgr Manager, msg *MsgSend) (*cosmos.Result, error)

func MsgSendHandleV108

func MsgSendHandleV108(ctx cosmos.Context, mgr Manager, msg *MsgSend) (*cosmos.Result, error)

func MsgSendHandleV112

func MsgSendHandleV112(ctx cosmos.Context, mgr Manager, msg *MsgSend) (*cosmos.Result, error)

func MsgSendHandleV115

func MsgSendHandleV115(ctx cosmos.Context, mgr Manager, msg *MsgSend) (*cosmos.Result, error)

func MsgSendHandleV116

func MsgSendHandleV116(ctx cosmos.Context, mgr Manager, msg *MsgSend) (*cosmos.Result, error)

func MsgSendLogger

func MsgSendLogger(ctx cosmos.Context, msg *MsgSend)

func MsgSendValidateV1

func MsgSendValidateV1(ctx cosmos.Context, mgr Manager, msg *MsgSend) error

func MsgSendValidateV87

func MsgSendValidateV87(ctx cosmos.Context, mgr Manager, msg *MsgSend) error

func MsgTssPoolHandleV117

func MsgTssPoolHandleV117(ctx cosmos.Context, mgr Manager, msg *MsgTssPool) (*cosmos.Result, error)

func MsgTssPoolHandleV73

func MsgTssPoolHandleV73(ctx cosmos.Context, mgr Manager, msg *MsgTssPool) (*cosmos.Result, error)

func MsgTssPoolHandleV92

func MsgTssPoolHandleV92(ctx cosmos.Context, mgr Manager, msg *MsgTssPool) (*cosmos.Result, error)

func MsgTssPoolHandleV93

func MsgTssPoolHandleV93(ctx cosmos.Context, mgr Manager, msg *MsgTssPool) (*cosmos.Result, error)

func MsgTssPoolLogger

func MsgTssPoolLogger(ctx cosmos.Context, msg *MsgTssPool)

func MsgTssPoolValidateV114

func MsgTssPoolValidateV114(ctx cosmos.Context, mgr Manager, msg *MsgTssPool) error

func MsgTssPoolValidateV71

func MsgTssPoolValidateV71(ctx cosmos.Context, mgr Manager, msg *MsgTssPool) error

func NetworkFeeAnteHandler

func NetworkFeeAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgNetworkFee) error

NetworkFeeAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func NewExternalHandler

func NewExternalHandler(mgr Manager) cosmos.Handler

NewExternalHandler returns a handler for "ddchain" type messages.

func NewInternalHandler

func NewInternalHandler(mgr Manager) cosmos.Handler

NewInternalHandler returns a handler for "ddchain" internal type messages.

func NewQuerier

func NewQuerier(mgr *Mgrs, kbs cosmos.KeybaseStore) cosmos.Querier

NewQuerier is the module level router for state queries

func NodePauseChainAnteHandler

func NodePauseChainAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgNodePauseChain) error

NodePauseChainAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func ObservedTxInAnteHandler

func ObservedTxInAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgObservedTxIn) error

ObservedTxInAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func ObservedTxOutAnteHandler

func ObservedTxOutAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgObservedTxOut) error

ObservedTxOutAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func OpenConnection added in v0.2.6

func OpenConnection() *sql.DB

func SendAnteHandler

func SendAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgSend) error

SendAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func SetNodeKeysAnteHandler

func SetNodeKeysAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgSetNodeKeys) error

SetNodeKeysAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func SolvencyAnteHandler

func SolvencyAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgSolvency) error

SolvencyAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func TssAnteHandler

func TssAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgTssPool) error

TssAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func TssKeysignFailAnteHandler

func TssKeysignFailAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgTssKeysignFail) error

TssKeysignAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

func ValidateGenesis

func ValidateGenesis(data GenesisState) error

ValidateGenesis validate genesis is valid or not

func VersionAnteHandler

func VersionAnteHandler(ctx cosmos.Context, v semver.Version, k keeper.Keeper, msg MsgSetVersion) error

VersionAnteHandler called by the ante handler to gate mempool entry and also during deliver. Store changes will persist if this function succeeds, regardless of the success of the transaction.

Types

type AddLiquidityHandler

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

AddLiquidityHandler is to handle add liquidity

func NewAddLiquidityHandler

func NewAddLiquidityHandler(mgr Manager) AddLiquidityHandler

NewAddLiquidityHandler create a new instance of AddLiquidityHandler

func (AddLiquidityHandler) Run

Run execute the handler

type AddLiquidityMemo

type AddLiquidityMemo = mem.AddLiquidityMemo

type AffiliateFeeCollector

type AffiliateFeeCollector = types.AffiliateFeeCollector

type AnteDecorator

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

func NewAnteDecorator

func NewAnteDecorator(keeper keeper.Keeper) AnteDecorator

func (AnteDecorator) AnteHandle

func (ad AnteDecorator) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, next sdk.AnteHandler) (newCtx sdk.Context, err error)

type AppModule

type AppModule struct {
	AppModuleBasic
	// contains filtered or unexported fields
}

AppModule implements an application module for the ddchain module.

func NewAppModule

func NewAppModule(k keeper.Keeper, cdc codec.BinaryCodec, coinKeeper bankkeeper.Keeper, accountKeeper authkeeper.AccountKeeper, storeKey cosmos.StoreKey, telemetryEnabled bool) AppModule

NewAppModule creates a new AppModule Object

func (AppModule) BeginBlock

func (am AppModule) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock)

BeginBlock called when a block get proposed

func (AppModule) ConsensusVersion

func (AppModule) ConsensusVersion() uint64

func (AppModule) EndBlock

func (am AppModule) EndBlock(ctx sdk.Context, req abci.RequestEndBlock) []abci.ValidatorUpdate

EndBlock called when a block get committed

func (AppModule) ExportGenesis

func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.RawMessage

ExportGenesis export genesis

func (AppModule) InitGenesis

func (am AppModule) InitGenesis(ctx sdk.Context, cdc codec.JSONCodec, data json.RawMessage) []abci.ValidatorUpdate

InitGenesis initialise genesis

func (AppModule) LegacyQuerierHandler

func (am AppModule) LegacyQuerierHandler(legacyQuerierCdc *codec.LegacyAmino) sdk.Querier

LegacyQuerierHandler returns the capability module's Querier.

func (AppModule) Name

func (AppModule) Name() string

func (AppModule) NewHandler

func (am AppModule) NewHandler() sdk.Handler

func (AppModule) NewQuerierHandler

func (am AppModule) NewQuerierHandler() sdk.Querier

func (AppModule) QuerierRoute

func (am AppModule) QuerierRoute() string

func (AppModule) RegisterInvariants

func (am AppModule) RegisterInvariants(ir sdk.InvariantRegistry)

func (AppModule) RegisterServices

func (am AppModule) RegisterServices(cfg module.Configurator)

RegisterServices registers module services.

func (AppModule) Route

func (am AppModule) Route() cosmos.Route

type AppModuleBasic

type AppModuleBasic struct{}

AppModuleBasic app module Basics object

func (AppModuleBasic) DefaultGenesis

func (AppModuleBasic) DefaultGenesis(cdc codec.JSONCodec) json.RawMessage

DefaultGenesis returns default genesis state as raw bytes for the module.

func (AppModuleBasic) GetQueryCmd

func (AppModuleBasic) GetQueryCmd() *cobra.Command

GetQueryCmd get the root query command of this module

func (AppModuleBasic) GetTxCmd

func (AppModuleBasic) GetTxCmd() *cobra.Command

GetTxCmd get the root tx command of this module

func (AppModuleBasic) Name

func (AppModuleBasic) Name() string

Name return the module's name

func (AppModuleBasic) RegisterGRPCGatewayRoutes

func (AppModuleBasic) RegisterGRPCGatewayRoutes(clientCtx client.Context, mux *runtime.ServeMux)

RegisterGRPCGatewayRoutes registers the gRPC Gateway routes for the mint module. ddnode current doesn't have grpc enpoint yet

func (AppModuleBasic) RegisterInterfaces

func (a AppModuleBasic) RegisterInterfaces(reg cdctypes.InterfaceRegistry)

RegisterInterfaces registers the module's interface types

func (AppModuleBasic) RegisterLegacyAminoCodec

func (AppModuleBasic) RegisterLegacyAminoCodec(cdc *codec.LegacyAmino)

RegisterLegacyAminoCodec registers the module's types for the given codec.

func (AppModuleBasic) RegisterRESTRoutes

func (AppModuleBasic) RegisterRESTRoutes(ctx client.Context, rtr *mux.Router)

RegisterRESTRoutes register rest routes

func (AppModuleBasic) ValidateGenesis

func (AppModuleBasic) ValidateGenesis(cdc codec.JSONCodec, config client.TxEncodingConfig, bz json.RawMessage) error

ValidateGenesis check of the Genesis

type BanHandler

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

BanHandler is to handle Ban message

func NewBanHandler

func NewBanHandler(mgr Manager) BanHandler

NewBanHandler create new instance of BanHandler

func (BanHandler) Run

func (h BanHandler) Run(ctx cosmos.Context, m cosmos.Msg) (*cosmos.Result, error)

Run is the main entry point to execute Ban logic

type BanVoter

type BanVoter = types.BanVoter

type BaseHandler

type BaseHandler[M cosmos.Msg] struct {
	TypedHandler[M]
	// contains filtered or unexported fields
}

func NewSendHandler

func NewSendHandler(mgr Manager) BaseHandler[*MsgSend]

NewSendHandler create a new instance of SendHandler

func NewTssHandler

func NewTssHandler(mgr Manager) BaseHandler[*MsgTssPool]

NewTssHandler create a new handler to process MsgTssPool

func (BaseHandler[M]) Run

func (h BaseHandler[M]) Run(ctx cosmos.Context, m cosmos.Msg) (*cosmos.Result, error)

type Blame

type Blame = types.Blame

type BondHandler

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

BondHandler a handler to process bond

func NewBondHandler

func NewBondHandler(mgr Manager) BondHandler

NewBondHandler create new BondHandler

func (BondHandler) Run

func (h BondHandler) Run(ctx cosmos.Context, m cosmos.Msg) (*cosmos.Result, error)

Run execute the handler

type BondMemo

type BondMemo = mem.BondMemo

type BondProvider

type BondProvider = types.BondProvider

type BondProviders

type BondProviders = types.BondProviders

type ChainContract

type ChainContract = types.ChainContract

type CommonOutboundTxHandler

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

CommonOutboundTxHandler is the place where those common logic can be shared between multiple different kind of outbound tx handler at the moment, handler_refund, and handler_outbound_tx are largely the same , only some small difference

func NewCommonOutboundTxHandler

func NewCommonOutboundTxHandler(mgr Manager) CommonOutboundTxHandler

NewCommonOutboundTxHandler create a new instance of the CommonOutboundTxHandler

type ConsolidateHandler

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

ConsolidateHandler handles transactions the network sends to itself, to consolidate UTXOs

func NewConsolidateHandler

func NewConsolidateHandler(mgr Manager) ConsolidateHandler

NewConsolidateHandler create a new instance of the ConsolidateHandler

func (ConsolidateHandler) Run

type ConsolidateMemo

type ConsolidateMemo = mem.ConsolidateMemo

type DDName

type DDName = types.DDName

type DDNameAlias

type DDNameAlias = types.DDNameAlias

type DepositHandler

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

DepositHandler is to process native messages on DDChain

func NewDepositHandler

func NewDepositHandler(mgr Manager) DepositHandler

NewDepositHandler create a new instance of DepositHandler

func (DepositHandler) Run

Run is the main entry of DepositHandler

type DonateHandler

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

DonateHandler is to handle donate message

func NewDonateHandler

func NewDonateHandler(mgr Manager) DonateHandler

NewDonateHandler create a new instance of DonateHandler

func (DonateHandler) Run

Run is the main entry point to execute donate logic

type DonateMemo

type DonateMemo = mem.DonateMemo

type DroppedSwapOutTx

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

type EmitEventItem

type EmitEventItem interface {
	Events() (cosmos.Events, error)
}

EmitEventItem define the method all event need to implement

type ErrataTxHandler

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

ErrataTxHandler is to handle ErrataTx message

func NewErrataTxHandler

func NewErrataTxHandler(mgr Manager) ErrataTxHandler

NewErrataTxHandler create new instance of ErrataTxHandler

func (ErrataTxHandler) Run

Run is the main entry point to execute ErrataTx logic

type ErrataTxVoter

type ErrataTxVoter = types.ErrataTxVoter

type EventAddLiquidity

type EventAddLiquidity = types.EventAddLiquidity

type EventBond

type EventBond = types.EventBond

type EventDonate

type EventDonate = types.EventDonate

type EventErrata

type EventErrata = types.EventErrata

type EventFee

type EventFee = types.EventFee

type EventGas

type EventGas = types.EventGas

type EventLoanOpen

type EventLoanOpen = types.EventLoanOpen

type EventLoanRepayment

type EventLoanRepayment = types.EventLoanRepayment

type EventManager

type EventManager interface {
	EmitEvent(ctx cosmos.Context, evt EmitEventItem) error
	EmitGasEvent(ctx cosmos.Context, gasEvent *EventGas) error
	EmitSwapEvent(ctx cosmos.Context, swap *EventSwap) error
	EmitFeeEvent(ctx cosmos.Context, feeEvent *EventFee) error
}

EventManager define methods need to be support to manage events

func GetEventManager

func GetEventManager(version semver.Version) (EventManager, error)

GetEventManager will return an implementation of EventManager

type EventMgrVCUR

type EventMgrVCUR struct{}

EventMgrVCUR implement EventManager interface

func (*EventMgrVCUR) EmitEvent

func (m *EventMgrVCUR) EmitEvent(ctx cosmos.Context, evt EmitEventItem) error

EmitEvent to block

func (*EventMgrVCUR) EmitFeeEvent

func (m *EventMgrVCUR) EmitFeeEvent(ctx cosmos.Context, feeEvent *EventFee) error

EmitFeeEvent emit a fee event through event manager

func (*EventMgrVCUR) EmitGasEvent

func (m *EventMgrVCUR) EmitGasEvent(ctx cosmos.Context, gasEvent *EventGas) error

EmitGasEvent emit gas events

func (*EventMgrVCUR) EmitSwapEvent

func (m *EventMgrVCUR) EmitSwapEvent(ctx cosmos.Context, swap *EventSwap) error

EmitSwapEvent emit swap event to block

type EventOutbound

type EventOutbound = types.EventOutbound

type EventPool

type EventPool = types.EventPool

type EventRefund

type EventRefund = types.EventRefund

type EventReserve

type EventReserve = types.EventReserve

type EventRewards

type EventRewards = types.EventRewards

type EventSlash

type EventSlash = types.EventSlash

type EventSwap

type EventSwap = types.EventSwap

type EventWithdraw

type EventWithdraw = types.EventWithdraw

type GasManager

type GasManager interface {
	BeginBlock(mgr Manager)
	EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)
	AddGasAsset(gas common.Gas, increaseTxCount bool)
	ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)
	GetGas() common.Gas
	GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint
	GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)
	GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint
	GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)
	SubGas(gas common.Gas)
	CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint
}

GasManager define all the methods required to manage gas

func GetGasManager

func GetGasManager(version semver.Version, keeper keeper.Keeper) (GasManager, error)

GetGasManager return GasManager

type GasMgrV102

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

GasMgrV102 implement GasManager interface which will store the gas related events happened in ddchain to memory emit GasEvent per block if there are any

func (*GasMgrV102) AddGasAsset

func (gm *GasMgrV102) AddGasAsset(gas common.Gas, increaseTxCount bool)

AddGasAsset to the EventGas

func (*GasMgrV102) BeginBlock

func (gm *GasMgrV102) BeginBlock(mgr Manager)

BeginBlock need to be called when a new block get created , update the internal EventGas to new one

func (*GasMgrV102) CalcOutboundFeeMultiplier

func (gm *GasMgrV102) CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint

func (*GasMgrV102) EndBlock

func (gm *GasMgrV102) EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)

EndBlock emit the events

func (*GasMgrV102) GetFee

func (gm *GasMgrV102) GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint

GetFee retrieve the network fee information from kv store, and calculate the dynamic fee customer should pay the return value is the amount of fee in KARMA

func (*GasMgrV102) GetGas

func (gm *GasMgrV102) GetGas() common.Gas

GetGas return gas

func (*GasMgrV102) GetGasRate

func (gm *GasMgrV102) GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint

GetGasRate return the gas rate

func (*GasMgrV102) GetMaxGas

func (gm *GasMgrV102) GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)

GetMaxGas will calculate the maximum gas fee a tx can use

func (*GasMgrV102) GetNetworkFee

func (gm *GasMgrV102) GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)

func (*GasMgrV102) ProcessGas

func (gm *GasMgrV102) ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)

ProcessGas to subsidise the pool with KARMA for the gas they have spent

func (*GasMgrV102) SubGas

func (gm *GasMgrV102) SubGas(gas common.Gas)

SubGas will subtract the gas from the gas manager

type GasMgrV108

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

GasMgrV108 implement GasManager interface which will store the gas related events happened in ddchain to memory emit GasEvent per block if there are any

func (*GasMgrV108) AddGasAsset

func (gm *GasMgrV108) AddGasAsset(gas common.Gas, increaseTxCount bool)

AddGasAsset to the EventGas

func (*GasMgrV108) BeginBlock

func (gm *GasMgrV108) BeginBlock(mgr Manager)

BeginBlock need to be called when a new block get created , update the internal EventGas to new one

func (*GasMgrV108) CalcOutboundFeeMultiplier

func (gm *GasMgrV108) CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint

CalcOutboundFeeMultiplier returns the current outbound fee multiplier based on current and target outbound fee surplus

func (*GasMgrV108) EndBlock

func (gm *GasMgrV108) EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)

EndBlock emit the events

func (*GasMgrV108) GetFee

func (gm *GasMgrV108) GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint

GetFee retrieve the network fee information from kv store, and calculate the dynamic fee customer should pay the return value is the amount of fee in KARMA

func (*GasMgrV108) GetGas

func (gm *GasMgrV108) GetGas() common.Gas

GetGas return gas

func (*GasMgrV108) GetGasRate

func (gm *GasMgrV108) GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint

GetGasRate return the gas rate

func (*GasMgrV108) GetMaxGas

func (gm *GasMgrV108) GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)

GetMaxGas will calculate the maximum gas fee a tx can use

func (*GasMgrV108) GetNetworkFee

func (gm *GasMgrV108) GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)

func (*GasMgrV108) ProcessGas

func (gm *GasMgrV108) ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)

ProcessGas to subsidise the pool with KARMA for the gas they have spent

func (*GasMgrV108) SubGas

func (gm *GasMgrV108) SubGas(gas common.Gas)

SubGas will subtract the gas from the gas manager

type GasMgrV109

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

GasMgrV109 implement GasManager interface which will store the gas related events happened in ddchain to memory emit GasEvent per block if there are any

func (*GasMgrV109) AddGasAsset

func (gm *GasMgrV109) AddGasAsset(gas common.Gas, increaseTxCount bool)

AddGasAsset to the EventGas

func (*GasMgrV109) BeginBlock

func (gm *GasMgrV109) BeginBlock(mgr Manager)

BeginBlock need to be called when a new block get created , update the internal EventGas to new one

func (*GasMgrV109) CalcOutboundFeeMultiplier

func (gm *GasMgrV109) CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint

CalcOutboundFeeMultiplier returns the current outbound fee multiplier based on current and target outbound fee surplus

func (*GasMgrV109) EndBlock

func (gm *GasMgrV109) EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)

EndBlock emit the events

func (*GasMgrV109) GetFee

func (gm *GasMgrV109) GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint

GetFee retrieve the network fee information from kv store, and calculate the dynamic fee customer should pay the return value is the amount of fee in asset

func (*GasMgrV109) GetGas

func (gm *GasMgrV109) GetGas() common.Gas

GetGas return gas

func (*GasMgrV109) GetGasRate

func (gm *GasMgrV109) GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint

GetGasRate return the gas rate

func (*GasMgrV109) GetMaxGas

func (gm *GasMgrV109) GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)

GetMaxGas will calculate the maximum gas fee a tx can use

func (*GasMgrV109) GetNetworkFee

func (gm *GasMgrV109) GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)

func (*GasMgrV109) ProcessGas

func (gm *GasMgrV109) ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)

ProcessGas to subsidise the pool with KARMA for the gas they have spent

func (*GasMgrV109) SubGas

func (gm *GasMgrV109) SubGas(gas common.Gas)

SubGas will subtract the gas from the gas manager

type GasMgrV112

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

GasMgrV112 implement GasManager interface which will store the gas related events happened in ddchain to memory emit GasEvent per block if there are any

func (*GasMgrV112) AddGasAsset

func (gm *GasMgrV112) AddGasAsset(gas common.Gas, increaseTxCount bool)

AddGasAsset to the EventGas

func (*GasMgrV112) BeginBlock

func (gm *GasMgrV112) BeginBlock(mgr Manager)

BeginBlock need to be called when a new block get created , update the internal EventGas to new one

func (*GasMgrV112) CalcOutboundFeeMultiplier

func (gm *GasMgrV112) CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint

CalcOutboundFeeMultiplier returns the current outbound fee multiplier based on current and target outbound fee surplus

func (*GasMgrV112) EndBlock

func (gm *GasMgrV112) EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)

EndBlock emit the events

func (*GasMgrV112) GetFee

func (gm *GasMgrV112) GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint

GetFee retrieve the network fee information from kv store, and calculate the dynamic fee customer should pay the return value is the amount of fee in asset

func (*GasMgrV112) GetGas

func (gm *GasMgrV112) GetGas() common.Gas

GetGas return gas

func (*GasMgrV112) GetGasRate

func (gm *GasMgrV112) GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint

GetGasRate return the gas rate

func (*GasMgrV112) GetMaxGas

func (gm *GasMgrV112) GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)

GetMaxGas will calculate the maximum gas fee a tx can use

func (*GasMgrV112) GetNetworkFee

func (gm *GasMgrV112) GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)

func (*GasMgrV112) ProcessGas

func (gm *GasMgrV112) ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)

ProcessGas to subsidise the pool with KARMA for the gas they have spent

func (*GasMgrV112) SubGas

func (gm *GasMgrV112) SubGas(gas common.Gas)

SubGas will subtract the gas from the gas manager

type GasMgrV81

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

GasMgrV81 implement GasManager interface which will store the gas related events happened in ddchain to memory emit GasEvent per block if there are any

func (*GasMgrV81) AddGasAsset

func (gm *GasMgrV81) AddGasAsset(gas common.Gas, increaseTxCount bool)

AddGasAsset to the EventGas

func (*GasMgrV81) BeginBlock

func (gm *GasMgrV81) BeginBlock(mgr Manager)

BeginBlock need to be called when a new block get created , update the internal EventGas to new one

func (*GasMgrV81) CalcOutboundFeeMultiplier

func (gm *GasMgrV81) CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint

func (*GasMgrV81) EndBlock

func (gm *GasMgrV81) EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)

EndBlock emit the events

func (*GasMgrV81) GetFee

func (gm *GasMgrV81) GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint

GetFee retrieve the network fee information from kv store, and calculate the dynamic fee customer should pay the return value is the amount of fee in KARMA

func (*GasMgrV81) GetGas

func (gm *GasMgrV81) GetGas() common.Gas

GetGas return gas

func (*GasMgrV81) GetGasRate

func (gm *GasMgrV81) GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint

GetGasRate return the gas rate

func (*GasMgrV81) GetMaxGas

func (gm *GasMgrV81) GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)

GetMaxGas will calculate the maximum gas fee a tx can use

func (*GasMgrV81) GetNetworkFee

func (gm *GasMgrV81) GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)

func (*GasMgrV81) ProcessGas

func (gm *GasMgrV81) ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)

ProcessGas to subsidise the pool with KARMA for the gas they have spent

func (*GasMgrV81) SubGas

func (gm *GasMgrV81) SubGas(gas common.Gas)

SubGas will subtract the gas from the gas manager

type GasMgrV89

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

GasMgrV89 implement GasManager interface which will store the gas related events happened in ddchain to memory emit GasEvent per block if there are any

func (*GasMgrV89) AddGasAsset

func (gm *GasMgrV89) AddGasAsset(gas common.Gas, increaseTxCount bool)

AddGasAsset to the EventGas

func (*GasMgrV89) BeginBlock

func (gm *GasMgrV89) BeginBlock(mgr Manager)

BeginBlock need to be called when a new block get created , update the internal EventGas to new one

func (*GasMgrV89) CalcOutboundFeeMultiplier

func (gm *GasMgrV89) CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint

func (*GasMgrV89) EndBlock

func (gm *GasMgrV89) EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)

EndBlock emit the events

func (*GasMgrV89) GetFee

func (gm *GasMgrV89) GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint

GetFee retrieve the network fee information from kv store, and calculate the dynamic fee customer should pay the return value is the amount of fee in KARMA

func (*GasMgrV89) GetGas

func (gm *GasMgrV89) GetGas() common.Gas

GetGas return gas

func (*GasMgrV89) GetGasRate

func (gm *GasMgrV89) GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint

GetGasRate return the gas rate

func (*GasMgrV89) GetMaxGas

func (gm *GasMgrV89) GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)

GetMaxGas will calculate the maximum gas fee a tx can use

func (*GasMgrV89) GetNetworkFee

func (gm *GasMgrV89) GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)

func (*GasMgrV89) ProcessGas

func (gm *GasMgrV89) ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)

ProcessGas to subsidise the pool with KARMA for the gas they have spent

func (*GasMgrV89) SubGas

func (gm *GasMgrV89) SubGas(gas common.Gas)

SubGas will subtract the gas from the gas manager

type GasMgrV94

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

GasMgrV94 implement GasManager interface which will store the gas related events happened in ddchain to memory emit GasEvent per block if there are any

func (*GasMgrV94) AddGasAsset

func (gm *GasMgrV94) AddGasAsset(gas common.Gas, increaseTxCount bool)

AddGasAsset to the EventGas

func (*GasMgrV94) BeginBlock

func (gm *GasMgrV94) BeginBlock(mgr Manager)

BeginBlock need to be called when a new block get created , update the internal EventGas to new one

func (*GasMgrV94) CalcOutboundFeeMultiplier

func (gm *GasMgrV94) CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint

func (*GasMgrV94) EndBlock

func (gm *GasMgrV94) EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)

EndBlock emit the events

func (*GasMgrV94) GetFee

func (gm *GasMgrV94) GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint

GetFee retrieve the network fee information from kv store, and calculate the dynamic fee customer should pay the return value is the amount of fee in KARMA

func (*GasMgrV94) GetGas

func (gm *GasMgrV94) GetGas() common.Gas

GetGas return gas

func (*GasMgrV94) GetGasRate

func (gm *GasMgrV94) GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint

GetGasRate return the gas rate

func (*GasMgrV94) GetMaxGas

func (gm *GasMgrV94) GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)

GetMaxGas will calculate the maximum gas fee a tx can use

func (*GasMgrV94) GetNetworkFee

func (gm *GasMgrV94) GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)

func (*GasMgrV94) ProcessGas

func (gm *GasMgrV94) ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)

ProcessGas to subsidise the pool with KARMA for the gas they have spent

func (*GasMgrV94) SubGas

func (gm *GasMgrV94) SubGas(gas common.Gas)

SubGas will subtract the gas from the gas manager

type GasMgrV99

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

GasMgrV99 implement GasManager interface which will store the gas related events happened in ddchain to memory emit GasEvent per block if there are any

func (*GasMgrV99) AddGasAsset

func (gm *GasMgrV99) AddGasAsset(gas common.Gas, increaseTxCount bool)

AddGasAsset to the EventGas

func (*GasMgrV99) BeginBlock

func (gm *GasMgrV99) BeginBlock(mgr Manager)

BeginBlock need to be called when a new block get created , update the internal EventGas to new one

func (*GasMgrV99) CalcOutboundFeeMultiplier

func (gm *GasMgrV99) CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint

func (*GasMgrV99) EndBlock

func (gm *GasMgrV99) EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)

EndBlock emit the events

func (*GasMgrV99) GetFee

func (gm *GasMgrV99) GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint

GetFee retrieve the network fee information from kv store, and calculate the dynamic fee customer should pay the return value is the amount of fee in KARMA

func (*GasMgrV99) GetGas

func (gm *GasMgrV99) GetGas() common.Gas

GetGas return gas

func (*GasMgrV99) GetGasRate

func (gm *GasMgrV99) GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint

GetGasRate return the gas rate

func (*GasMgrV99) GetMaxGas

func (gm *GasMgrV99) GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)

GetMaxGas will calculate the maximum gas fee a tx can use

func (*GasMgrV99) GetNetworkFee

func (gm *GasMgrV99) GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)

func (*GasMgrV99) ProcessGas

func (gm *GasMgrV99) ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)

ProcessGas to subsidise the pool with KARMA for the gas they have spent

func (*GasMgrV99) SubGas

func (gm *GasMgrV99) SubGas(gas common.Gas)

SubGas will subtract the gas from the gas manager

type GasMgrVCUR

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

GasMgrVCUR implement GasManager interface which will store the gas related events happened in ddchain to memory emit GasEvent per block if there are any

func (*GasMgrVCUR) AddGasAsset

func (gm *GasMgrVCUR) AddGasAsset(gas common.Gas, increaseTxCount bool)

AddGasAsset to the EventGas

func (*GasMgrVCUR) BeginBlock

func (gm *GasMgrVCUR) BeginBlock(mgr Manager)

BeginBlock need to be called when a new block get created , update the internal EventGas to new one

func (*GasMgrVCUR) CalcOutboundFeeMultiplier

func (gm *GasMgrVCUR) CalcOutboundFeeMultiplier(ctx cosmos.Context, targetSurplusKarma, gasSpentKarma, gasWithheldKarma, maxMultiplier, minMultiplier cosmos.Uint) cosmos.Uint

CalcOutboundFeeMultiplier returns the current outbound fee multiplier based on current and target outbound fee surplus

func (*GasMgrVCUR) EndBlock

func (gm *GasMgrVCUR) EndBlock(ctx cosmos.Context, keeper keeper.Keeper, eventManager EventManager)

EndBlock emit the events

func (*GasMgrVCUR) GetFee

func (gm *GasMgrVCUR) GetFee(ctx cosmos.Context, chain common.Chain, asset common.Asset) cosmos.Uint

GetFee retrieve the network fee information from kv store, and calculate the dynamic fee customer should pay the return value is the amount of fee in asset

func (*GasMgrVCUR) GetGas

func (gm *GasMgrVCUR) GetGas() common.Gas

GetGas return gas

func (*GasMgrVCUR) GetGasRate

func (gm *GasMgrVCUR) GetGasRate(ctx cosmos.Context, chain common.Chain) cosmos.Uint

GetGasRate return the gas rate

func (*GasMgrVCUR) GetMaxGas

func (gm *GasMgrVCUR) GetMaxGas(ctx cosmos.Context, chain common.Chain) (common.Coin, error)

GetMaxGas will calculate the maximum gas fee a tx can use

func (*GasMgrVCUR) GetNetworkFee

func (gm *GasMgrVCUR) GetNetworkFee(ctx cosmos.Context, chain common.Chain) (types.NetworkFee, error)

func (*GasMgrVCUR) ProcessGas

func (gm *GasMgrVCUR) ProcessGas(ctx cosmos.Context, keeper keeper.Keeper)

ProcessGas to subsidise the pool with KARMA for the gas they have spent

func (*GasMgrVCUR) SubGas

func (gm *GasMgrVCUR) SubGas(gas common.Gas)

SubGas will subtract the gas from the gas manager

type GasPool

type GasPool = types.GasPool

type IPAddressHandler

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

IPAddressHandler is to handle ip address message

func NewIPAddressHandler

func NewIPAddressHandler(mgr Manager) IPAddressHandler

NewIPAddressHandler create new instance of IPAddressHandler

func (IPAddressHandler) Run

Run it the main entry point to execute ip address logic

type InfiniteGasDecorator

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

InfiniteGasDecorator uses an infinite gas meter to prevent out-of-gas panics and allow non-versioned changes to be made without breaking consensus, as long as the resulting state is consistent.

func NewInfiniteGasDecorator

func NewInfiniteGasDecorator(keeper keeper.Keeper) InfiniteGasDecorator

func (InfiniteGasDecorator) AnteHandle

func (d InfiniteGasDecorator) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, next sdk.AnteHandler) (newCtx sdk.Context, err error)

type Jail

type Jail = types.Jail

type Keygen

type Keygen = types.Keygen

type KeygenBlock

type KeygenBlock = types.KeygenBlock

type LadderDispatch

type LadderDispatch[F interface{}] struct {
	// contains filtered or unexported fields
}

func NewHandlers

func NewHandlers[M cosmos.Msg]() LadderDispatch[func(cosmos.Context, Manager, M) (*cosmos.Result, error)]

func NewValidators

func NewValidators[M cosmos.Msg]() LadderDispatch[func(cosmos.Context, Manager, M) error]

Sadly Go's type system is still primitive and does not allow for generics in type aliases, so the following cleaner convenience type does not work:

type Validators[M MsgType] = LadderDispatch[func(cosmos.Context, Manager, M) error]

See https://github.com/golang/go/issues/46477 for ongoing discussion.

Instead we use these thin convenience functions to do the same type wrapping:

func (LadderDispatch[F]) Get

func (l LadderDispatch[F]) Get(targetVersion semver.Version) F

Return the most recent handler that supports the target version.

func (LadderDispatch[F]) Register

func (l LadderDispatch[F]) Register(version string, handler F) LadderDispatch[F]

Register a handler for a specific version. Enforces descending order of registered versions.

type LeaveHandler

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

LeaveHandler a handler to process leave request if an operator of DDChain node would like to leave and get their bond back , they have to send a Leave request through Binance Chain

func NewLeaveHandler

func NewLeaveHandler(mgr Manager) LeaveHandler

NewLeaveHandler create a new LeaveHandler

func (LeaveHandler) Run

func (h LeaveHandler) Run(ctx cosmos.Context, m cosmos.Msg) (*cosmos.Result, error)

Run execute the handler

type LeaveMemo

type LeaveMemo = mem.LeaveMemo

type LiquidityProvider

type LiquidityProvider = types.LiquidityProvider

type LiquidityProviders

type LiquidityProviders = types.LiquidityProviders

type Loan

type Loan = types.Loan

type LoanOpenHandler

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

LoanOpenHandler a handler to process bond

func NewLoanOpenHandler

func NewLoanOpenHandler(mgr Manager) LoanOpenHandler

NewLoanOpenHandler create new LoanOpenHandler

func (LoanOpenHandler) Run

Run execute the handler

type LoanOpenMemo

type LoanOpenMemo = mem.LoanOpenMemo

type LoanRepaymentHandler

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

LoanRepaymentHandler a handler to process bond

func NewLoanRepaymentHandler

func NewLoanRepaymentHandler(mgr Manager) LoanRepaymentHandler

NewLoanRepaymentHandler create new LoanRepaymentHandler

func (LoanRepaymentHandler) Run

Run execute the handler

type LoanRepaymentMemo

type LoanRepaymentMemo = mem.LoanRepaymentMemo

type Loans

type Loans = types.Loans

type ManageDDNameHandler

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

ManageDDNameHandler a handler to process MsgNetworkFee messages

func NewManageDDNameHandler

func NewManageDDNameHandler(mgr Manager) ManageDDNameHandler

NewManageDDNameHandler create a new instance of network fee handler

func (ManageDDNameHandler) Run

Run is the main entry point for network fee logic

type ManageDDNameMemo

type ManageDDNameMemo = mem.ManageDDNameMemo

type Manager

type Manager interface {
	GetConstants() constants.ConstantValues
	GetVersion() semver.Version
	Keeper() keeper.Keeper
	GasMgr() GasManager
	EventMgr() EventManager
	TxOutStore() TxOutStore
	NetworkMgr() NetworkManager
	ValidatorMgr() ValidatorManager
	ObMgr() ObserverManager
	PoolMgr() PoolManager
	SwapQ() SwapQueue
	OrderBookMgr() OrderBook
	Slasher() Slasher
	YggManager() YggManager
}

Manager is an interface to define all the required methods

type Mgrs

type Mgrs struct {
	K keeper.Keeper
	// contains filtered or unexported fields
}

Mgrs is an implementation of Manager interface

func NewManagers

func NewManagers(keeper keeper.Keeper, cdc codec.BinaryCodec, coinKeeper bankkeeper.Keeper, accountKeeper authkeeper.AccountKeeper, storeKey cosmos.StoreKey) *Mgrs

NewManagers create a new Manager

func (*Mgrs) BeginBlock

func (mgr *Mgrs) BeginBlock(ctx cosmos.Context) error

BeginBlock detect whether there are new version available, if it is available then create a new version of Mgr

func (*Mgrs) EventMgr

func (mgr *Mgrs) EventMgr() EventManager

EventMgr return EventMgr

func (*Mgrs) GasMgr

func (mgr *Mgrs) GasMgr() GasManager

GasMgr return GasManager

func (*Mgrs) GetConstants

func (mgr *Mgrs) GetConstants() constants.ConstantValues

func (*Mgrs) GetVersion

func (mgr *Mgrs) GetVersion() semver.Version

func (*Mgrs) Keeper

func (mgr *Mgrs) Keeper() keeper.Keeper

Keeper return Keeper

func (*Mgrs) NetworkMgr

func (mgr *Mgrs) NetworkMgr() NetworkManager

VaultMgr return a valid NetworkManager

func (*Mgrs) ObMgr

func (mgr *Mgrs) ObMgr() ObserverManager

ObMgr return an implementation of ObserverManager

func (*Mgrs) OrderBookMgr

func (mgr *Mgrs) OrderBookMgr() OrderBook

OrderBookMgr

func (*Mgrs) PoolMgr

func (mgr *Mgrs) PoolMgr() PoolManager

PoolMgr return a valid PoolManager

func (*Mgrs) Slasher

func (mgr *Mgrs) Slasher() Slasher

Slasher return an implementation of Slasher

func (*Mgrs) SwapQ

func (mgr *Mgrs) SwapQ() SwapQueue

SwapQ return an implementation of SwapQueue

func (*Mgrs) TxOutStore

func (mgr *Mgrs) TxOutStore() TxOutStore

TxOutStore return an TxOutStore

func (*Mgrs) ValidatorMgr

func (mgr *Mgrs) ValidatorMgr() ValidatorManager

ValidatorMgr return an implementation of ValidatorManager

func (*Mgrs) YggManager

func (mgr *Mgrs) YggManager() YggManager

YggManager return an implementation of YggManager

type MigrateHandler

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

MigrateHandler is a handler to process MsgMigrate

func NewMigrateHandler

func NewMigrateHandler(mgr Manager) MigrateHandler

NewMigrateHandler create a new instance of MigrateHandler

func (MigrateHandler) Run

Run is the main entry point of Migrate handler

type MigrateMemo

type MigrateMemo = mem.MigrateMemo

type MimirHandler

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

MimirHandler is to handle admin messages

func NewMimirHandler

func NewMimirHandler(mgr Manager) MimirHandler

NewMimirHandler create new instance of MimirHandler

func (MimirHandler) Run

func (h MimirHandler) Run(ctx cosmos.Context, m cosmos.Msg) (*cosmos.Result, error)

Run is the main entry point to execute mimir logic

type ModuleBalanceAction

type ModuleBalanceAction struct {
	ModuleName      string
	KarmaRecipient  string
	KarmaToTransfer cosmos.Uint
	SynthsToBurn    common.Coins
}

send KarmaToTransfer from ModuleName to KarmaRecipient burn SynthsToBurn from ModuleName

type MsgAddLiquidity

type MsgAddLiquidity = types.MsgAddLiquidity

type MsgBan

type MsgBan = types.MsgBan

type MsgBond

type MsgBond = types.MsgBond

type MsgConsolidate

type MsgConsolidate = types.MsgConsolidate

type MsgDeposit

type MsgDeposit = types.MsgDeposit

type MsgDonate

type MsgDonate = types.MsgDonate

type MsgErrataTx

type MsgErrataTx = types.MsgErrataTx

type MsgHandler

type MsgHandler interface {
	Run(ctx cosmos.Context, msg cosmos.Msg) (*cosmos.Result, error)
}

MsgHandler is an interface expect all handler to implement

type MsgLeave

type MsgLeave = types.MsgLeave

type MsgLoanOpen

type MsgLoanOpen = types.MsgLoanOpen

type MsgLoanRepayment

type MsgLoanRepayment = types.MsgLoanRepayment

type MsgManageDDName

type MsgManageDDName = types.MsgManageDDName

type MsgMigrate

type MsgMigrate = types.MsgMigrate

type MsgMimir

type MsgMimir = types.MsgMimir

type MsgNetworkFee

type MsgNetworkFee = types.MsgNetworkFee

type MsgNoOp

type MsgNoOp = types.MsgNoOp

type MsgNodePauseChain

type MsgNodePauseChain = types.MsgNodePauseChain

type MsgObservedTxIn

type MsgObservedTxIn = types.MsgObservedTxIn

type MsgObservedTxOut

type MsgObservedTxOut = types.MsgObservedTxOut

type MsgOutboundTx

type MsgOutboundTx = types.MsgOutboundTx

type MsgRagnarok

type MsgRagnarok = types.MsgRagnarok

type MsgRefundTx

type MsgRefundTx = types.MsgRefundTx

type MsgReserveContributor

type MsgReserveContributor = types.MsgReserveContributor

type MsgSend

type MsgSend = types.MsgSend

type MsgSetIPAddress

type MsgSetIPAddress = types.MsgSetIPAddress

type MsgSetNodeKeys

type MsgSetNodeKeys = types.MsgSetNodeKeys

type MsgSetVersion

type MsgSetVersion = types.MsgSetVersion

type MsgSolvency

type MsgSolvency = types.MsgSolvency

type MsgSwap

type MsgSwap = types.MsgSwap

type MsgSwitch

type MsgSwitch = types.MsgSwitch

type MsgTssKeysignFail

type MsgTssKeysignFail = types.MsgTssKeysignFail

type MsgTssPool

type MsgTssPool = types.MsgTssPool

type MsgUnBond

type MsgUnBond = types.MsgUnBond

type MsgWithdrawLiquidity

type MsgWithdrawLiquidity = types.MsgWithdrawLiquidity

type MsgYggdrasil

type MsgYggdrasil = types.MsgYggdrasil

type Network

type Network = types.Network

type NetworkFee

type NetworkFee = types.NetworkFee

type NetworkFeeHandler

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

NetworkFeeHandler a handler to process MsgNetworkFee messages

func NewNetworkFeeHandler

func NewNetworkFeeHandler(mgr Manager) NetworkFeeHandler

NewNetworkFeeHandler create a new instance of network fee handler

func (NetworkFeeHandler) Run

Run is the main entry point for network fee logic

type NetworkManager

type NetworkManager interface {
	TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error
	RotateVault(ctx cosmos.Context, vault Vault) error
	BeginBlock(ctx cosmos.Context, mgr Manager) error
	EndBlock(ctx cosmos.Context, mgr Manager) error
	UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error
	RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNode common.PubKeys) error
	SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)
}

NetworkManager interface define the contract of network Manager

func GetNetworkManager

func GetNetworkManager(version semver.Version, keeper keeper.Keeper, txOutStore TxOutStore, eventMgr EventManager) (NetworkManager, error)

GetNetworkManager retrieve a NetworkManager that is compatible with the given version

type NetworkMgrV102

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

NetworkMgrV102 is going to manage the vaults

func (*NetworkMgrV102) BeginBlock

func (vm *NetworkMgrV102) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV102) EndBlock

func (vm *NetworkMgrV102) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV102) POLCycle

func (vm *NetworkMgrV102) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV102) RecallChainFunds

func (vm *NetworkMgrV102) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV102) RotateVault

func (vm *NetworkMgrV102) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV102) SpawnDerivedAsset

func (vm *NetworkMgrV102) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV102) TriggerKeygen

func (vm *NetworkMgrV102) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV102) UpdateNetwork

func (vm *NetworkMgrV102) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV106

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

NetworkMgrV106 is going to manage the vaults

func (*NetworkMgrV106) BeginBlock

func (vm *NetworkMgrV106) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV106) EndBlock

func (vm *NetworkMgrV106) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV106) POLCycle

func (vm *NetworkMgrV106) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV106) RecallChainFunds

func (vm *NetworkMgrV106) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV106) RotateVault

func (vm *NetworkMgrV106) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV106) SpawnDerivedAsset

func (vm *NetworkMgrV106) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV106) TriggerKeygen

func (vm *NetworkMgrV106) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV106) UpdateNetwork

func (vm *NetworkMgrV106) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV107

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

NetworkMgrV107 is going to manage the vaults

func (*NetworkMgrV107) BeginBlock

func (vm *NetworkMgrV107) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV107) EndBlock

func (vm *NetworkMgrV107) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV107) POLCycle

func (vm *NetworkMgrV107) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV107) RecallChainFunds

func (vm *NetworkMgrV107) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV107) RotateVault

func (vm *NetworkMgrV107) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV107) SpawnDerivedAsset

func (vm *NetworkMgrV107) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV107) TriggerKeygen

func (vm *NetworkMgrV107) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV107) UpdateNetwork

func (vm *NetworkMgrV107) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV109

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

NetworkMgrV109 is going to manage the vaults

func (*NetworkMgrV109) BeginBlock

func (vm *NetworkMgrV109) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV109) EndBlock

func (vm *NetworkMgrV109) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV109) POLCycle

func (vm *NetworkMgrV109) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV109) RecallChainFunds

func (vm *NetworkMgrV109) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV109) RotateVault

func (vm *NetworkMgrV109) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV109) SpawnDerivedAsset

func (vm *NetworkMgrV109) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV109) TriggerKeygen

func (vm *NetworkMgrV109) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV109) UpdateNetwork

func (vm *NetworkMgrV109) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV111

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

NetworkMgrV111 is going to manage the vaults

func (*NetworkMgrV111) BeginBlock

func (vm *NetworkMgrV111) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV111) EndBlock

func (vm *NetworkMgrV111) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV111) POLCycle

func (vm *NetworkMgrV111) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV111) RecallChainFunds

func (vm *NetworkMgrV111) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV111) RotateVault

func (vm *NetworkMgrV111) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV111) SpawnDerivedAsset

func (vm *NetworkMgrV111) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV111) TriggerKeygen

func (vm *NetworkMgrV111) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV111) UpdateNetwork

func (vm *NetworkMgrV111) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV112

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

NetworkMgrV112 is going to manage the vaults

func (*NetworkMgrV112) BeginBlock

func (vm *NetworkMgrV112) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV112) EndBlock

func (vm *NetworkMgrV112) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV112) POLCycle

func (vm *NetworkMgrV112) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV112) RecallChainFunds

func (vm *NetworkMgrV112) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV112) RotateVault

func (vm *NetworkMgrV112) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV112) SpawnDerivedAsset

func (vm *NetworkMgrV112) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV112) TriggerKeygen

func (vm *NetworkMgrV112) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV112) UpdateNetwork

func (vm *NetworkMgrV112) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV115

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

NetworkMgrV115 is going to manage the vaults

func (*NetworkMgrV115) BeginBlock

func (vm *NetworkMgrV115) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV115) EndBlock

func (vm *NetworkMgrV115) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV115) POLCycle

func (vm *NetworkMgrV115) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV115) RecallChainFunds

func (vm *NetworkMgrV115) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV115) RotateVault

func (vm *NetworkMgrV115) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV115) SpawnDerivedAsset

func (vm *NetworkMgrV115) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV115) TriggerKeygen

func (vm *NetworkMgrV115) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV115) UpdateNetwork

func (vm *NetworkMgrV115) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV76

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

NetworkMgrV76 is going to manage the vaults

func (*NetworkMgrV76) BeginBlock

func (vm *NetworkMgrV76) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV76) EndBlock

func (vm *NetworkMgrV76) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV76) RecallChainFunds

func (vm *NetworkMgrV76) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV76) RotateVault

func (vm *NetworkMgrV76) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV76) SpawnDerivedAsset

func (vm *NetworkMgrV76) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV76) TriggerKeygen

func (vm *NetworkMgrV76) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV76) UpdateNetwork

func (vm *NetworkMgrV76) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV87

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

NetworkMgrV87 is going to manage the vaults

func (*NetworkMgrV87) BeginBlock

func (vm *NetworkMgrV87) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV87) EndBlock

func (vm *NetworkMgrV87) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV87) RecallChainFunds

func (vm *NetworkMgrV87) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV87) RotateVault

func (vm *NetworkMgrV87) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV87) SpawnDerivedAsset

func (vm *NetworkMgrV87) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV87) TriggerKeygen

func (vm *NetworkMgrV87) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV87) UpdateNetwork

func (vm *NetworkMgrV87) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV89

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

NetworkMgrV89 is going to manage the vaults

func (*NetworkMgrV89) BeginBlock

func (vm *NetworkMgrV89) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV89) EndBlock

func (vm *NetworkMgrV89) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV89) RecallChainFunds

func (vm *NetworkMgrV89) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV89) RotateVault

func (vm *NetworkMgrV89) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV89) SpawnDerivedAsset

func (vm *NetworkMgrV89) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV89) TriggerKeygen

func (vm *NetworkMgrV89) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV89) UpdateNetwork

func (vm *NetworkMgrV89) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV90

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

NetworkMgrV90 is going to manage the vaults

func (*NetworkMgrV90) BeginBlock

func (vm *NetworkMgrV90) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV90) EndBlock

func (vm *NetworkMgrV90) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV90) RecallChainFunds

func (vm *NetworkMgrV90) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV90) RotateVault

func (vm *NetworkMgrV90) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV90) SpawnDerivedAsset

func (vm *NetworkMgrV90) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV90) TriggerKeygen

func (vm *NetworkMgrV90) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV90) UpdateNetwork

func (vm *NetworkMgrV90) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV91

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

NetworkMgrV91 is going to manage the vaults

func (*NetworkMgrV91) BeginBlock

func (vm *NetworkMgrV91) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV91) EndBlock

func (vm *NetworkMgrV91) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV91) RecallChainFunds

func (vm *NetworkMgrV91) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV91) RotateVault

func (vm *NetworkMgrV91) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV91) SpawnDerivedAsset

func (vm *NetworkMgrV91) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV91) TriggerKeygen

func (vm *NetworkMgrV91) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV91) UpdateNetwork

func (vm *NetworkMgrV91) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV92

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

NetworkMgrV92 is going to manage the vaults

func (*NetworkMgrV92) BeginBlock

func (vm *NetworkMgrV92) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV92) EndBlock

func (vm *NetworkMgrV92) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV92) RecallChainFunds

func (vm *NetworkMgrV92) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV92) RotateVault

func (vm *NetworkMgrV92) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV92) SpawnDerivedAsset

func (vm *NetworkMgrV92) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV92) TriggerKeygen

func (vm *NetworkMgrV92) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV92) UpdateNetwork

func (vm *NetworkMgrV92) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV93

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

NetworkMgrV93 is going to manage the vaults

func (*NetworkMgrV93) BeginBlock

func (vm *NetworkMgrV93) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV93) EndBlock

func (vm *NetworkMgrV93) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV93) RecallChainFunds

func (vm *NetworkMgrV93) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV93) RotateVault

func (vm *NetworkMgrV93) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV93) SpawnDerivedAsset

func (vm *NetworkMgrV93) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV93) TriggerKeygen

func (vm *NetworkMgrV93) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV93) UpdateNetwork

func (vm *NetworkMgrV93) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV94

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

NetworkMgrV94 is going to manage the vaults

func (*NetworkMgrV94) BeginBlock

func (vm *NetworkMgrV94) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV94) EndBlock

func (vm *NetworkMgrV94) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV94) RecallChainFunds

func (vm *NetworkMgrV94) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV94) RotateVault

func (vm *NetworkMgrV94) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV94) SpawnDerivedAsset

func (vm *NetworkMgrV94) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV94) TriggerKeygen

func (vm *NetworkMgrV94) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV94) UpdateNetwork

func (vm *NetworkMgrV94) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV95

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

NetworkMgrV95 is going to manage the vaults

func (*NetworkMgrV95) BeginBlock

func (vm *NetworkMgrV95) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV95) EndBlock

func (vm *NetworkMgrV95) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV95) POLCycle

func (vm *NetworkMgrV95) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV95) RecallChainFunds

func (vm *NetworkMgrV95) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV95) RotateVault

func (vm *NetworkMgrV95) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV95) SpawnDerivedAsset

func (vm *NetworkMgrV95) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV95) TriggerKeygen

func (vm *NetworkMgrV95) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV95) UpdateNetwork

func (vm *NetworkMgrV95) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV96

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

NetworkMgrV96 is going to manage the vaults

func (*NetworkMgrV96) BeginBlock

func (vm *NetworkMgrV96) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV96) EndBlock

func (vm *NetworkMgrV96) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV96) POLCycle

func (vm *NetworkMgrV96) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV96) RecallChainFunds

func (vm *NetworkMgrV96) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV96) RotateVault

func (vm *NetworkMgrV96) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV96) SpawnDerivedAsset

func (vm *NetworkMgrV96) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV96) TriggerKeygen

func (vm *NetworkMgrV96) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV96) UpdateNetwork

func (vm *NetworkMgrV96) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV98

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

NetworkMgrV98 is going to manage the vaults

func (*NetworkMgrV98) BeginBlock

func (vm *NetworkMgrV98) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV98) EndBlock

func (vm *NetworkMgrV98) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV98) POLCycle

func (vm *NetworkMgrV98) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV98) RecallChainFunds

func (vm *NetworkMgrV98) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV98) RotateVault

func (vm *NetworkMgrV98) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV98) SpawnDerivedAsset

func (vm *NetworkMgrV98) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV98) TriggerKeygen

func (vm *NetworkMgrV98) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV98) UpdateNetwork

func (vm *NetworkMgrV98) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrV99

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

NetworkMgrV99 is going to manage the vaults

func (*NetworkMgrV99) BeginBlock

func (vm *NetworkMgrV99) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV99) EndBlock

func (vm *NetworkMgrV99) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrV99) POLCycle

func (vm *NetworkMgrV99) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrV99) RecallChainFunds

func (vm *NetworkMgrV99) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrV99) RotateVault

func (vm *NetworkMgrV99) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrV99) SpawnDerivedAsset

func (vm *NetworkMgrV99) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrV99) TriggerKeygen

func (vm *NetworkMgrV99) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrV99) UpdateNetwork

func (vm *NetworkMgrV99) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NetworkMgrVCUR

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

NetworkMgrVCUR is going to manage the vaults

func (*NetworkMgrVCUR) BeginBlock

func (vm *NetworkMgrVCUR) BeginBlock(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrVCUR) EndBlock

func (vm *NetworkMgrVCUR) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock move funds from retiring asgard vaults

func (*NetworkMgrVCUR) POLCycle

func (vm *NetworkMgrVCUR) POLCycle(ctx cosmos.Context, mgr Manager) error

func (*NetworkMgrVCUR) RecallChainFunds

func (vm *NetworkMgrVCUR) RecallChainFunds(ctx cosmos.Context, chain common.Chain, mgr Manager, excludeNodes common.PubKeys) error

RecallChainFunds - sends a message to bifrost nodes to send back all funds associated with given chain

func (*NetworkMgrVCUR) RotateVault

func (vm *NetworkMgrVCUR) RotateVault(ctx cosmos.Context, vault Vault) error

RotateVault update vault to Retiring and new vault to active

func (*NetworkMgrVCUR) SpawnDerivedAsset

func (vm *NetworkMgrVCUR) SpawnDerivedAsset(ctx cosmos.Context, asset common.Asset, mgr Manager)

func (*NetworkMgrVCUR) TriggerKeygen

func (vm *NetworkMgrVCUR) TriggerKeygen(ctx cosmos.Context, nas NodeAccounts) error

TriggerKeygen generate a record to instruct signer kick off keygen process

func (*NetworkMgrVCUR) UpdateNetwork

func (vm *NetworkMgrVCUR) UpdateNetwork(ctx cosmos.Context, constAccessor constants.ConstantValues, gasManager GasManager, eventMgr EventManager) error

UpdateNetwork Update the network data to reflect changing in this block

type NoOpHandler

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

NoOpHandler is to handle donate message

func NewNoOpHandler

func NewNoOpHandler(mgr Manager) NoOpHandler

NewNoOpHandler create a new instance of NoOpHandler

func (NoOpHandler) Run

func (h NoOpHandler) Run(ctx cosmos.Context, m cosmos.Msg) (*cosmos.Result, error)

Run is the main entry point to execute donate logic

type NoOpMemo

type NoOpMemo = mem.NoOpMemo

type Node

type Node = types.Node

type NodeAccount

type NodeAccount = types.NodeAccount

type NodeAccounts

type NodeAccounts = types.NodeAccounts

type NodeMimir

type NodeMimir = types.NodeMimir

type NodeMimirs

type NodeMimirs = types.NodeMimirs

type NodePauseChainHandler

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

NodePauseChainHandler is to handle node pause chain messages

func NewNodePauseChainHandler

func NewNodePauseChainHandler(mgr Manager) NodePauseChainHandler

NewNodePauseChainHandler create new instance of NodePauseChainHandler

func (NodePauseChainHandler) Run

Run is the main entry point to execute node pause chain logic

type NodeStatus

type NodeStatus = types.NodeStatus

type ObservedNetworkFeeVoter

type ObservedNetworkFeeVoter = types.ObservedNetworkFeeVoter

type ObservedTx

type ObservedTx = types.ObservedTx

type ObservedTxInHandler

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

ObservedTxInHandler to handle MsgObservedTxIn

func NewObservedTxInHandler

func NewObservedTxInHandler(mgr Manager) ObservedTxInHandler

NewObservedTxInHandler create a new instance of ObservedTxInHandler

func (ObservedTxInHandler) Run

Run is the main entry point of ObservedTxInHandler

type ObservedTxOutHandler

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

ObservedTxOutHandler process MsgObservedTxOut messages

func NewObservedTxOutHandler

func NewObservedTxOutHandler(mgr Manager) ObservedTxOutHandler

NewObservedTxOutHandler create a new instance of ObservedTxOutHandler

func (ObservedTxOutHandler) Run

Run is the main entry point for ObservedTxOutHandler

type ObservedTxVoter

type ObservedTxVoter = types.ObservedTxVoter

type ObservedTxVoters

type ObservedTxVoters = types.ObservedTxVoters

type ObservedTxs

type ObservedTxs = types.ObservedTxs

type ObserverManager

type ObserverManager interface {
	BeginBlock()
	EndBlock(ctx cosmos.Context, keeper keeper.Keeper)
	AppendObserver(chain common.Chain, addrs []cosmos.AccAddress)
	List() []cosmos.AccAddress
}

ObserverManager define the method to manage observes

func GetObserverManager

func GetObserverManager(version semver.Version) (ObserverManager, error)

GetObserverManager return an instance that implements ObserverManager interface when there is no version can match the given semver , it will return nil

type ObserverMgrVCUR

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

ObserverMgrVCUR implement a ObserverManager which will store the observers in memory before written to chain

func (*ObserverMgrVCUR) AppendObserver

func (om *ObserverMgrVCUR) AppendObserver(chain common.Chain, addrs []cosmos.AccAddress)

AppendObserver add the address

func (*ObserverMgrVCUR) BeginBlock

func (om *ObserverMgrVCUR) BeginBlock()

BeginBlock called when a new block get proposed

func (*ObserverMgrVCUR) EndBlock

func (om *ObserverMgrVCUR) EndBlock(ctx cosmos.Context, keeper keeper.Keeper)

EndBlock emit the observers

func (*ObserverMgrVCUR) List

func (om *ObserverMgrVCUR) List() []cosmos.AccAddress

List - gets a list of addresses that have been observed in all chains

type OrderBook

type OrderBook interface {
	EndBlock(ctx cosmos.Context, mgr Manager) error
}

OrderBook interface define the contract of Order Book

func GetOrderBook

func GetOrderBook(version semver.Version, keeper keeper.Keeper) (OrderBook, error)

GetOrderBook retrieve a OrderBook that is compatible with the given version

type OrderBookV1

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

OrderBookV1 is going to manage the swaps queue

func (*OrderBookV1) AddOrderBookItem

func (ob *OrderBookV1) AddOrderBookItem(ctx cosmos.Context, msg MsgSwap) error

func (*OrderBookV1) EndBlock

func (ob *OrderBookV1) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*OrderBookV1) FetchQueue

func (ob *OrderBookV1) FetchQueue(ctx cosmos.Context, mgr Manager, pairs tradePairs, pools Pools) (orderItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type OrderBookV103

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

OrderBookV103 is going to manage the swaps queue

func (*OrderBookV103) AddOrderBookItem

func (ob *OrderBookV103) AddOrderBookItem(ctx cosmos.Context, msg MsgSwap) error

func (*OrderBookV103) EndBlock

func (ob *OrderBookV103) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*OrderBookV103) FetchQueue

func (ob *OrderBookV103) FetchQueue(ctx cosmos.Context, mgr Manager, pairs tradePairs, pools Pools) (orderItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type OrderBookVCUR

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

OrderBookVCUR is going to manage the swaps queue

func (*OrderBookVCUR) AddOrderBookItem

func (ob *OrderBookVCUR) AddOrderBookItem(ctx cosmos.Context, msg MsgSwap) error

func (*OrderBookVCUR) EndBlock

func (ob *OrderBookVCUR) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*OrderBookVCUR) FetchQueue

func (ob *OrderBookVCUR) FetchQueue(ctx cosmos.Context, mgr Manager, pairs tradePairs, pools Pools) (orderItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type OutboundMemo

type OutboundMemo = mem.OutboundMemo

type OutboundTxHandler

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

func NewOutboundTxHandler

func NewOutboundTxHandler(mgr Manager) OutboundTxHandler

func (OutboundTxHandler) Run

type Person added in v0.2.6

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

type Pool

type Pool = types.Pool

type PoolAmt

type PoolAmt = types.PoolAmt

type PoolManager

type PoolManager interface {
	EndBlock(ctx cosmos.Context, mgr Manager) error
}

PoolManager interface define the contract of PoolManager

func GetPoolManager

func GetPoolManager(version semver.Version) (PoolManager, error)

GetPoolManager return an implementation of PoolManager

type PoolMgrV108

type PoolMgrV108 struct{}

func (*PoolMgrV108) EndBlock

func (pm *PoolMgrV108) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock cycle pools if required and if ragnarok is not in progress

type PoolMgrV112

type PoolMgrV112 struct{}

func (*PoolMgrV112) EndBlock

func (pm *PoolMgrV112) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock cycle pools if required and if ragnarok is not in progress

type PoolMgrV73

type PoolMgrV73 struct{}

func (*PoolMgrV73) EndBlock

func (pm *PoolMgrV73) EndBlock(ctx cosmos.Context, mgr Manager) error

type PoolMgrV95

type PoolMgrV95 struct{}

func (*PoolMgrV95) EndBlock

func (pm *PoolMgrV95) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock cycle pools if required and if ragnarok is not in progress

type PoolMgrV98

type PoolMgrV98 struct{}

func (*PoolMgrV98) EndBlock

func (pm *PoolMgrV98) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock cycle pools if required and if ragnarok is not in progress

type PoolMgrVCUR

type PoolMgrVCUR struct{}

func (*PoolMgrVCUR) EndBlock

func (pm *PoolMgrVCUR) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock cycle pools if required and if ragnarok is not in progress

type PoolMod

type PoolMod = types.PoolMod

type PoolMods

type PoolMods = types.PoolMods

type PoolStatus

type PoolStatus = types.PoolStatus

type Pools

type Pools = types.Pools

type PreRegisterDDName

type PreRegisterDDName struct {
	Name    string
	Address string
}

type ProtoStrings

type ProtoStrings = types.ProtoStrings

Proto

type ProtocolOwnedLiquidity

type ProtocolOwnedLiquidity = types.ProtocolOwnedLiquidity

type QueryChainAddress

type QueryChainAddress = types.QueryChainAddress

type QueryKeygenBlock

type QueryKeygenBlock = types.QueryKeygenBlock

type QueryKeysign

type QueryKeysign = types.QueryKeysign

type QueryNodeAccount

type QueryNodeAccount = types.QueryNodeAccount

type QueryNodeAccountPreflightCheck

type QueryNodeAccountPreflightCheck = types.QueryNodeAccountPreflightCheck

type QueryObservedTx

type QueryObservedTx = types.QueryObservedTx

type QueryPool

type QueryPool = types.QueryPool

type QueryQueue

type QueryQueue = types.QueryQueue

type QueryResLastBlockHeights

type QueryResLastBlockHeights = types.QueryResLastBlockHeights

type QuerySaver

type QuerySaver = types.QuerySaver

type QueryTxOutItem

type QueryTxOutItem = types.QueryTxOutItem

type QueryTxSigners

type QueryTxSigners = types.QueryTxSigners

type QueryTxStages

type QueryTxStages = types.QueryTxStages

type QueryTxStatus

type QueryTxStatus = types.QueryTxStatus

type QueryVaultPubKeyContract

type QueryVaultPubKeyContract = types.QueryVaultPubKeyContract

type QueryVaultsPubKeys

type QueryVaultsPubKeys = types.QueryVaultsPubKeys

type QueryVersion

type QueryVersion = types.QueryVersion

type QueryYggdrasilVaults

type QueryYggdrasilVaults = types.QueryYggdrasilVaults

type RagnarokHandler

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

RagnarokHandler process MsgRagnarok

func NewRagnarokHandler

func NewRagnarokHandler(mgr Manager) RagnarokHandler

NewRagnarokHandler create a new instance of RagnarokHandler

func (RagnarokHandler) Run

Run is the main entry point of ragnarok handler

type RagnarokMemo

type RagnarokMemo = mem.RagnarokMemo

type RagnarokWithdrawPosition

type RagnarokWithdrawPosition = types.RagnarokWithdrawPosition

type RefundHandler

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

RefundHandler a handle to process tx that had refund memo usually this type or tx is because Ddchain fail to process the tx, which result in a refund, signer honour the tx and refund customer accordingly

func NewRefundHandler

func NewRefundHandler(mgr Manager) RefundHandler

NewRefundHandler create a new refund handler

func (RefundHandler) Run

Run is the main entry point to process refund outbound message

type RefundMemo

type RefundMemo = mem.RefundMemo

type ReserveContributor

type ReserveContributor = types.ReserveContributor

type ReserveContributorHandler

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

ReserveContributorHandler is handler to process MsgReserveContributor

func NewReserveContributorHandler

func NewReserveContributorHandler(mgr Manager) ReserveContributorHandler

NewReserveContributorHandler create a new instance of ReserveContributorHandler

func (ReserveContributorHandler) Run

Run is the main entry point for ReserveContributorHandler

type ReserveContributors

type ReserveContributors = types.ReserveContributors

type ReserveMemo

type ReserveMemo = mem.ReserveMemo

type RouterUpgradeController

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

func NewRouterUpgradeController

func NewRouterUpgradeController(mgr Manager) *RouterUpgradeController

NewRouterUpgradeController create a new instance of RouterUpgradeController

func (*RouterUpgradeController) Process

func (r *RouterUpgradeController) Process(ctx cosmos.Context)

Process is the main entry of router upgrade controller , it will recall yggdrasil fund , and refund all USDT liquidity , and then upgrade contract

all these steps are controlled by mimir

type SetNodeKeysHandler

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

SetNodeKeysHandler process MsgSetNodeKeys MsgSetNodeKeys is used by operators after the node account had been white list , to update the consensus pubkey and node account pubkey

func NewSetNodeKeysHandler

func NewSetNodeKeysHandler(mgr Manager) SetNodeKeysHandler

NewSetNodeKeysHandler create a new instance of SetNodeKeysHandler

func (SetNodeKeysHandler) Run

Run is the main entry point to process MsgSetNodeKeys

type Slasher

type Slasher interface {
	BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)
	HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error
	LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error
	LackSigning(ctx cosmos.Context, mgr Manager) error
	SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error
	IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)
	DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)
}

Slasher define all the method to perform slash

func GetSlasher

func GetSlasher(version semver.Version, keeper keeper.Keeper, eventMgr EventManager) (Slasher, error)

GetSlasher return an implementation of Slasher

type SlasherV108

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

SlasherV108 is v88 implementation of slasher

func (*SlasherV108) BeginBlock

func (s *SlasherV108) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV108) DecSlashPoints

func (s *SlasherV108) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV108) HandleDoubleSign

func (s *SlasherV108) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV108) IncSlashPoints

func (s *SlasherV108) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV108) LackObserving

func (s *SlasherV108) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV108) LackSigning

func (s *SlasherV108) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV108) SlashVault

func (s *SlasherV108) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherV109

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

SlasherV109 is v88 implementation of slasher

func (*SlasherV109) BeginBlock

func (s *SlasherV109) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV109) DecSlashPoints

func (s *SlasherV109) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV109) HandleDoubleSign

func (s *SlasherV109) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV109) IncSlashPoints

func (s *SlasherV109) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV109) LackObserving

func (s *SlasherV109) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV109) LackSigning

func (s *SlasherV109) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV109) SlashVault

func (s *SlasherV109) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherV112

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

SlasherV112 is v88 implementation of slasher

func (*SlasherV112) BeginBlock

func (s *SlasherV112) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV112) DecSlashPoints

func (s *SlasherV112) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV112) HandleDoubleSign

func (s *SlasherV112) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV112) IncSlashPoints

func (s *SlasherV112) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV112) LackObserving

func (s *SlasherV112) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV112) LackSigning

func (s *SlasherV112) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV112) SlashVault

func (s *SlasherV112) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherV115

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

SlasherV115 is v88 implementation of slasher

func (*SlasherV115) BeginBlock

func (s *SlasherV115) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV115) DecSlashPoints

func (s *SlasherV115) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV115) HandleDoubleSign

func (s *SlasherV115) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV115) IncSlashPoints

func (s *SlasherV115) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV115) LackObserving

func (s *SlasherV115) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV115) LackSigning

func (s *SlasherV115) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV115) SlashVault

func (s *SlasherV115) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherV75

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

SlasherV75 is v54 implementation of slasher

func (*SlasherV75) BeginBlock

func (s *SlasherV75) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV75) DecSlashPoints

func (s *SlasherV75) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV75) HandleDoubleSign

func (s *SlasherV75) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV75) IncSlashPoints

func (s *SlasherV75) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV75) LackObserving

func (s *SlasherV75) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV75) LackSigning

func (s *SlasherV75) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV75) SlashVault

func (s *SlasherV75) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherV86

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

SlasherV86 is v54 implementation of slasher

func (*SlasherV86) BeginBlock

func (s *SlasherV86) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV86) DecSlashPoints

func (s *SlasherV86) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV86) HandleDoubleSign

func (s *SlasherV86) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV86) IncSlashPoints

func (s *SlasherV86) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV86) LackObserving

func (s *SlasherV86) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV86) LackSigning

func (s *SlasherV86) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV86) SlashVault

func (s *SlasherV86) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherV87

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

SlasherV87 is v54 implementation of slasher

func (*SlasherV87) BeginBlock

func (s *SlasherV87) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV87) DecSlashPoints

func (s *SlasherV87) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV87) HandleDoubleSign

func (s *SlasherV87) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV87) IncSlashPoints

func (s *SlasherV87) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV87) LackObserving

func (s *SlasherV87) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV87) LackSigning

func (s *SlasherV87) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV87) SlashVault

func (s *SlasherV87) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherV88

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

SlasherV88 is v88 implementation of slasher

func (*SlasherV88) BeginBlock

func (s *SlasherV88) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV88) DecSlashPoints

func (s *SlasherV88) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV88) HandleDoubleSign

func (s *SlasherV88) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV88) IncSlashPoints

func (s *SlasherV88) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV88) LackObserving

func (s *SlasherV88) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV88) LackSigning

func (s *SlasherV88) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV88) SlashVault

func (s *SlasherV88) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherV89

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

SlasherV89 is v88 implementation of slasher

func (*SlasherV89) BeginBlock

func (s *SlasherV89) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV89) DecSlashPoints

func (s *SlasherV89) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV89) HandleDoubleSign

func (s *SlasherV89) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV89) IncSlashPoints

func (s *SlasherV89) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV89) LackObserving

func (s *SlasherV89) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV89) LackSigning

func (s *SlasherV89) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV89) SlashVault

func (s *SlasherV89) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherV92

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

SlasherV92 is v88 implementation of slasher

func (*SlasherV92) BeginBlock

func (s *SlasherV92) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherV92) DecSlashPoints

func (s *SlasherV92) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherV92) HandleDoubleSign

func (s *SlasherV92) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherV92) IncSlashPoints

func (s *SlasherV92) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherV92) LackObserving

func (s *SlasherV92) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherV92) LackSigning

func (s *SlasherV92) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherV92) SlashVault

func (s *SlasherV92) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SlasherVCUR

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

SlasherVCUR is v88 implementation of slasher

func (*SlasherVCUR) BeginBlock

func (s *SlasherVCUR) BeginBlock(ctx cosmos.Context, req abci.RequestBeginBlock, constAccessor constants.ConstantValues)

BeginBlock called when a new block get proposed to detect whether there are duplicate vote

func (*SlasherVCUR) DecSlashPoints

func (s *SlasherVCUR) DecSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

DecSlashPoints will decrease the given account's slash points

func (*SlasherVCUR) HandleDoubleSign

func (s *SlasherVCUR) HandleDoubleSign(ctx cosmos.Context, addr crypto.Address, infractionHeight int64, constAccessor constants.ConstantValues) error

HandleDoubleSign - slashes a validator for signing two blocks at the same block height https://blog.cosmos.network/consensus-compare-casper-vs-tendermint-6df154ad56ae

func (*SlasherVCUR) IncSlashPoints

func (s *SlasherVCUR) IncSlashPoints(ctx cosmos.Context, point int64, addresses ...cosmos.AccAddress)

IncSlashPoints will increase the given account's slash points

func (*SlasherVCUR) LackObserving

func (s *SlasherVCUR) LackObserving(ctx cosmos.Context, constAccessor constants.ConstantValues) error

LackObserving Slash node accounts that didn't observe a single inbound txn

func (*SlasherVCUR) LackSigning

func (s *SlasherVCUR) LackSigning(ctx cosmos.Context, mgr Manager) error

LackSigning slash account that fail to sign tx

func (*SlasherVCUR) SlashVault

func (s *SlasherVCUR) SlashVault(ctx cosmos.Context, vaultPK common.PubKey, coins common.Coins, mgr Manager) error

SlashVault ddchain keep monitoring the outbound tx from asgard pool and yggdrasil pool, usually the txout is triggered by ddchain itself by adding an item into the txout array, refer to TxOutItem for the detail, the TxOutItem contains a specific coin and amount. if somehow ddchain discover signer send out fund more than the amount specified in TxOutItem, it will slash the node account who does that by taking 1.5 * extra fund from node account's bond and subsidise the pool that actually lost it.

type SolvencyHandler

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

SolvencyHandler is to process MsgSolvency message from bifrost Bifrost constantly monitor the account balance , and report to DDNode If it detect that wallet is short of fund , much less than vault, the network should automatically halt trading

func NewSolvencyHandler

func NewSolvencyHandler(mgr Manager) SolvencyHandler

NewSolvencyHandler create a new instance of solvency handler

func (SolvencyHandler) Run

Run is the main entry point to process MsgSolvency

type StoreManager

type StoreManager interface {
	Iterator(_ cosmos.Context) error
}

StoreManager define the method as the entry point for store upgrade

type StoreMgr

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

StoreMgr implement StoreManager interface

func (*StoreMgr) Iterator

func (smgr *StoreMgr) Iterator(ctx cosmos.Context) error

Iterator implement StoreManager interface decide whether it need to upgrade store

type StreamingSwap

type StreamingSwap = types.StreamingSwap

type StreamingSwaps

type StreamingSwaps = types.StreamingSwaps

type SwapHandler

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

SwapHandler is the handler to process swap request

func NewSwapHandler

func NewSwapHandler(mgr Manager) SwapHandler

NewSwapHandler create a new instance of swap handler

func (SwapHandler) Run

func (h SwapHandler) Run(ctx cosmos.Context, m cosmos.Msg) (*cosmos.Result, error)

Run is the main entry point of swap message

type SwapMemo

type SwapMemo = mem.SwapMemo

Memo

type SwapQueue

type SwapQueue interface {
	EndBlock(ctx cosmos.Context, mgr Manager) error
}

SwapQueue interface define the contract of Swap Queue

func GetSwapQueue

func GetSwapQueue(version semver.Version, keeper keeper.Keeper) (SwapQueue, error)

GetSwapQueue retrieve a SwapQueue that is compatible with the given version

type SwapQueueV103

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

SwapQueueV103 is going to manage the swaps queue

func (*SwapQueueV103) EndBlock

func (vm *SwapQueueV103) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*SwapQueueV103) FetchQueue

func (vm *SwapQueueV103) FetchQueue(ctx cosmos.Context) (swapItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type SwapQueueV104

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

SwapQueueV104 is going to manage the swaps queue

func (*SwapQueueV104) EndBlock

func (vm *SwapQueueV104) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*SwapQueueV104) FetchQueue

func (vm *SwapQueueV104) FetchQueue(ctx cosmos.Context) (swapItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type SwapQueueV115

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

SwapQueueV115 is going to manage the swaps queue

func (*SwapQueueV115) EndBlock

func (vm *SwapQueueV115) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*SwapQueueV115) FetchQueue

func (vm *SwapQueueV115) FetchQueue(ctx cosmos.Context) (swapItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type SwapQueueV116

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

SwapQueueV116 is going to manage the swaps queue

func (*SwapQueueV116) EndBlock

func (vm *SwapQueueV116) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*SwapQueueV116) FetchQueue

func (vm *SwapQueueV116) FetchQueue(ctx cosmos.Context) (swapItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type SwapQueueVCUR

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

SwapQueueVCUR is going to manage the swaps queue

func (*SwapQueueVCUR) EndBlock

func (vm *SwapQueueVCUR) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*SwapQueueVCUR) FetchQueue

func (vm *SwapQueueVCUR) FetchQueue(ctx cosmos.Context) (swapItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type SwapQv58

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

SwapQv58 is going to manage the swaps queue

func (*SwapQv58) EndBlock

func (vm *SwapQv58) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*SwapQv58) FetchQueue

func (vm *SwapQv58) FetchQueue(ctx cosmos.Context) (swapItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type SwapQv94

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

SwapQv94 is going to manage the swaps queue

func (*SwapQv94) EndBlock

func (vm *SwapQv94) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*SwapQv94) FetchQueue

func (vm *SwapQv94) FetchQueue(ctx cosmos.Context) (swapItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type SwapQv95

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

SwapQv95 is going to manage the swaps queue

func (*SwapQv95) EndBlock

func (vm *SwapQv95) EndBlock(ctx cosmos.Context, mgr Manager) error

EndBlock trigger the real swap to be processed

func (*SwapQv95) FetchQueue

func (vm *SwapQv95) FetchQueue(ctx cosmos.Context) (swapItems, error)

FetchQueue - grabs all swap queue items from the kvstore and returns them

type Swapper

type Swapper interface {
	Swap(ctx cosmos.Context,
		keeper keeper.Keeper,
		tx common.Tx,
		target common.Asset,
		destination common.Address,
		swapTarget cosmos.Uint,
		dexAgg string,
		dexAggTargetAsset string,
		dexAggLimit *cosmos.Uint,
		swp StreamingSwap,
		transactionFee cosmos.Uint,
		synthVirtualDepthMult int64,
		mgr Manager,
	) (cosmos.Uint, []*EventSwap, error)
	CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint
	CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint
	CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint
}

func GetSwapper

func GetSwapper(version semver.Version) (Swapper, error)

GetSwapper return an implementation of Swapper

type SwapperV102

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

func (*SwapperV102) CalcAssetEmission

func (s *SwapperV102) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV102) CalcLiquidityFee

func (s *SwapperV102) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV102) CalcSwapSlip

func (s *SwapperV102) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV102) Swap

func (s *SwapperV102) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV103

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

func (*SwapperV103) CalcAssetEmission

func (s *SwapperV103) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV103) CalcLiquidityFee

func (s *SwapperV103) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV103) CalcSwapSlip

func (s *SwapperV103) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV103) Swap

func (s *SwapperV103) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV110

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

func (*SwapperV110) CalcAssetEmission

func (s *SwapperV110) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV110) CalcLiquidityFee

func (s *SwapperV110) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV110) CalcSwapSlip

func (s *SwapperV110) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV110) Swap

func (s *SwapperV110) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV115

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

func (*SwapperV115) CalcAssetEmission

func (s *SwapperV115) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV115) CalcLiquidityFee

func (s *SwapperV115) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV115) CalcSwapSlip

func (s *SwapperV115) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV115) Swap

func (s *SwapperV115) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV116

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

func (*SwapperV116) CalcAssetEmission

func (s *SwapperV116) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV116) CalcLiquidityFee

func (s *SwapperV116) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV116) CalcSwapSlip

func (s *SwapperV116) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV116) Swap

func (s *SwapperV116) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV117

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

func (*SwapperV117) CalcAssetEmission

func (s *SwapperV117) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV117) CalcLiquidityFee

func (s *SwapperV117) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV117) CalcSwapSlip

func (s *SwapperV117) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV117) Swap

func (s *SwapperV117) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV81

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

func (*SwapperV81) CalcAssetEmission

func (s *SwapperV81) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV81) CalcLiquidityFee

func (s *SwapperV81) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

calculateFee the fee of the swap nolint

func (*SwapperV81) CalcSwapSlip

func (s *SwapperV81) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV81) Swap

func (s *SwapperV81) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint,
	synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV90

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

func (*SwapperV90) CalcAssetEmission

func (s *SwapperV90) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV90) CalcLiquidityFee

func (s *SwapperV90) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateFee the fee of the swap nolint

func (*SwapperV90) CalcSwapSlip

func (s *SwapperV90) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV90) Swap

func (s *SwapperV90) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV91

type SwapperV91 struct{}

func (*SwapperV91) CalcAssetEmission

func (s *SwapperV91) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV91) CalcLiquidityFee

func (s *SwapperV91) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateFee the fee of the swap nolint

func (*SwapperV91) CalcSwapSlip

func (s *SwapperV91) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV91) Swap

func (s *SwapperV91) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV92

type SwapperV92 struct{}

func (*SwapperV92) CalcAssetEmission

func (s *SwapperV92) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV92) CalcLiquidityFee

func (s *SwapperV92) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV92) CalcSwapSlip

func (s *SwapperV92) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV92) Swap

func (s *SwapperV92) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV94

type SwapperV94 struct{}

func (*SwapperV94) CalcAssetEmission

func (s *SwapperV94) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV94) CalcLiquidityFee

func (s *SwapperV94) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV94) CalcSwapSlip

func (s *SwapperV94) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV94) Swap

func (s *SwapperV94) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV95

type SwapperV95 struct{}

func (*SwapperV95) CalcAssetEmission

func (s *SwapperV95) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV95) CalcLiquidityFee

func (s *SwapperV95) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV95) CalcSwapSlip

func (s *SwapperV95) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV95) Swap

func (s *SwapperV95) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwapperV98

type SwapperV98 struct{}

func (*SwapperV98) CalcAssetEmission

func (s *SwapperV98) CalcAssetEmission(X, x, Y cosmos.Uint) cosmos.Uint

calculate the number of assets sent to the address (includes liquidity fee) nolint

func (*SwapperV98) CalcLiquidityFee

func (s *SwapperV98) CalcLiquidityFee(X, x, Y cosmos.Uint) cosmos.Uint

CalculateLiquidityFee the fee of the swap nolint

func (*SwapperV98) CalcSwapSlip

func (s *SwapperV98) CalcSwapSlip(Xi, xi cosmos.Uint) cosmos.Uint

CalcSwapSlip - calculate the swap slip, expressed in basis points (10000) nolint

func (*SwapperV98) Swap

func (s *SwapperV98) Swap(ctx cosmos.Context,
	keeper keeper.Keeper,
	tx common.Tx,
	target common.Asset,
	destination common.Address,
	swapTarget cosmos.Uint,
	dexAgg string,
	dexAggTargetAsset string,
	dexAggLimit *cosmos.Uint,
	swp StreamingSwap,
	transactionFee cosmos.Uint, synthVirtualDepthMult int64, mgr Manager,
) (cosmos.Uint, []*EventSwap, error)

type SwitchHandler

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

SwitchHandler is to handle Switch message MsgSwitch is used to switch from bep2 KARMA to native KARMA

func NewSwitchHandler

func NewSwitchHandler(mgr Manager) SwitchHandler

NewSwitchHandler create new instance of SwitchHandler

func (SwitchHandler) Run

Run it the main entry point to execute Switch logic

type SwitchMemo

type SwitchMemo = mem.SwitchMemo

type TssHandler

type TssHandler = BaseHandler[*MsgTssPool]

type TssKeysignFailVoter

type TssKeysignFailVoter = types.TssKeysignFailVoter

type TssKeysignHandler

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

TssKeysignHandler is design to process MsgTssKeysignFail

func NewTssKeysignHandler

func NewTssKeysignHandler(mgr Manager) TssKeysignHandler

NewTssKeysignHandler create a new instance of TssKeysignHandler when a signer fail to join tss keysign , ddchain need to slash the node account

func (TssKeysignHandler) Run

Run is the main entry to process MsgTssKeysignFail

type TssVoter

type TssVoter = types.TssVoter

type TxOut

type TxOut = types.TxOut

type TxOutItem

type TxOutItem = types.TxOutItem

type TxOutStorageV102

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

TxOutStorageV102 is going to manage all the outgoing tx

func (*TxOutStorageV102) CalcTxOutHeight

func (tos *TxOutStorageV102) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV102) ClearOutboundItems

func (tos *TxOutStorageV102) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV102) EndBlock

func (tos *TxOutStorageV102) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV102) GetBlockOut

func (tos *TxOutStorageV102) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV102) GetOutboundItemByToAddress

func (tos *TxOutStorageV102) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV102) GetOutboundItems

func (tos *TxOutStorageV102) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV102) TryAddTxOutItem

func (tos *TxOutStorageV102) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV102) UnSafeAddTxOutItem

func (tos *TxOutStorageV102) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV107

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

TxOutStorageV107 is going to manage all the outgoing tx

func (*TxOutStorageV107) CalcTxOutHeight

func (tos *TxOutStorageV107) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV107) ClearOutboundItems

func (tos *TxOutStorageV107) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV107) EndBlock

func (tos *TxOutStorageV107) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV107) GetBlockOut

func (tos *TxOutStorageV107) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV107) GetOutboundItemByToAddress

func (tos *TxOutStorageV107) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV107) GetOutboundItems

func (tos *TxOutStorageV107) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV107) TryAddTxOutItem

func (tos *TxOutStorageV107) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV107) UnSafeAddTxOutItem

func (tos *TxOutStorageV107) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV108

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

TxOutStorageV108 is going to manage all the outgoing tx

func (*TxOutStorageV108) CalcTxOutHeight

func (tos *TxOutStorageV108) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV108) ClearOutboundItems

func (tos *TxOutStorageV108) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV108) EndBlock

func (tos *TxOutStorageV108) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV108) GetBlockOut

func (tos *TxOutStorageV108) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV108) GetOutboundItemByToAddress

func (tos *TxOutStorageV108) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV108) GetOutboundItems

func (tos *TxOutStorageV108) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV108) TryAddTxOutItem

func (tos *TxOutStorageV108) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

When TryAddTxOutItem returns an error, there should be no state changes from it, including funds movements or fee events from prepareTxOutItem. So, use CacheContext to only commit state changes when cachedTryAddTxOutItem doesn't return an error.

func (*TxOutStorageV108) UnSafeAddTxOutItem

func (tos *TxOutStorageV108) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV109

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

TxOutStorageV109 is going to manage all the outgoing tx

func (*TxOutStorageV109) CalcTxOutHeight

func (tos *TxOutStorageV109) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV109) ClearOutboundItems

func (tos *TxOutStorageV109) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV109) EndBlock

func (tos *TxOutStorageV109) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV109) GetBlockOut

func (tos *TxOutStorageV109) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV109) GetOutboundItemByToAddress

func (tos *TxOutStorageV109) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV109) GetOutboundItems

func (tos *TxOutStorageV109) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV109) TryAddTxOutItem

func (tos *TxOutStorageV109) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

When TryAddTxOutItem returns an error, there should be no state changes from it, including funds movements or fee events from prepareTxOutItem. So, use CacheContext to only commit state changes when cachedTryAddTxOutItem doesn't return an error.

func (*TxOutStorageV109) UnSafeAddTxOutItem

func (tos *TxOutStorageV109) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV112

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

TxOutStorageV112 is going to manage all the outgoing tx

func (*TxOutStorageV112) CalcTxOutHeight

func (tos *TxOutStorageV112) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV112) ClearOutboundItems

func (tos *TxOutStorageV112) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV112) EndBlock

func (tos *TxOutStorageV112) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV112) GetBlockOut

func (tos *TxOutStorageV112) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV112) GetOutboundItemByToAddress

func (tos *TxOutStorageV112) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV112) GetOutboundItems

func (tos *TxOutStorageV112) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV112) TryAddTxOutItem

func (tos *TxOutStorageV112) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

When TryAddTxOutItem returns an error, there should be no state changes from it, including funds movements or fee events from prepareTxOutItem. So, use CacheContext to only commit state changes when cachedTryAddTxOutItem doesn't return an error.

func (*TxOutStorageV112) UnSafeAddTxOutItem

func (tos *TxOutStorageV112) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV113

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

TxOutStorageV113 is going to manage all the outgoing tx

func (*TxOutStorageV113) CalcTxOutHeight

func (tos *TxOutStorageV113) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV113) ClearOutboundItems

func (tos *TxOutStorageV113) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV113) EndBlock

func (tos *TxOutStorageV113) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV113) GetBlockOut

func (tos *TxOutStorageV113) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV113) GetOutboundItemByToAddress

func (tos *TxOutStorageV113) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV113) GetOutboundItems

func (tos *TxOutStorageV113) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV113) TryAddTxOutItem

func (tos *TxOutStorageV113) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

When TryAddTxOutItem returns an error, there should be no state changes from it, including funds movements or fee events from prepareTxOutItem. So, use CacheContext to only commit state changes when cachedTryAddTxOutItem doesn't return an error.

func (*TxOutStorageV113) UnSafeAddTxOutItem

func (tos *TxOutStorageV113) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV115

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

TxOutStorageV115 is going to manage all the outgoing tx

func (*TxOutStorageV115) CalcTxOutHeight

func (tos *TxOutStorageV115) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV115) ClearOutboundItems

func (tos *TxOutStorageV115) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV115) EndBlock

func (tos *TxOutStorageV115) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV115) GetBlockOut

func (tos *TxOutStorageV115) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV115) GetOutboundItemByToAddress

func (tos *TxOutStorageV115) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV115) GetOutboundItems

func (tos *TxOutStorageV115) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV115) TryAddTxOutItem

func (tos *TxOutStorageV115) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

When TryAddTxOutItem returns an error, there should be no state changes from it, including funds movements or fee events from prepareTxOutItem. So, use CacheContext to only commit state changes when cachedTryAddTxOutItem doesn't return an error.

func (*TxOutStorageV115) UnSafeAddTxOutItem

func (tos *TxOutStorageV115) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV116

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

TxOutStorageV116 is going to manage all the outgoing tx

func (*TxOutStorageV116) CalcTxOutHeight

func (tos *TxOutStorageV116) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV116) ClearOutboundItems

func (tos *TxOutStorageV116) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV116) EndBlock

func (tos *TxOutStorageV116) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV116) GetBlockOut

func (tos *TxOutStorageV116) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV116) GetOutboundItemByToAddress

func (tos *TxOutStorageV116) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV116) GetOutboundItems

func (tos *TxOutStorageV116) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV116) TryAddTxOutItem

func (tos *TxOutStorageV116) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

When TryAddTxOutItem returns an error, there should be no state changes from it, including funds movements or fee events from prepareTxOutItem. So, use CacheContext to only commit state changes when cachedTryAddTxOutItem doesn't return an error.

func (*TxOutStorageV116) UnSafeAddTxOutItem

func (tos *TxOutStorageV116) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV78

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

TxOutStorageV78 is going to manage all the outgoing tx

func (*TxOutStorageV78) CalcTxOutHeight

func (tos *TxOutStorageV78) CalcTxOutHeight(ctx cosmos.Context, _ semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV78) ClearOutboundItems

func (tos *TxOutStorageV78) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV78) EndBlock

func (tos *TxOutStorageV78) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV78) GetBlockOut

func (tos *TxOutStorageV78) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV78) GetOutboundItemByToAddress

func (tos *TxOutStorageV78) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV78) GetOutboundItems

func (tos *TxOutStorageV78) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV78) TryAddTxOutItem

func (tos *TxOutStorageV78) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, _ cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV78) UnSafeAddTxOutItem

func (tos *TxOutStorageV78) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV83

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

TxOutStorageV83 is going to manage all the outgoing tx

func (*TxOutStorageV83) CalcTxOutHeight

func (tos *TxOutStorageV83) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV83) ClearOutboundItems

func (tos *TxOutStorageV83) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV83) EndBlock

func (tos *TxOutStorageV83) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV83) GetBlockOut

func (tos *TxOutStorageV83) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV83) GetOutboundItemByToAddress

func (tos *TxOutStorageV83) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV83) GetOutboundItems

func (tos *TxOutStorageV83) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV83) TryAddTxOutItem

func (tos *TxOutStorageV83) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, _ cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV83) UnSafeAddTxOutItem

func (tos *TxOutStorageV83) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV84

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

TxOutStorageV84 is going to manage all the outgoing tx

func (*TxOutStorageV84) CalcTxOutHeight

func (tos *TxOutStorageV84) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV84) ClearOutboundItems

func (tos *TxOutStorageV84) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV84) EndBlock

func (tos *TxOutStorageV84) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV84) GetBlockOut

func (tos *TxOutStorageV84) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV84) GetOutboundItemByToAddress

func (tos *TxOutStorageV84) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV84) GetOutboundItems

func (tos *TxOutStorageV84) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV84) TryAddTxOutItem

func (tos *TxOutStorageV84) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, _ cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV84) UnSafeAddTxOutItem

func (tos *TxOutStorageV84) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV85

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

TxOutStorageV85 is going to manage all the outgoing tx

func (*TxOutStorageV85) CalcTxOutHeight

func (tos *TxOutStorageV85) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV85) ClearOutboundItems

func (tos *TxOutStorageV85) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV85) EndBlock

func (tos *TxOutStorageV85) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV85) GetBlockOut

func (tos *TxOutStorageV85) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV85) GetOutboundItemByToAddress

func (tos *TxOutStorageV85) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV85) GetOutboundItems

func (tos *TxOutStorageV85) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV85) TryAddTxOutItem

func (tos *TxOutStorageV85) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, _ cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV85) UnSafeAddTxOutItem

func (tos *TxOutStorageV85) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV88

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

TxOutStorageV88 is going to manage all the outgoing tx

func (*TxOutStorageV88) CalcTxOutHeight

func (tos *TxOutStorageV88) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV88) ClearOutboundItems

func (tos *TxOutStorageV88) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV88) EndBlock

func (tos *TxOutStorageV88) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV88) GetBlockOut

func (tos *TxOutStorageV88) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV88) GetOutboundItemByToAddress

func (tos *TxOutStorageV88) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV88) GetOutboundItems

func (tos *TxOutStorageV88) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV88) TryAddTxOutItem

func (tos *TxOutStorageV88) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, _ cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV88) UnSafeAddTxOutItem

func (tos *TxOutStorageV88) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV93

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

TxOutStorageV93 is going to manage all the outgoing tx

func (*TxOutStorageV93) CalcTxOutHeight

func (tos *TxOutStorageV93) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV93) ClearOutboundItems

func (tos *TxOutStorageV93) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV93) EndBlock

func (tos *TxOutStorageV93) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV93) GetBlockOut

func (tos *TxOutStorageV93) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV93) GetOutboundItemByToAddress

func (tos *TxOutStorageV93) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV93) GetOutboundItems

func (tos *TxOutStorageV93) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV93) TryAddTxOutItem

func (tos *TxOutStorageV93) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV93) UnSafeAddTxOutItem

func (tos *TxOutStorageV93) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV94

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

TxOutStorageV94 is going to manage all the outgoing tx

func (*TxOutStorageV94) CalcTxOutHeight

func (tos *TxOutStorageV94) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV94) ClearOutboundItems

func (tos *TxOutStorageV94) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV94) EndBlock

func (tos *TxOutStorageV94) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV94) GetBlockOut

func (tos *TxOutStorageV94) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV94) GetOutboundItemByToAddress

func (tos *TxOutStorageV94) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV94) GetOutboundItems

func (tos *TxOutStorageV94) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV94) TryAddTxOutItem

func (tos *TxOutStorageV94) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV94) UnSafeAddTxOutItem

func (tos *TxOutStorageV94) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV95

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

TxOutStorageV95 is going to manage all the outgoing tx

func (*TxOutStorageV95) CalcTxOutHeight

func (tos *TxOutStorageV95) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV95) ClearOutboundItems

func (tos *TxOutStorageV95) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV95) EndBlock

func (tos *TxOutStorageV95) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV95) GetBlockOut

func (tos *TxOutStorageV95) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV95) GetOutboundItemByToAddress

func (tos *TxOutStorageV95) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV95) GetOutboundItems

func (tos *TxOutStorageV95) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV95) TryAddTxOutItem

func (tos *TxOutStorageV95) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV95) UnSafeAddTxOutItem

func (tos *TxOutStorageV95) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV97

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

TxOutStorageV97 is going to manage all the outgoing tx

func (*TxOutStorageV97) CalcTxOutHeight

func (tos *TxOutStorageV97) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV97) ClearOutboundItems

func (tos *TxOutStorageV97) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV97) EndBlock

func (tos *TxOutStorageV97) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV97) GetBlockOut

func (tos *TxOutStorageV97) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV97) GetOutboundItemByToAddress

func (tos *TxOutStorageV97) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV97) GetOutboundItems

func (tos *TxOutStorageV97) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV97) TryAddTxOutItem

func (tos *TxOutStorageV97) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV97) UnSafeAddTxOutItem

func (tos *TxOutStorageV97) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageV98

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

TxOutStorageV98 is going to manage all the outgoing tx

func (*TxOutStorageV98) CalcTxOutHeight

func (tos *TxOutStorageV98) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageV98) ClearOutboundItems

func (tos *TxOutStorageV98) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageV98) EndBlock

func (tos *TxOutStorageV98) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageV98) GetBlockOut

func (tos *TxOutStorageV98) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageV98) GetOutboundItemByToAddress

func (tos *TxOutStorageV98) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageV98) GetOutboundItems

func (tos *TxOutStorageV98) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageV98) TryAddTxOutItem

func (tos *TxOutStorageV98) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

TryAddTxOutItem add an outbound tx to block return bool indicate whether the transaction had been added successful or not return error indicate error

func (*TxOutStorageV98) UnSafeAddTxOutItem

func (tos *TxOutStorageV98) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStorageVCUR

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

TxOutStorageVCUR is going to manage all the outgoing tx

func (*TxOutStorageVCUR) CalcTxOutHeight

func (tos *TxOutStorageVCUR) CalcTxOutHeight(ctx cosmos.Context, version semver.Version, toi TxOutItem) (int64, error)

func (*TxOutStorageVCUR) ClearOutboundItems

func (tos *TxOutStorageVCUR) ClearOutboundItems(ctx cosmos.Context)

ClearOutboundItems remove all the tx out items , mostly used for test

func (*TxOutStorageVCUR) EndBlock

func (tos *TxOutStorageVCUR) EndBlock(ctx cosmos.Context, mgr Manager) error

func (*TxOutStorageVCUR) GetBlockOut

func (tos *TxOutStorageVCUR) GetBlockOut(ctx cosmos.Context) (*TxOut, error)

GetBlockOut read the TxOut from kv store

func (*TxOutStorageVCUR) GetOutboundItemByToAddress

func (tos *TxOutStorageVCUR) GetOutboundItemByToAddress(ctx cosmos.Context, to common.Address) []TxOutItem

GetOutboundItemByToAddress read all the outbound items filter by the given to address

func (*TxOutStorageVCUR) GetOutboundItems

func (tos *TxOutStorageVCUR) GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)

GetOutboundItems read all the outbound item from kv store

func (*TxOutStorageVCUR) TryAddTxOutItem

func (tos *TxOutStorageVCUR) TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)

When TryAddTxOutItem returns an error, there should be no state changes from it, including funds movements or fee events from prepareTxOutItem. So, use CacheContext to only commit state changes when cachedTryAddTxOutItem doesn't return an error.

func (*TxOutStorageVCUR) UnSafeAddTxOutItem

func (tos *TxOutStorageVCUR) UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error

UnSafeAddTxOutItem - blindly adds a tx out, skipping vault selection, transaction fee deduction, etc

type TxOutStore

type TxOutStore interface {
	EndBlock(ctx cosmos.Context, mgr Manager) error
	GetBlockOut(ctx cosmos.Context) (*TxOut, error)
	ClearOutboundItems(ctx cosmos.Context)
	GetOutboundItems(ctx cosmos.Context) ([]TxOutItem, error)
	TryAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem, minOut cosmos.Uint) (bool, error)
	UnSafeAddTxOutItem(ctx cosmos.Context, mgr Manager, toi TxOutItem) error
	GetOutboundItemByToAddress(cosmos.Context, common.Address) []TxOutItem
	CalcTxOutHeight(cosmos.Context, semver.Version, TxOutItem) (int64, error)
}

TxOutStore define the method required for TxOutStore

func GetTxOutStore

func GetTxOutStore(version semver.Version, keeper keeper.Keeper, eventMgr EventManager, gasManager GasManager) (TxOutStore, error)

GetTxOutStore will return an implementation of the txout store that

type TypedHandler

type TypedHandler[M cosmos.Msg] interface {
	MsgHandler
	// contains filtered or unexported methods
}

type UnBondHandler

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

UnBondHandler a handler to process unbond request

func NewUnBondHandler

func NewUnBondHandler(mgr Manager) UnBondHandler

NewUnBondHandler create new UnBondHandler

func (UnBondHandler) Run

Run execute the handler

type UnbondMemo

type UnbondMemo = mem.UnbondMemo

type ValidatorManager

type ValidatorManager interface {
	BeginBlock(ctx cosmos.Context, mgr Manager, existingValidators []string) error
	EndBlock(ctx cosmos.Context, mgr Manager) []abci.ValidatorUpdate
	RequestYggReturn(ctx cosmos.Context, node NodeAccount, mgr Manager) error

	NodeAccountPreflightCheck(ctx cosmos.Context, na NodeAccount, constAccessor constants.ConstantValues) (NodeStatus, error)
	// contains filtered or unexported methods
}

ValidatorManager define the method to manage validators

func GetValidatorManager

func GetValidatorManager(version semver.Version, keeper keeper.Keeper, networkMgr NetworkManager, txOutStore TxOutStore, eventMgr EventManager) (ValidatorManager, error)

GetValidatorManager create a new instance of Validator Manager

type ValidatorMgrV103

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

ValidatorMgrV103 is to manage a list of validators , and rotate them

func (*ValidatorMgrV103) BeginBlock

func (vm *ValidatorMgrV103) BeginBlock(ctx cosmos.Context, mgr Manager, existingValidators []string) error

BeginBlock when block begin

func (*ValidatorMgrV103) EndBlock

func (vm *ValidatorMgrV103) EndBlock(ctx cosmos.Context, mgr Manager) []abci.ValidatorUpdate

EndBlock when block commit

func (*ValidatorMgrV103) NodeAccountPreflightCheck

func (vm *ValidatorMgrV103) NodeAccountPreflightCheck(ctx cosmos.Context, na NodeAccount, constAccessor constants.ConstantValues) (NodeStatus, error)

NodeAccountPreflightCheck preflight check to find out what the node account's next status will be

func (*ValidatorMgrV103) RequestYggReturn

func (vm *ValidatorMgrV103) RequestYggReturn(ctx cosmos.Context, node NodeAccount, mgr Manager) error

RequestYggReturn request the node that had been removed (yggdrasil) to return their fund

type ValidatorMgrV106

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

ValidatorMgrV106 is to manage a list of validators , and rotate them

func (*ValidatorMgrV106) BeginBlock

func (vm *ValidatorMgrV106) BeginBlock(ctx cosmos.Context, mgr Manager, existingValidators []string) error

BeginBlock when block begin

func (*ValidatorMgrV106) EndBlock

func (vm *ValidatorMgrV106) EndBlock(ctx cosmos.Context, mgr Manager) []abci.ValidatorUpdate

EndBlock when block commit

func (*ValidatorMgrV106) NodeAccountPreflightCheck

func (vm *ValidatorMgrV106) NodeAccountPreflightCheck(ctx cosmos.Context, na NodeAccount, constAccessor constants.ConstantValues) (NodeStatus, error)

NodeAccountPreflightCheck preflight check to find out what the node account's next status will be

func (*ValidatorMgrV106) RequestYggReturn

func (vm *ValidatorMgrV106) RequestYggReturn(ctx cosmos.Context, node NodeAccount, mgr Manager) error

RequestYggReturn request the node that had been removed (yggdrasil) to return their fund

type ValidatorMgrV109

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

ValidatorMgrV109 is to manage a list of validators , and rotate them

func (*ValidatorMgrV109) BeginBlock

func (vm *ValidatorMgrV109) BeginBlock(ctx cosmos.Context, mgr Manager, existingValidators []string) error

BeginBlock when block begin

func (*ValidatorMgrV109) EndBlock

func (vm *ValidatorMgrV109) EndBlock(ctx cosmos.Context, mgr Manager) []abci.ValidatorUpdate

EndBlock when block commit

func (*ValidatorMgrV109) NodeAccountPreflightCheck

func (vm *ValidatorMgrV109) NodeAccountPreflightCheck(ctx cosmos.Context, na NodeAccount, constAccessor constants.ConstantValues) (NodeStatus, error)

NodeAccountPreflightCheck preflight check to find out what the node account's next status will be

func (*ValidatorMgrV109) RequestYggReturn

func (vm *ValidatorMgrV109) RequestYggReturn(ctx cosmos.Context, node NodeAccount, mgr Manager) error

RequestYggReturn request the node that had been removed (yggdrasil) to return their fund

type ValidatorMgrV110

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

ValidatorMgrV110 is to manage a list of validators , and rotate them

func (*ValidatorMgrV110) BeginBlock

func (vm *ValidatorMgrV110) BeginBlock(ctx cosmos.Context, mgr Manager, existingValidators []string) error

BeginBlock when block begin

func (*ValidatorMgrV110) EndBlock

func (vm *ValidatorMgrV110) EndBlock(ctx cosmos.Context, mgr Manager) []abci.ValidatorUpdate

EndBlock when block commit

func (*ValidatorMgrV110) NodeAccountPreflightCheck

func (vm *ValidatorMgrV110) NodeAccountPreflightCheck(ctx cosmos.Context, na NodeAccount, _ constants.ConstantValues) (NodeStatus, error)

NodeAccountPreflightCheck preflight check to find out what the node account's next status will be

func (*ValidatorMgrV110) RequestYggReturn

func (vm *ValidatorMgrV110) RequestYggReturn(ctx cosmos.Context, node NodeAccount, mgr Manager) error

RequestYggReturn request the node that had been removed (yggdrasil) to return their fund

type ValidatorMgrV112

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

ValidatorMgrV112 is to manage a list of validators , and rotate them

func (*ValidatorMgrV112) BeginBlock

func (vm *ValidatorMgrV112) BeginBlock(ctx cosmos.Context, mgr Manager, existingValidators []string) error

BeginBlock when block begin

func (*ValidatorMgrV112) EndBlock

func (vm *ValidatorMgrV112) EndBlock(ctx cosmos.Context, mgr Manager) []abci.ValidatorUpdate

EndBlock when block commit

func (*ValidatorMgrV112) NodeAccountPreflightCheck

func (vm *ValidatorMgrV112) NodeAccountPreflightCheck(ctx cosmos.Context, na NodeAccount, _ constants.ConstantValues) (NodeStatus, error)

NodeAccountPreflightCheck preflight check to find out what the node account's next status will be

func (*ValidatorMgrV112) RequestYggReturn

func (vm *ValidatorMgrV112) RequestYggReturn(ctx cosmos.Context, node NodeAccount, mgr Manager) error

RequestYggReturn request the node that had been removed (yggdrasil) to return their fund

type ValidatorMgrV116

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

ValidatorMgrV116 is to manage a list of validators , and rotate them

func (*ValidatorMgrV116) BeginBlock

func (vm *ValidatorMgrV116) BeginBlock(ctx cosmos.Context, mgr Manager, existingValidators []string) error

BeginBlock when block begin

func (*ValidatorMgrV116) EndBlock

func (vm *ValidatorMgrV116) EndBlock(ctx cosmos.Context, mgr Manager) []abci.ValidatorUpdate

EndBlock when block commit

func (*ValidatorMgrV116) NodeAccountPreflightCheck

func (vm *ValidatorMgrV116) NodeAccountPreflightCheck(ctx cosmos.Context, na NodeAccount, _ constants.ConstantValues) (NodeStatus, error)

NodeAccountPreflightCheck preflight check to find out what the node account's next status will be

func (*ValidatorMgrV116) RequestYggReturn

func (vm *ValidatorMgrV116) RequestYggReturn(ctx cosmos.Context, node NodeAccount, mgr Manager) error

RequestYggReturn request the node that had been removed (yggdrasil) to return their fund

type ValidatorMgrVCUR

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

ValidatorMgrVCUR is to manage a list of validators , and rotate them

func (*ValidatorMgrVCUR) BeginBlock

func (vm *ValidatorMgrVCUR) BeginBlock(ctx cosmos.Context, mgr Manager, existingValidators []string) error

BeginBlock when block begin

func (*ValidatorMgrVCUR) EndBlock

func (vm *ValidatorMgrVCUR) EndBlock(ctx cosmos.Context, mgr Manager) []abci.ValidatorUpdate

EndBlock when block commit

func (*ValidatorMgrVCUR) NodeAccountPreflightCheck

func (vm *ValidatorMgrVCUR) NodeAccountPreflightCheck(ctx cosmos.Context, na NodeAccount, _ constants.ConstantValues) (NodeStatus, error)

NodeAccountPreflightCheck preflight check to find out what the node account's next status will be

func (*ValidatorMgrVCUR) RequestYggReturn

func (vm *ValidatorMgrVCUR) RequestYggReturn(ctx cosmos.Context, node NodeAccount, mgr Manager) error

RequestYggReturn request the node that had been removed (yggdrasil) to return their fund

type Vault

type Vault = types.Vault

type VaultStatus

type VaultStatus = types.VaultStatus

type Vaults

type Vaults = types.Vaults

type VersionHandler

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

VersionHandler is to handle Version message

func NewVersionHandler

func NewVersionHandler(mgr Manager) VersionHandler

NewVersionHandler create new instance of VersionHandler

func (VersionHandler) Run

Run it the main entry point to execute Version logic

type WithdrawLiquidityHandler

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

WithdrawLiquidityHandler to process withdraw requests

func NewWithdrawLiquidityHandler

func NewWithdrawLiquidityHandler(mgr Manager) WithdrawLiquidityHandler

NewWithdrawLiquidityHandler create a new instance of WithdrawLiquidityHandler to process withdraw request

func (WithdrawLiquidityHandler) Run

Run is the main entry point of withdraw

type WithdrawLiquidityMemo

type WithdrawLiquidityMemo = mem.WithdrawLiquidityMemo

type YggManager

type YggManager interface {
	Fund(ctx cosmos.Context, mgr Manager) error
}

YggManager define method to fund yggdrasil

func GetYggManager

func GetYggManager(version semver.Version, keeper keeper.Keeper) (YggManager, error)

GetYggManager return an implementation of YggManager

type YggMgrV112

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

YggMgrV112 is an implementation of YggManager

func (YggMgrV112) Fund

func (ymgr YggMgrV112) Fund(ctx cosmos.Context, mgr Manager) error

Fund is a method to fund yggdrasil pool

type YggMgrV79

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

YggMgrV79 is an implementation of YggManager

func (YggMgrV79) Fund

func (ymgr YggMgrV79) Fund(ctx cosmos.Context, mgr Manager) error

Fund is a method to fund yggdrasil pool

type YggMgrVCUR

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

YggMgrVCUR is an implementation of YggManager

func (YggMgrVCUR) Fund

func (ymgr YggMgrVCUR) Fund(ctx cosmos.Context, mgr Manager) error

Fund is a method to fund yggdrasil pool

type YggdrasilFundMemo

type YggdrasilFundMemo = mem.YggdrasilFundMemo

type YggdrasilHandler

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

YggdrasilHandler is to process yggdrasil messages When ddchain fund yggdrasil pool , observer should observe two transactions 1. outbound tx from asgard vault 2. inbound tx to yggdrasil vault when yggdrasil pool return fund , observer should observe two transactions as well 1. outbound tx from yggdrasil vault 2. inbound tx to asgard vault

func NewYggdrasilHandler

func NewYggdrasilHandler(mgr Manager) YggdrasilHandler

NewYggdrasilHandler create a new Yggdrasil handler

func (YggdrasilHandler) Run

Run execute the logic in Yggdrasil Handler

type YggdrasilReturnMemo

type YggdrasilReturnMemo = mem.YggdrasilReturnMemo

Source Files

Directories

Path Synopsis
client
cli
v1
Please put all the test related function to here
Please put all the test related function to here

Jump to

Keyboard shortcuts

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