app

package
v0.16.2 Latest Latest
Warning

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

Go to latest
Published: May 10, 2022 License: Apache-2.0 Imports: 126 Imported by: 39

Documentation

Index

Constants

View Source
const (
	// Bech32MainPrefix defines the Bech32 prefix for account addresses
	Bech32MainPrefix = "kava"
	// Bech32PrefixAccPub defines the Bech32 prefix of an account's public key
	Bech32PrefixAccPub = Bech32MainPrefix + "pub"
	// Bech32PrefixValAddr defines the Bech32 prefix of a validator's operator address
	Bech32PrefixValAddr = Bech32MainPrefix + "val" + "oper"
	// Bech32PrefixValPub defines the Bech32 prefix of a validator's operator public key
	Bech32PrefixValPub = Bech32MainPrefix + "val" + "oper" + "pub"
	// Bech32PrefixConsAddr defines the Bech32 prefix of a consensus node address
	Bech32PrefixConsAddr = Bech32MainPrefix + "val" + "cons"
	// Bech32PrefixConsPub defines the Bech32 prefix of a consensus node public key
	Bech32PrefixConsPub = Bech32MainPrefix + "val" + "cons" + "pub"

	Bip44CoinType = 459 // see https://github.com/satoshilabs/slips/blob/master/slip-0044.md
)

Variables

View Source
var MultiSpendPropsalUpgradeTime = time.Date(2022, 2, 3, 16, 0, 0, 0, time.UTC)

Functions

func GeneratePrivKeyAddressPairs added in v0.4.1

func GeneratePrivKeyAddressPairs(n int) (keys []cryptotypes.PrivKey, addrs []sdk.AccAddress)

GeneratePrivKeyAddressPairsFromRand generates (deterministically) a total of n private keys and addresses.

func GetMaccPerms added in v0.3.0

func GetMaccPerms() map[string][]string

GetMaccPerms returns a mapping of the application's module account permissions.

func MakeEncodingConfig added in v0.16.0

func MakeEncodingConfig() params.EncodingConfig

MakeEncodingConfig creates an EncodingConfig and registers the app's types on it.

func RegisterLegacyTxRoutes added in v0.16.0

func RegisterLegacyTxRoutes(clientCtx client.Context, r *mux.Router)

RegisterLegacyTxRoutes registers a legacy tx routes that use amino encoding json

func SetBech32AddressPrefixes

func SetBech32AddressPrefixes(config *sdk.Config)

SetBech32AddressPrefixes sets the global prefix to be used when serializing addresses to bech32 strings.

func SetBip44CoinType added in v0.3.2

func SetBip44CoinType(config *sdk.Config)

SetBip44CoinType sets the global coin type to be used in hierarchical deterministic wallets.

func SetSDKConfig added in v0.16.0

func SetSDKConfig() *sdk.Config

SetSDKConfig configures the global config with kava app specific parameters. It does not seal the config to allow modification in tests.

Types

type App

type App struct {
	*baseapp.BaseApp

	// make scoped keepers public for test purposes
	ScopedIBCKeeper      capabilitykeeper.ScopedKeeper
	ScopedTransferKeeper capabilitykeeper.ScopedKeeper
	// contains filtered or unexported fields
}

App is the Kava ABCI application.

func NewApp

func NewApp(
	logger tmlog.Logger,
	db dbm.DB,
	homePath string,
	traceStore io.Writer,
	encodingConfig kavaparams.EncodingConfig,
	options Options,
	baseAppOptions ...func(*baseapp.BaseApp),
) *App

NewApp returns a reference to an initialized App.

func (*App) AppCodec added in v0.16.0

func (app *App) AppCodec() codec.Codec

AppCodec returns the app's app codec.

func (*App) BeginBlocker

func (app *App) BeginBlocker(ctx sdk.Context, req abci.RequestBeginBlock) abci.ResponseBeginBlock

BeginBlocker contains app specific logic for the BeginBlock abci call.

func (*App) EndBlocker

func (app *App) EndBlocker(ctx sdk.Context, req abci.RequestEndBlock) abci.ResponseEndBlock

EndBlocker contains app specific logic for the EndBlock abci call.

func (*App) ExportAppStateAndValidators

func (app *App) ExportAppStateAndValidators(forZeroHeight bool, jailWhiteList []string,
) (servertypes.ExportedApp, error)

ExportAppStateAndValidators export the state of the app for a genesis file

