Documentation

Overview

    Package genutil contains a variety of genesis utility functionality for usage within a blockchain application. Namely:

     - Genesis transactions related (gentx)
        - commands for collection and creation of gentxs
    	- initchain processing of gentxs
     - Genesis file validation
     - Tendermint related initialization
    

    Index

    Constants

    This section is empty.

    Variables

    This section is empty.

    Functions

    func CollectTxs

    func CollectTxs(cdc codec.JSONMarshaler, txJSONDecoder sdk.TxDecoder, moniker, genTxsDir string,
    	genDoc tmtypes.GenesisDoc, genBalIterator types.GenesisBalancesIterator,
    ) (appGenTxs []sdk.Tx, persistentPeers string, err error)

      CollectTxs processes and validates application's genesis Txs and returns the list of appGenTxs, and persistent peers required to generate genesis.json.

      func DeliverGenTxs

      func DeliverGenTxs(
      	ctx sdk.Context, genTxs []json.RawMessage,
      	stakingKeeper types.StakingKeeper, deliverTx deliverTxfn,
      	txEncodingConfig client.TxEncodingConfig,
      ) ([]abci.ValidatorUpdate, error)

        DeliverGenTxs iterates over all genesis txs, decodes each into a Tx and invokes the provided deliverTxfn with the decoded Tx. It returns the result of the staking module's ApplyAndReturnValidatorSetUpdates.

        func ExportGenesisFile

        func ExportGenesisFile(genDoc *tmtypes.GenesisDoc, genFile string) error

          ExportGenesisFile creates and writes the genesis configuration to disk. An error is returned if building or writing the configuration to file fails.

          func ExportGenesisFileWithTime

          func ExportGenesisFileWithTime(
          	genFile, chainID string, validators []tmtypes.GenesisValidator,
          	appState json.RawMessage, genTime time.Time,
          ) error

            ExportGenesisFileWithTime creates and writes the genesis configuration to disk. An error is returned if building or writing the configuration to file fails.

            func GenAppStateFromConfig

            func GenAppStateFromConfig(cdc codec.JSONMarshaler, txEncodingConfig client.TxEncodingConfig,
            	config *cfg.Config, initCfg types.InitConfig, genDoc tmtypes.GenesisDoc, genBalIterator types.GenesisBalancesIterator,
            ) (appState json.RawMessage, err error)

              GenAppStateFromConfig gets the genesis app state from the config

              func InitGenesis

              func InitGenesis(
              	ctx sdk.Context, stakingKeeper types.StakingKeeper,
              	deliverTx deliverTxfn, genesisState types.GenesisState,
              	txEncodingConfig client.TxEncodingConfig,
              ) (validators []abci.ValidatorUpdate, err error)

                InitGenesis - initialize accounts and deliver genesis transactions

                func InitializeNodeValidatorFiles

                func InitializeNodeValidatorFiles(config *cfg.Config) (nodeID string, valPubKey cryptotypes.PubKey, err error)

                  InitializeNodeValidatorFiles creates private validator and p2p configuration files.

                  func InitializeNodeValidatorFilesFromMnemonic

                  func InitializeNodeValidatorFilesFromMnemonic(config *cfg.Config, mnemonic string) (nodeID string, valPubKey cryptotypes.PubKey, err error)

                    InitializeNodeValidatorFiles creates private validator and p2p configuration files using the given mnemonic. If no valid mnemonic is given, a random one will be used instead.

                    func NewAppModule

                    func NewAppModule(accountKeeper types.AccountKeeper,
                    	stakingKeeper types.StakingKeeper, deliverTx deliverTxfn,
                    	txEncodingConfig client.TxEncodingConfig,
                    ) module.AppModule

                      NewAppModule creates a new AppModule object

                      func SetGenTxsInAppGenesisState

                      func SetGenTxsInAppGenesisState(
                      	cdc codec.JSONMarshaler, txJSONEncoder sdk.TxEncoder, appGenesisState map[string]json.RawMessage, genTxs []sdk.Tx,
                      ) (map[string]json.RawMessage, error)

                        SetGenTxsInAppGenesisState - sets the genesis transactions in the app genesis state

                        func ValidateAccountInGenesis

                        func ValidateAccountInGenesis(
                        	appGenesisState map[string]json.RawMessage, genBalIterator types.GenesisBalancesIterator,
                        	addr sdk.Address, coins sdk.Coins, cdc codec.JSONMarshaler,
                        ) error

                          ValidateAccountInGenesis checks that the provided account has a sufficient balance in the set of genesis accounts.

                          Types

                          type AppModule

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

                            AppModule implements an application module for the genutil module.

                            func (AppModule) ExportGenesis

                            func (am AppModule) ExportGenesis(_ sdk.Context, cdc codec.JSONMarshaler) json.RawMessage

                              ExportGenesis returns the exported genesis state as raw bytes for the genutil module.

                              func (AppModule) InitGenesis

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

                                InitGenesis performs genesis initialization for the genutil module. It returns no validator updates.

                                type AppModuleBasic

                                type AppModuleBasic struct{}

                                  AppModuleBasic defines the basic application module used by the genutil module.

                                  func (AppModuleBasic) DefaultGenesis

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

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

                                    func (AppModuleBasic) GetQueryCmd

                                    func (AppModuleBasic) GetQueryCmd() *cobra.Command

                                      GetQueryCmd returns no root query command for the genutil module.

                                      func (AppModuleBasic) GetTxCmd

                                      func (AppModuleBasic) GetTxCmd() *cobra.Command

                                        GetTxCmd returns no root tx command for the genutil module.

                                        func (AppModuleBasic) Name

                                        func (AppModuleBasic) Name() string

                                          Name returns the genutil module's name.

                                          func (AppModuleBasic) RegisterGRPCGatewayRoutes

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

                                            RegisterGRPCGatewayRoutes registers the gRPC Gateway routes for the genutil module.

                                            func (AppModuleBasic) RegisterInterfaces

                                            func (b AppModuleBasic) RegisterInterfaces(_ cdctypes.InterfaceRegistry)

                                              RegisterInterfaces registers the module's interface types

                                              func (AppModuleBasic) RegisterLegacyAminoCodec

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

                                                RegisterLegacyAminoCodec registers the genutil module's types on the given LegacyAmino codec.

                                                func (AppModuleBasic) RegisterRESTRoutes

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

                                                  RegisterRESTRoutes registers the REST routes for the genutil module.

                                                  func (AppModuleBasic) ValidateGenesis

                                                  func (b AppModuleBasic) ValidateGenesis(cdc codec.JSONMarshaler, txEncodingConfig client.TxEncodingConfig, bz json.RawMessage) error

                                                    ValidateGenesis performs genesis state validation for the genutil module.

                                                    Directories

                                                    Path Synopsis
                                                    client
                                                    cli
                                                    legacy