Documentation
¶
Index ¶
- Constants
- Variables
- func GenesisDocFromFile(genDocFile string) (*tmtypes.GenesisDoc, error)
- func GetMaccPerms() map[string][]string
- func MakeCodecs() (codec.Codec, *codec.LegacyAmino)
- func MakeEncodingConfig() params.EncodingConfig
- func MigrateGenesisCmd() *cobra.Command
- func RegisterSwaggerAPI(rtr *mux.Router)
- func SetBech32AddressPrefixesAndBip44CoinTypeAndSeal(config *sdk.Config)
- type App
- type BandApp
- func (app *BandApp) AppCodec() codec.Codec
- func (app *BandApp) BeginBlocker(ctx sdk.Context, req abci.RequestBeginBlock) abci.ResponseBeginBlock
- func (app *BandApp) EndBlocker(ctx sdk.Context, req abci.RequestEndBlock) abci.ResponseEndBlock
- func (app *BandApp) ExportAppStateAndValidators(forZeroHeight bool, jailAllowedAddrs []string) (servertypes.ExportedApp, error)
- func (app *BandApp) GetKey(storeKey string) *sdk.KVStoreKey
- func (app *BandApp) GetMemKey(storeKey string) *sdk.MemoryStoreKey
- func (app *BandApp) GetSubspace(moduleName string) paramstypes.Subspace
- func (app *BandApp) GetTKey(storeKey string) *sdk.TransientStoreKey
- func (app *BandApp) InitChainer(ctx sdk.Context, req abci.RequestInitChain) abci.ResponseInitChain
- func (app *BandApp) InterfaceRegistry() types.InterfaceRegistry
- func (app *BandApp) LegacyAmino() *codec.LegacyAmino
- func (app *BandApp) LoadHeight(height int64) error
- func (app *BandApp) ModuleAccountAddrs() map[string]bool
- func (app *BandApp) Name() string
- func (app *BandApp) RegisterAPIRoutes(apiSvr *api.Server, apiConfig config.APIConfig)
- func (app *BandApp) RegisterTendermintService(clientCtx client.Context)
- func (app *BandApp) RegisterTxService(clientCtx client.Context)
- type GenesisState
- type SimGenesisAccount
Constants ¶
const ( Bech32MainPrefix = "band" Bip44CoinType = 494 )
Variables ¶
var ( // DefaultNodeHome default home directories for the application daemon DefaultNodeHome string // ModuleBasics defines the module BasicManager is in charge of setting up basic, // non-dependant module elements, such as codec registration // and genesis verification. ModuleBasics = module.NewBasicManager( auth.AppModuleBasic{}, genutil.AppModuleBasic{}, bank.AppModuleBasic{}, capability.AppModuleBasic{}, staking.AppModuleBasic{}, mint.AppModuleBasic{}, distr.AppModuleBasic{}, gov.NewAppModuleBasic( paramsclient.ProposalHandler, distrclient.ProposalHandler, upgradeclient.CancelProposalHandler, upgradeclient.CancelProposalHandler, ibcclientclient.UpdateClientProposalHandler, ibcclientclient.UpgradeProposalHandler, ), params.AppModuleBasic{}, crisis.AppModuleBasic{}, slashing.AppModuleBasic{}, feegrantmodule.AppModuleBasic{}, authzmodule.AppModuleBasic{}, ibc.AppModuleBasic{}, upgrade.AppModuleBasic{}, evidence.AppModuleBasic{}, transfer.AppModuleBasic{}, vesting.AppModuleBasic{}, ica.AppModuleBasic{}, oracle.AppModuleBasic{}, ) )
Functions ¶
func GenesisDocFromFile ¶ added in v2.2.0
func GenesisDocFromFile(genDocFile string) (*tmtypes.GenesisDoc, error)
GenesisDocFromFile reads JSON data from a file and unmarshalls it into a GenesisDoc.
func GetMaccPerms ¶
GetMaccPerms returns a mapping of the application's module account permissions.
func MakeCodecs ¶
func MakeCodecs() (codec.Codec, *codec.LegacyAmino)
MakeCodecs constructs the *std.Codec and *codec.LegacyAmino instances used by Gaia. It is useful for tests and clients who do not want to construct the full gaia application
func MakeEncodingConfig ¶
func MakeEncodingConfig() params.EncodingConfig
MakeEncodingConfig creates an EncodingConfig for testing
func MigrateGenesisCmd ¶ added in v2.2.0
MigrateGenesisCmd returns a command to execute genesis state migration. nolint: funlen
func RegisterSwaggerAPI ¶
RegisterSwaggerAPI registers swagger route with API Server
func SetBech32AddressPrefixesAndBip44CoinTypeAndSeal ¶ added in v2.2.0
SetBech32AddressPrefixesAndBip44CoinTypeAndSeal sets the global Bech32 prefixes and HD wallet coin type and seal config.
Types ¶
type App ¶ added in v2.2.0
type App interface {
// The assigned name of the app.
Name() string
// The application types codec.
// NOTE: This shoult be sealed before being returned.
LegacyAmino() *codec.LegacyAmino
// Application updates every begin block.
BeginBlocker(ctx sdk.Context, req abci.RequestBeginBlock) abci.ResponseBeginBlock
// Application updates every end block.
EndBlocker(ctx sdk.Context, req abci.RequestEndBlock) abci.ResponseEndBlock
// Application update at chain (i.e app) initialization.
InitChainer(ctx sdk.Context, req abci.RequestInitChain) abci.ResponseInitChain
// Loads the app at a given height.
LoadHeight(height int64) error
// Exports the state of the application for a genesis file.
ExportAppStateAndValidators(
forZeroHeight bool, jailAllowedAddrs []string,
) (types.ExportedApp, error)
// All the registered module account addreses.
ModuleAccountAddrs() map[string]bool
}
App implements the common methods for a Cosmos SDK-based application specific blockchain.
type BandApp ¶
type BandApp struct {
*baseapp.BaseApp
// keepers
AccountKeeper authkeeper.AccountKeeper
BankKeeper bandbankkeeper.WrappedBankKeeper
CapabilityKeeper *capabilitykeeper.Keeper
StakingKeeper stakingkeeper.Keeper
SlashingKeeper slashingkeeper.Keeper
MintKeeper mintkeeper.Keeper
DistrKeeper distrkeeper.Keeper
GovKeeper govkeeper.Keeper
CrisisKeeper crisiskeeper.Keeper
UpgradeKeeper upgradekeeper.Keeper
ParamsKeeper paramskeeper.Keeper
// IBC Keeper must be a pointer in the app, so we can SetRouter on it correctly
IBCKeeper *ibckeeper.Keeper
ICAHostKeeper icahostkeeper.Keeper
EvidenceKeeper evidencekeeper.Keeper
TransferKeeper ibctransferkeeper.Keeper
FeeGrantKeeper feegrantkeeper.Keeper
AuthzKeeper authzkeeper.Keeper
OracleKeeper oraclekeeper.Keeper
// make scoped keepers public for test purposes
ScopedIBCKeeper capabilitykeeper.ScopedKeeper
ScopedTransferKeeper capabilitykeeper.ScopedKeeper
ScopedICAHostKeeper capabilitykeeper.ScopedKeeper
ScopedOracleKeeper capabilitykeeper.ScopedKeeper
// contains filtered or unexported fields
}
BandApp is the application of BandChain, extended base ABCI application.
func NewBandApp ¶
func NewBandApp( logger log.Logger, db dbm.DB, traceStore io.Writer, loadLatest bool, skipUpgradeHeights map[int64]bool, homePath string, invCheckPeriod uint, encodingConfig bandappparams.EncodingConfig, appOpts servertypes.AppOptions, disableFeelessReports bool, owasmCacheSize uint32, baseAppOptions ...func(*baseapp.BaseApp), ) *BandApp
NewBandApp returns a reference to an initialized BandApp.
func (*BandApp) AppCodec ¶
AppCodec returns Band's app codec.
NOTE: This is solely to be used for testing purposes as it may be desirable for modules to register their own custom testing types.
func (*BandApp) BeginBlocker ¶
func (app *BandApp) BeginBlocker(ctx sdk.Context, req abci.RequestBeginBlock) abci.ResponseBeginBlock
BeginBlocker application updates every begin block.
func (*BandApp) EndBlocker ¶
func (app *BandApp) EndBlocker(ctx sdk.Context, req abci.RequestEndBlock) abci.ResponseEndBlock
EndBlocker application updates every end block.
func (*BandApp) ExportAppStateAndValidators ¶
func (app *BandApp) ExportAppStateAndValidators( forZeroHeight bool, jailAllowedAddrs []string, ) (servertypes.ExportedApp, error)
ExportAppStateAndValidators export the state of band for a genesis file
func (*BandApp) GetKey ¶
func (app *BandApp) 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 (*BandApp) GetMemKey ¶
func (app *BandApp) GetMemKey(storeKey string) *sdk.MemoryStoreKey
GetMemKey returns the MemStoreKey for the provided mem key.
NOTE: This is solely used for testing purposes.
func (*BandApp) GetSubspace ¶
func (app *BandApp) GetSubspace(moduleName string) paramstypes.Subspace
GetSubspace returns a param subspace for a given module name.
NOTE: This is solely to be used for testing purposes.
func (*BandApp) GetTKey ¶
func (app *BandApp) 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 (*BandApp) InitChainer ¶
func (app *BandApp) InitChainer(ctx sdk.Context, req abci.RequestInitChain) abci.ResponseInitChain
InitChainer application update at chain initialization
func (*BandApp) InterfaceRegistry ¶
func (app *BandApp) InterfaceRegistry() types.InterfaceRegistry
InterfaceRegistry returns Band's InterfaceRegistry
func (*BandApp) LegacyAmino ¶
func (app *BandApp) LegacyAmino() *codec.LegacyAmino
LegacyAmino returns BandApp's amino codec.
NOTE: This is solely to be used for testing purposes as it may be desirable for modules to register their own custom testing types.
func (*BandApp) LoadHeight ¶
LoadHeight loads a particular height
func (*BandApp) ModuleAccountAddrs ¶
ModuleAccountAddrs returns all the app's module account addresses.
func (*BandApp) RegisterAPIRoutes ¶
RegisterAPIRoutes registers all application module routes with the provided API server.
func (*BandApp) RegisterTendermintService ¶
RegisterTendermintService implements the Application.RegisterTendermintService method.
func (*BandApp) RegisterTxService ¶
RegisterTxService implements the Application.RegisterTxService method.
type GenesisState ¶
type GenesisState map[string]json.RawMessage
GenesisState defines a type alias for the Band genesis application state.
func NewDefaultGenesisState ¶
func NewDefaultGenesisState() GenesisState
NewDefaultGenesisState generates the default state for the application.
type SimGenesisAccount ¶
type SimGenesisAccount struct {
*authtypes.BaseAccount
// vesting account fields
OriginalVesting sdk.Coins `json:"original_vesting" yaml:"original_vesting"` // total vesting coins upon initialization
DelegatedFree sdk.Coins `json:"delegated_free" yaml:"delegated_free"` // delegated vested coins at time of delegation
DelegatedVesting sdk.Coins `json:"delegated_vesting" yaml:"delegated_vesting"` // delegated vesting coins at time of delegation
StartTime int64 `json:"start_time" yaml:"start_time"` // vesting start time (UNIX Epoch time)
EndTime int64 `json:"end_time" yaml:"end_time"` // vesting end time (UNIX Epoch time)
// module account fields
ModuleName string `json:"module_name" yaml:"module_name"` // name of the module account
ModulePermissions []string `json:"module_permissions" yaml:"module_permissions"` // permissions of module account
}
SimGenesisAccount defines a type that implements the GenesisAccount interface to be used for simulation accounts in the genesis state.
func (SimGenesisAccount) Validate ¶
func (sga SimGenesisAccount) Validate() error
Validate checks for errors on the vesting and module account parameters