baseapp

package
v0.9.0 Latest Latest
Warning

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

Go to latest
Published: Feb 13, 2018 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

Package baseapp contains data structures that provide basic data storage functionality and act as a bridge between the ABCI interface and the SDK abstractions.

BaseApp has no state except the CommitMultiStore you provide upon init.

See examples/basecoin/app/* for usage.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func IsTestAppTx added in v0.9.0

func IsTestAppTx(tx sdk.Tx) bool

func NewRouter

func NewRouter() *router

nolint NewRouter - create new router TODO either make Function unexported or make return type (router) Exported

Types

type BaseApp

type BaseApp struct {

	// unmarshal rawjsonbytes to initialize the application
	// TODO unexpose and call from InitChain
	InitStater sdk.InitStater
	// contains filtered or unexported fields
}

The ABCI application

func NewBaseApp

func NewBaseApp(name string) *BaseApp

Create and name new BaseApp

func (*BaseApp) BeginBlock

func (app *BaseApp) BeginBlock(req abci.RequestBeginBlock) (res abci.ResponseBeginBlock)

Implements ABCI

func (*BaseApp) CheckTx

func (app *BaseApp) CheckTx(txBytes []byte) (res abci.ResponseCheckTx)

Implements ABCI

func (*BaseApp) Commit

func (app *BaseApp) Commit() (res abci.ResponseCommit)

Implements ABCI

func (*BaseApp) DeliverTx

func (app *BaseApp) DeliverTx(txBytes []byte) (res abci.ResponseDeliverTx)

Implements ABCI

func (*BaseApp) EndBlock

func (app *BaseApp) EndBlock(req abci.RequestEndBlock) (res abci.ResponseEndBlock)

Implements ABCI

func (*BaseApp) Info

func (app *BaseApp) Info(req abci.RequestInfo) abci.ResponseInfo

Implements ABCI

func (*BaseApp) InitChain

func (app *BaseApp) InitChain(req abci.RequestInitChain) (res abci.ResponseInitChain)

Implements ABCI

func (*BaseApp) LastBlockHeight

func (app *BaseApp) LastBlockHeight() int64

The last commited block height.

func (*BaseApp) LastCommitID

func (app *BaseApp) LastCommitID() sdk.CommitID

The last CommitID of the multistore.

func (*BaseApp) LoadLatestVersion

func (app *BaseApp) LoadLatestVersion(mainKey sdk.StoreKey) error

TODO add description

func (*BaseApp) LoadVersion

func (app *BaseApp) LoadVersion(version int64, mainKey sdk.StoreKey) error

Load application version

func (*BaseApp) MountStore

func (app *BaseApp) MountStore(key sdk.StoreKey, typ sdk.StoreType)

Mount a store to the provided key in the BaseApp multistore

func (*BaseApp) Name

func (app *BaseApp) Name() string

BaseApp Name

func (*BaseApp) NewContext

func (app *BaseApp) NewContext(isCheckTx bool, txBytes []byte) sdk.Context

NewContext returns a new Context suitable for AnteHandler (and indirectly Handler) processing. NOTE: txBytes may be nil to support TestApp.RunCheckTx and TestApp.RunDeliverTx.

func (*BaseApp) Query

func (app *BaseApp) Query(req abci.RequestQuery) (res abci.ResponseQuery)

Implements ABCI. Delegates to CommitMultiStore if it implements Queryable

func (*BaseApp) Router

func (app *BaseApp) Router() Router

func (*BaseApp) SetDefaultAnteHandler added in v0.9.0

func (app *BaseApp) SetDefaultAnteHandler(ah sdk.AnteHandler)

func (*BaseApp) SetInitStater added in v0.9.0

func (app *BaseApp) SetInitStater(initStater sdk.InitStater)

func (*BaseApp) SetOption

func (app *BaseApp) SetOption(req abci.RequestSetOption) (res abci.ResponseSetOption)

Implements ABCI

func (*BaseApp) SetTxDecoder

func (app *BaseApp) SetTxDecoder(txDecoder sdk.TxDecoder)

nolint

type GenesisDoc added in v0.9.0

type GenesisDoc struct {
	AppState json.RawMessage `json:"app_state,omitempty"`
}

GenesisDoc defines the initial conditions for a tendermint blockchain, in particular its validator set.

func GenesisDocFromFile added in v0.9.0

func GenesisDocFromFile(genDocFile string) (*GenesisDoc, error)

GenesisDocFromFile reads JSON data from a file and unmarshalls it into a GenesisDoc.

type Router

type Router interface {
	AddRoute(r string, h sdk.Handler)
	Route(path string) (h sdk.Handler)
}

Router - TODO add description

type TestApp added in v0.9.0

type TestApp struct {
	*BaseApp

	// These get set as we receive them.
	*abci.ResponseBeginBlock
	*abci.ResponseEndBlock
}

TestApp wraps BaseApp with helper methods, and exposes more functionality than otherwise needed.

func NewTestApp added in v0.9.0

func NewTestApp(bapp *BaseApp) *TestApp

func (*TestApp) CommitMultiStore added in v0.9.0

func (tapp *TestApp) CommitMultiStore() sdk.CommitMultiStore

return the commited multistore

func (*TestApp) MultiStoreCheck added in v0.9.0

func (tapp *TestApp) MultiStoreCheck() sdk.MultiStore

return a cache-wrap CheckTx state of multistore

func (*TestApp) MultiStoreDeliver added in v0.9.0

func (tapp *TestApp) MultiStoreDeliver() sdk.MultiStore

return a cache-wrap DeliverTx state of multistore

func (*TestApp) RunBeginBlock added in v0.9.0

func (tapp *TestApp) RunBeginBlock()

execute BaseApp BeginBlock

func (*TestApp) RunCheckMsg added in v0.9.0

func (tapp *TestApp) RunCheckMsg(msg sdk.Msg) sdk.Result

run tx through CheckTx of TestApp NOTE: Skips authentication by wrapping msg in testTx{}.

func (*TestApp) RunCheckTx added in v0.9.0

func (tapp *TestApp) RunCheckTx(tx sdk.Tx) sdk.Result

run tx through CheckTx of TestApp

func (*TestApp) RunDeliverMsg added in v0.9.0

func (tapp *TestApp) RunDeliverMsg(msg sdk.Msg) sdk.Result

run tx through DeliverTx of TestApp NOTE: Skips authentication by wrapping msg in testTx{}.

func (*TestApp) RunDeliverTx added in v0.9.0

func (tapp *TestApp) RunDeliverTx(tx sdk.Tx) sdk.Result

run tx through DeliverTx of TestApp

Jump to

Keyboard shortcuts

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