Documentation ¶
Index ¶
- Variables
- func DefaultTxDecoder(cdc *wire.Codec) sdk.TxDecoder
- func ErrGenesisFailed(msg string) sdk.Error
- func InitCmd(ctx *server.Context, cdc *codec.Codec) *cobra.Command
- func LinoBlockchainGenState(cdc *wire.Codec, appGenTxs []json.RawMessage) (appState json.RawMessage, err error)
- func LinoBlockchainGenTx(cdc *wire.Codec, pk crypto.PubKey) (appGenTx, cliPrint json.RawMessage, validator tmtypes.GenesisValidator, ...)
- func MakeCodec() *wire.Codec
- type GenesisAccount
- type GenesisAppDeveloper
- type GenesisInfraProvider
- type GenesisParam
- type GenesisState
- type LinoBlockchain
Constants ¶
This section is empty.
Variables ¶
var ( DefaultCLIHome = os.ExpandEnv("$HOME/.linocli") DefaultNodeHome = os.ExpandEnv("$HOME/.lino") )
default home directories for expected binaries
Functions ¶
func DefaultTxDecoder ¶
DefaultTxDecoder - default tx decoder, decode tx before authenticate handler
func InitCmd ¶ added in v0.2.0
InitCmd initializes all files for tendermint and application XXX(yumin): after upgrade-1, we deprecated previous init function and start to use cosmos gaia init.
func LinoBlockchainGenState ¶
func LinoBlockchainGenState(cdc *wire.Codec, appGenTxs []json.RawMessage) (appState json.RawMessage, err error)
LinoBlockchainGenState - default genesis file
func LinoBlockchainGenTx ¶
func LinoBlockchainGenTx(cdc *wire.Codec, pk crypto.PubKey) ( appGenTx, cliPrint json.RawMessage, validator tmtypes.GenesisValidator, err error)
LinoBlockchainGenTx - init genesis account
Types ¶
type GenesisAccount ¶
type GenesisAccount struct { Name string `json:"name"` Coin types.Coin `json:"coin"` ResetKey crypto.PubKey `json:"reset_key"` TransactionKey crypto.PubKey `json:"transaction_key"` AppKey crypto.PubKey `json:"app_key"` IsValidator bool `json:"is_validator"` ValPubKey crypto.PubKey `json:"validator_pub_key"` }
genesis account will get coin to the address and register user if genesis account is validator, it will be added to validator list automatically
type GenesisAppDeveloper ¶
type GenesisAppDeveloper struct { Name string `json:"name"` Deposit types.Coin `json:"deposit"` Website string `json:"web_site"` Description string `json:"description"` AppMetaData string `json:"app_meta_data"` }
GenesisAppDeveloper - register developer in genesis phase
type GenesisInfraProvider ¶
type GenesisInfraProvider struct {
Name string `json:"name"`
}
GenesisInfraProvider - register infra provider in genesis phase
type GenesisParam ¶
type GenesisParam struct { InitFromConfig bool `json:"init_from_config"` param.GlobalAllocationParam param.InfraInternalAllocationParam param.VoteParam param.ProposalParam param.DeveloperParam param.ValidatorParam param.CoinDayParam param.BandwidthParam param.AccountParam param.PostParam param.ReputationParam }
GenesisParam - genesis parameters
type GenesisState ¶
type GenesisState struct { Accounts []GenesisAccount `json:"accounts"` Developers []GenesisAppDeveloper `json:"developers"` Infra []GenesisInfraProvider `json:"infra"` GenesisParam GenesisParam `json:"genesis_param"` InitGlobalMeta globalModel.InitParamList `json:"init_global_meta"` Reputation []byte `json:"reputation"` }
genesis state for blockchain
type LinoBlockchain ¶
type LinoBlockchain struct { *bam.BaseApp // keys to access the KVStore CapKeyMainStore *sdk.KVStoreKey CapKeyAccountStore *sdk.KVStoreKey CapKeyPostStore *sdk.KVStoreKey CapKeyValStore *sdk.KVStoreKey CapKeyVoteStore *sdk.KVStoreKey CapKeyInfraStore *sdk.KVStoreKey CapKeyDeveloperStore *sdk.KVStoreKey CapKeyIBCStore *sdk.KVStoreKey CapKeyGlobalStore *sdk.KVStoreKey CapKeyParamStore *sdk.KVStoreKey CapKeyProposalStore *sdk.KVStoreKey CapKeyReputationStore *sdk.KVStoreKey // contains filtered or unexported fields }
LinoBlockchain - Extended ABCI application
func NewLinoBlockchain ¶
func NewLinoBlockchain( logger log.Logger, db dbm.DB, traceStore io.Writer, baseAppOptions ...func(*bam.BaseApp)) *LinoBlockchain
NewLinoBlockchain - create a Lino Blockchain instance
func (*LinoBlockchain) ExportAppStateAndValidators ¶
func (lb *LinoBlockchain) ExportAppStateAndValidators() (appState json.RawMessage, validators []tmtypes.GenesisValidator, err error)
Custom logic for state export
func (*LinoBlockchain) ImportFromFiles ¶ added in v0.2.0
func (lb *LinoBlockchain) ImportFromFiles(ctx sdk.Context)
ImportFromFiles Custom logic for state export
func (*LinoBlockchain) SetImportRequired ¶ added in v0.2.0
func (lb *LinoBlockchain) SetImportRequired(v bool)
SetImportRequired - set whether import is required in initchainer. This can be done even after seal().