func (*App) InitChainer added in v0.2.0

func (app *App) InitChainer(ctx sdk.Context, req abci.RequestInitChain) abci.ResponseInitChain

InitChainer contains app specific logic for the InitChain abci call.

func (*App) InterfaceRegistry added in v0.16.0

func (app *App) InterfaceRegistry() types.InterfaceRegistry

InterfaceRegistry returns the app's InterfaceRegistry.

func (*App) LegacyAmino added in v0.16.0

func (app *App) LegacyAmino() *codec.LegacyAmino

LegacyAmino returns the app's amino codec.

func (*App) LoadHeight

func (app *App) LoadHeight(height int64) error

LoadHeight loads the app state for a particular height.

func (*App) ModuleAccountAddrs added in v0.2.0

func (app *App) ModuleAccountAddrs() map[string]bool

ModuleAccountAddrs returns all the app's module account addresses.

func (*App) RegisterAPIRoutes added in v0.16.0

func (app *App) RegisterAPIRoutes(apiSvr *api.Server, apiConfig config.APIConfig)

RegisterAPIRoutes registers all application module routes with the provided API server.

func (*App) RegisterTendermintService added in v0.16.0

func (app *App) RegisterTendermintService(clientCtx client.Context)

RegisterTendermintService implements the Application.RegisterTendermintService method. It registers the standard tendermint grpc endpoints on the app's grpc server.

func (*App) RegisterTxService added in v0.16.0

func (app *App) RegisterTxService(clientCtx client.Context)

RegisterTxService implements the Application.RegisterTxService method. It registers transaction related endpoints on the app's grpc server.

func (*App) SimulationManager added in v0.8.0

func (app *App) SimulationManager() *module.SimulationManager

SimulationManager implements the SimulationApp interface.

type AuthBankGenesisBuilder added in v0.16.0

type AuthBankGenesisBuilder struct {
	AuthGenesis authtypes.GenesisState
	BankGenesis banktypes.GenesisState
}

AuthBankGenesisBuilder is a tool for creating a combined auth and bank genesis state. Helper methods create basic accounts types and add them to a default genesis state. All methods return the builder so method calls can be chained together.

Example:

// create a single account genesis state
builder := NewAuthBankGenesisBuilder().WithSimpleAccount(testUserAddress, testCoins)
genesisState := builder.BuildMarshalled()

func NewAuthBankGenesisBuilder added in v0.16.0

func NewAuthBankGenesisBuilder() *AuthBankGenesisBuilder

NewAuthBankGenesisBuilder creates a AuthBankGenesisBuilder containing default genesis states.

func (*AuthBankGenesisBuilder) BuildMarshalled added in v0.16.0

func (builder *AuthBankGenesisBuilder) BuildMarshalled(cdc codec.JSONCodec) GenesisState

BuildMarshalled assembles the final GenesisState and json encodes it into a generic genesis type.

func (*AuthBankGenesisBuilder) WithAccounts added in v0.16.0

func (builder *AuthBankGenesisBuilder) WithAccounts(account ...authtypes.GenesisAccount) *AuthBankGenesisBuilder

WithAccounts adds accounts of any type to the genesis state.

func (*AuthBankGenesisBuilder) WithBalances added in v0.16.0

func (builder *AuthBankGenesisBuilder) WithBalances(balance ...banktypes.Balance) *AuthBankGenesisBuilder

WithBalances adds balances to the bank genesis state. It does not check the new denom is in the genesis state denom metadata.

func (*AuthBankGenesisBuilder) WithSimpleAccount added in v0.16.0

func (builder *AuthBankGenesisBuilder) WithSimpleAccount(address sdk.AccAddress, balance sdk.Coins) *AuthBankGenesisBuilder

WithSimpleAccount adds a standard account to the genesis state.

func (*AuthBankGenesisBuilder) WithSimpleModuleAccount added in v0.16.0

func (builder *AuthBankGenesisBuilder) WithSimpleModuleAccount(moduleName string, balance sdk.Coins, permissions ...string) *AuthBankGenesisBuilder

WithSimpleModuleAccount adds a module account to the genesis state.

func (*AuthBankGenesisBuilder) WithSimplePeriodicVestingAccount added in v0.16.0

func (builder *AuthBankGenesisBuilder) WithSimplePeriodicVestingAccount(address sdk.AccAddress, balance sdk.Coins, periods vestingtypes.Periods, firstPeriodStartTimestamp int64) *AuthBankGenesisBuilder

