keepers

package
v0.0.0-...-13c6ecf Latest Latest
Warning

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

Go to latest
Published: Jan 18, 2023 License: Apache-2.0 Imports: 99 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

AppModuleBasics returns ModuleBasics for the module BasicManager.

Functions

func KVStoreKeys

func KVStoreKeys() []string

TODO: We need to automate this, by bundling with a module struct...

Types

type AppKeepers

type AppKeepers struct {
	// keepers, by order of initialization
	// "Special" keepers
	ParamsKeeper     *paramskeeper.Keeper
	CapabilityKeeper *capabilitykeeper.Keeper
	CrisisKeeper     *crisiskeeper.Keeper
	UpgradeKeeper    *upgradekeeper.Keeper

	// make scoped keepers public for test purposes
	ScopedIBCKeeper      capabilitykeeper.ScopedKeeper
	ScopedICAHostKeeper  capabilitykeeper.ScopedKeeper
	ScopedTransferKeeper capabilitykeeper.ScopedKeeper
	ScopedWasmKeeper     capabilitykeeper.ScopedKeeper

	// "Normal" keepers
	AccountKeeper        *authkeeper.AccountKeeper
	BankKeeper           *bankkeeper.BaseKeeper
	AuthzKeeper          *authzkeeper.Keeper
	StakingKeeper        *stakingkeeper.Keeper
	DistrKeeper          *distrkeeper.Keeper
	SlashingKeeper       *slashingkeeper.Keeper
	IBCKeeper            *ibckeeper.Keeper
	ICAHostKeeper        *icahostkeeper.Keeper
	TransferKeeper       *ibctransferkeeper.Keeper
	EvidenceKeeper       *evidencekeeper.Keeper
	GAMMKeeper           *gammkeeper.Keeper
	TwapKeeper           *twap.Keeper
	LockupKeeper         *lockupkeeper.Keeper
	EpochsKeeper         *epochskeeper.Keeper
	IncentivesKeeper     *incentiveskeeper.Keeper
	MintKeeper           *mintkeeper.Keeper
	PoolIncentivesKeeper *poolincentiveskeeper.Keeper
	TxFeesKeeper         *txfeeskeeper.Keeper
	SuperfluidKeeper     *superfluidkeeper.Keeper
	GovKeeper            *govkeeper.Keeper
	WasmKeeper           *wasm.Keeper
	ContractKeeper       *wasmkeeper.PermissionedKeeper
	TokenFactoryKeeper   *tokenfactorykeeper.Keeper

	// IBC modules
	// transfer module
	RawIcs20TransferAppModule transfer.AppModule
	RateLimitingICS4Wrapper   *ibcratelimit.ICS4Wrapper
	TransferStack             *ibchooks.IBCMiddleware
	Ics20WasmHooks            *ibchooks.WasmHooks
	HooksICS4Wrapper          ibchooks.ICS4Middleware
	// contains filtered or unexported fields
}

func (*AppKeepers) GenerateKeys

func (appKeepers *AppKeepers) GenerateKeys()

GenerateKeys generates new keys (KV Store, Transient store, and memory store).

func (*AppKeepers) GetKVStoreKey

func (appKeepers *AppKeepers) GetKVStoreKey() map[string]*sdk.KVStoreKey

GetKVStoreKey gets KV Store keys.

func (*AppKeepers) GetKey

func (appKeepers *AppKeepers) GetKey(storeKey string) *sdk.KVStoreKey

GetKey returns the KVStoreKey for the provided store key.

NOTE: This is solely to be used for testing purposes.

func (*AppKeepers) GetMemKey

func (appKeepers *AppKeepers) GetMemKey(storeKey string) *sdk.MemoryStoreKey

GetMemKey returns the MemStoreKey for the provided mem key.

NOTE: This is solely used for testing purposes.

func (*AppKeepers) GetMemoryStoreKey

func (appKeepers *AppKeepers) GetMemoryStoreKey() map[string]*sdk.MemoryStoreKey

GetMemoryStoreKey get memory Store keys.

func (*AppKeepers) GetSubspace

func (appKeepers *AppKeepers) GetSubspace(moduleName string) paramstypes.Subspace

GetSubspace gets existing substore from keeper.

func (*AppKeepers) GetTKey

func (appKeepers *AppKeepers) GetTKey(storeKey string) *sdk.TransientStoreKey

GetTKey returns the TransientStoreKey for the provided store key.

NOTE: This is solely to be used for testing purposes.

func (*AppKeepers) GetTransientStoreKey

func (appKeepers *AppKeepers) GetTransientStoreKey() map[string]*sdk.TransientStoreKey

GetTransientStoreKey gets Transient Store keys.

func (*AppKeepers) InitNormalKeepers

func (appKeepers *AppKeepers) InitNormalKeepers(
	appCodec codec.Codec,
	bApp *baseapp.BaseApp,
	maccPerms map[string][]string,
	wasmDir string,
	wasmConfig wasm.Config,
	wasmEnabledProposals []wasm.ProposalType,
	wasmOpts []wasm.Option,
	blockedAddress map[string]bool,
)

InitNormalKeepers initializes all 'normal' keepers (account, app, bank, auth, staking, distribution, slashing, transfer, gamm, IBC router, pool incentives, governance, mint, txfees keepers).

func (*AppKeepers) InitSpecialKeepers

func (appKeepers *AppKeepers) InitSpecialKeepers(
	appCodec codec.Codec,
	bApp *baseapp.BaseApp,
	wasmDir string,
	cdc *codec.LegacyAmino,
	invCheckPeriod uint,
	skipUpgradeHeights map[int64]bool,
	homePath string,
)

InitSpecialKeepers initiates special keepers (crisis appkeeper, upgradekeeper, params keeper)

func (*AppKeepers) SetupHooks

func (appKeepers *AppKeepers) SetupHooks()

SetupHooks sets up hooks for modules.

func (*AppKeepers) WireICS20PreWasmKeeper

func (appKeepers *AppKeepers) WireICS20PreWasmKeeper(
	appCodec codec.Codec,
	bApp *baseapp.BaseApp)

Create the IBC Transfer Stack from bottom to top:

* SendPacket. Originates from the transferKeeper and and goes up the stack: transferKeeper.SendPacket -> ibc_rate_limit.SendPacket -> ibc_hooks.SendPacket -> channel.SendPacket * RecvPacket, message that originates from core IBC and goes down to app, the flow is the other way channel.RecvPacket -> ibc_hooks.OnRecvPacket -> ibc_rate_limit.OnRecvPacket -> transfer.OnRecvPacket

After this, the wasm keeper is required to be set on both appkeepers.WasmHooks AND appKeepers.RateLimitingICS4Wrapper

Jump to

Keyboard shortcuts

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