WithSimplePeriodicVestingAccount adds a periodic vesting account to the genesis state.

type GenesisState

type GenesisState map[string]json.RawMessage

GenesisState represents the genesis state of the blockchain. It is a map from module names to module genesis states.

func NewDefaultGenesisState

func NewDefaultGenesisState() GenesisState

NewDefaultGenesisState generates the default state for the application.

func NewFundedGenStateWithCoins added in v0.16.0

func NewFundedGenStateWithCoins(cdc codec.JSONCodec, coins []sdk.Coins, addresses []sdk.AccAddress) GenesisState

NewFundedGenStateWithCoins creates a (auth and bank) genesis state populated with accounts from the given addresses and coins.

func NewFundedGenStateWithSameCoins added in v0.16.0

func NewFundedGenStateWithSameCoins(cdc codec.JSONCodec, balance sdk.Coins, addresses []sdk.AccAddress) GenesisState

NewFundedGenStateWithSameCoins creates a (auth and bank) genesis state populated with accounts from the given addresses and balance.

func NewFundedGenStateWithSameCoinsWithModuleAccount added in v0.16.0

func NewFundedGenStateWithSameCoinsWithModuleAccount(cdc codec.JSONCodec, coins sdk.Coins, addresses []sdk.AccAddress, modAcc *authtypes.ModuleAccount) GenesisState

NewFundedGenStateWithSameCoinsWithModuleAccount creates a (auth and bank) genesis state populated with accounts from the given addresses and balance along with an empty module account

type LegacyTxBroadcastRequest added in v0.16.0

type LegacyTxBroadcastRequest struct {
	Tx   legacytx.StdTx `json:"tx"`
	Mode string         `json:"mode"`
}

LegacyTxBroadcastRequest represents a broadcast request with an amino json encoded transaction

func (LegacyTxBroadcastRequest) UnpackInterfaces added in v0.16.0

func (m LegacyTxBroadcastRequest) UnpackInterfaces(unpacker codectypes.AnyUnpacker) error

UnpackInterfaces implements the UnpackInterfacesMessage interface

type Options added in v0.16.0

type Options struct {
	SkipLoadLatest        bool
	SkipUpgradeHeights    map[int64]bool
	SkipGenesisInvariants bool
	InvariantCheckPeriod  uint
	MempoolEnableAuth     bool
	MempoolAuthAddresses  []sdk.AccAddress
}

Options bundles several configuration params for an App. The zero value can be used as a sensible default.

type TestApp added in v0.4.1

type TestApp struct {
	App
}

TestApp is a simple wrapper around an App. It exposes internal keepers for use in integration tests. This file also contains test helpers. Ideally they would be in separate package. Basic Usage:

Create a test app with NewTestApp, then all keepers and their methods can be accessed for test setup and execution.

Advanced Usage:

Some tests call for an app to be initialized with some state. This can be achieved through keeper method calls (ie keeper.SetParams(...)).
However this leads to a lot of duplicated logic similar to InitGenesis methods.
So TestApp.InitializeFromGenesisStates() will call InitGenesis with the default genesis state.
and TestApp.InitializeFromGenesisStates(authState, cdpState) will do the same but overwrite the auth and cdp sections of the default genesis state
Creating the genesis states can be combersome, but helper methods can make it easier such as NewAuthGenStateFromAccounts below.

func NewTestApp added in v0.4.1

func NewTestApp() TestApp

NewTestApp creates a new TestApp

Note, it also sets the sdk config with the app's address prefix, coin type, etc.

func NewTestAppFromSealed added in v0.15.0

func NewTestAppFromSealed() TestApp

NewTestAppFromSealed creates a TestApp without first setting sdk config.

func (TestApp) CheckBalance added in v0.4.1

func (tApp TestApp) CheckBalance(t *testing.T, ctx sdk.Context, owner sdk.AccAddress, expectedCoins sdk.Coins)

CheckBalance requires the account address has the expected amount of coins.

func (TestApp) FundAccount added in v0.16.0

func (tApp TestApp) FundAccount(ctx sdk.Context, addr sdk.AccAddress, amounts sdk.Coins) error

FundAccount is a utility function that funds an account by minting and sending the coins to the address.

func (TestApp) FundModuleAccount added in v0.16.0

func (tApp TestApp) FundModuleAccount(ctx sdk.Context, recipientMod string, amounts sdk.Coins) error

FundModuleAccount is a utility function that funds a module account by minting and sending the coins to the address.

func (TestApp) GetAccountKeeper added in v0.4.1

func (tApp TestApp) GetAccountKeeper() authkeeper.AccountKeeper

nolint

func (TestApp) GetAuctionKeeper added in v0.4.1

func (tApp TestApp) GetAuctionKeeper() auctionkeeper.Keeper

func (TestApp) GetBankKeeper added in v0.4.1

func (tApp TestApp) GetBankKeeper() bankkeeper.Keeper

func (TestApp) GetBep3Keeper added in v0.5.0

func (tApp TestApp) GetBep3Keeper() bep3keeper.Keeper

func (TestApp) GetCDPKeeper added in v0.4.1

func (tApp TestApp) GetCDPKeeper() cdpkeeper.Keeper

func (TestApp) GetCommitteeKeeper added in v0.8.0

func (tApp TestApp) GetCommitteeKeeper() committeekeeper.Keeper

func (TestApp) GetCrisisKeeper added in v0.4.1

func (tApp TestApp) GetCrisisKeeper() crisiskeeper.Keeper

func (TestApp) GetDistrKeeper added in v0.4.1

func (tApp TestApp) GetDistrKeeper() distkeeper.Keeper

func (TestApp) GetGovKeeper added in v0.4.1

func (tApp TestApp) GetGovKeeper() govkeeper.Keeper

func (TestApp) GetHardKeeper added in v0.13.0

func (tApp TestApp) GetHardKeeper() hardkeeper.Keeper

func (TestApp) GetIncentiveKeeper added in v0.8.0

func (tApp TestApp) GetIncentiveKeeper() incentivekeeper.Keeper

func (TestApp) GetIssuanceKeeper added in v0.11.0

func (tApp TestApp) GetIssuanceKeeper() issuancekeeper.Keeper

func (TestApp) GetKavadistKeeper added in v0.5.0

func (tApp TestApp) GetKavadistKeeper() kavadistkeeper.Keeper

func (TestApp) GetMintKeeper added in v0.4.1

func (tApp TestApp) GetMintKeeper() mintkeeper.Keeper

func (TestApp) GetParamsKeeper added in v0.4.1

func (tApp TestApp) GetParamsKeeper() paramskeeper.Keeper

func (TestApp) GetPriceFeedKeeper added in v0.4.1

func (tApp TestApp) GetPriceFeedKeeper() pricefeedkeeper.Keeper

func (TestApp) GetSlashingKeeper added in v0.4.1

func (tApp TestApp) GetSlashingKeeper() slashingkeeper.Keeper

func (TestApp) GetStakingKeeper added in v0.4.1

func (tApp TestApp) GetStakingKeeper() stakingkeeper.Keeper

func (TestApp) GetSwapKeeper added in v0.15.0

func (tApp TestApp) GetSwapKeeper() swapkeeper.Keeper

func (TestApp) InitializeFromGenesisStates added in v0.4.1

func (tApp TestApp) InitializeFromGenesisStates(genesisStates ...GenesisState) TestApp

InitializeFromGenesisStates calls InitChain on the app using the default genesis state, overwitten with any passed in genesis states

func (TestApp) InitializeFromGenesisStatesWithTime added in v0.11.0

func (tApp TestApp) InitializeFromGenesisStatesWithTime(genTime time.Time, genesisStates ...GenesisState) TestApp

InitializeFromGenesisStatesWithTime calls InitChain on the app using the default genesis state, overwitten with any passed in genesis states and genesis Time

func (TestApp) InitializeFromGenesisStatesWithTimeAndChainID added in v0.11.0

func (tApp TestApp) InitializeFromGenesisStatesWithTimeAndChainID(genTime time.Time, chainID string, genesisStates ...GenesisState) TestApp

InitializeFromGenesisStatesWithTimeAndChainID calls InitChain on the app using the default genesis state, overwitten with any passed in genesis states and genesis Time

func (TestApp) NewQueryServerTestHelper added in v0.16.0

func (tApp TestApp) NewQueryServerTestHelper(ctx sdk.Context) *baseapp.QueryServiceTestHelper

NewQueryServerTestHelper creates a new QueryServiceTestHelper that wraps the provided sdk.Context.

Directories

Path Synopsis
Package params defines the simulation parameters for the Kava app.
Package params defines the simulation parameters for the Kava app.

Jump to

Keyboard shortcuts

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