baseapp

package
v0.30.0-dev2 Latest Latest
Warning

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

Go to latest
Published: Jan 24, 2019 License: Apache-2.0 Imports: 17 Imported by: 5,796

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.

nolint: golint

Index

Constants

View Source
const (

	// MainStoreKey is the string representation of the main store
	MainStoreKey = "main"
)

Variables

This section is empty.

Functions

func NewQueryRouter

func NewQueryRouter() *queryrouter

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

func NewRouter

func NewRouter() *router

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

func RunForever added in v0.2.0

func RunForever(app abci.Application)

RunForever BasecoinApp execution and cleanup

func SetMinGasPrices

func SetMinGasPrices(gasPricesStr string) func(*BaseApp)

SetMinimumGasPrices returns an option that sets the minimum gas prices on the app.

func SetPruning

func SetPruning(opts sdk.PruningOptions) func(*BaseApp)

SetPruning sets a pruning option on the multistore associated with the app

Types

type BaseApp

type BaseApp struct {
	// initialized on creation
	Logger log.Logger
	// contains filtered or unexported fields
}

BaseApp reflects the ABCI application implementation.

func NewBaseApp

func NewBaseApp(name string, logger log.Logger, db dbm.DB, txDecoder sdk.TxDecoder, options ...func(*BaseApp)) *BaseApp

NewBaseApp returns a reference to an initialized BaseApp.

NOTE: The db is used to store the version number for now. Accepts a user-defined txDecoder Accepts variable number of option functions, which act on the BaseApp to set configuration choices

func (*BaseApp) BeginBlock

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

BeginBlock implements the ABCI application interface.

func (*BaseApp) Check

func (app *BaseApp) Check(tx sdk.Tx) (result sdk.Result)

nolint - Mostly for testing

func (*BaseApp) CheckTx

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

CheckTx implements ABCI CheckTx runs the "basic checks" to see whether or not a transaction can possibly be executed, first decoding, then the ante handler (which checks signatures/fees/ValidateBasic), then finally the route match to see whether a handler exists. CheckTx does not run the actual Msg handler function(s).

func (*BaseApp) Commit

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

Implements ABCI

func (*BaseApp) Deliver

func (app *BaseApp) Deliver(tx sdk.Tx) (result sdk.Result)

nolint

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)

EndBlock implements the ABCI application interface.

func (*BaseApp) FilterPeerByAddrPort

func (app *BaseApp) FilterPeerByAddrPort(info string) abci.ResponseQuery

Filter peers by address / port

func (*BaseApp) FilterPeerByPubKey added in v0.18.0

func (app *BaseApp) FilterPeerByPubKey(info string) abci.ResponseQuery

Filter peers by public key

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 InitChain runs the initialization logic directly on the CommitMultiStore.

func (*BaseApp) IsSealed

func (app *BaseApp) IsSealed() bool

func (*BaseApp) LastBlockHeight

func (app *BaseApp) LastBlockHeight() int64

the last committed 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.KVStoreKey) error

load latest application version panics if called more than once on a running baseapp

func (*BaseApp) LoadVersion

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

load application version panics if called more than once on a running baseapp

func (*BaseApp) MountStore

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

Mount a store to the provided key in the BaseApp multistore, using the default DB

func (*BaseApp) MountStoreWithDB

func (app *BaseApp) MountStoreWithDB(key sdk.StoreKey, typ sdk.StoreType, db dbm.DB)

Mount a store to the provided key in the BaseApp multistore, using a specified DB

func (*BaseApp) MountStores

func (app *BaseApp) MountStores(keys ...*sdk.KVStoreKey)

Mount IAVL or DB stores to the provided keys in the BaseApp multistore

func (*BaseApp) MountStoresTransient added in v0.25.0

func (app *BaseApp) MountStoresTransient(keys ...*sdk.TransientStoreKey)

Mount stores to the provided keys in the BaseApp multistore

func (*BaseApp) Name

func (app *BaseApp) Name() string

BaseApp Name

func (*BaseApp) NewContext

func (app *BaseApp) NewContext(isCheckTx bool, header abci.Header) sdk.Context

NewContext returns a new Context with the correct store, the given header, and nil txBytes.

func (*BaseApp) Query

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

Implements ABCI. Delegates to CommitMultiStore if it implements Queryable

func (*BaseApp) QueryRouter

func (app *BaseApp) QueryRouter() QueryRouter

func (*BaseApp) Router

func (app *BaseApp) Router() Router

func (*BaseApp) Seal

func (app *BaseApp) Seal()

func (*BaseApp) SetAddrPeerFilter

func (app *BaseApp) SetAddrPeerFilter(pf sdk.PeerFilter)

func (*BaseApp) SetAnteHandler

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

func (*BaseApp) SetBeginBlocker

func (app *BaseApp) SetBeginBlocker(beginBlocker sdk.BeginBlocker)

func (*BaseApp) SetCMS

func (app *BaseApp) SetCMS(cms store.CommitMultiStore)

func (*BaseApp) SetCommitMultiStoreTracer

func (app *BaseApp) SetCommitMultiStoreTracer(w io.Writer)

SetCommitMultiStoreTracer sets the store tracer on the BaseApp's underlying CommitMultiStore.

func (*BaseApp) SetDB

func (app *BaseApp) SetDB(db dbm.DB)

func (*BaseApp) SetEndBlocker

func (app *BaseApp) SetEndBlocker(endBlocker sdk.EndBlocker)

func (*BaseApp) SetFauxMerkleMode

func (app *BaseApp) SetFauxMerkleMode()

func (*BaseApp) SetInitChainer

func (app *BaseApp) SetInitChainer(initChainer sdk.InitChainer)

func (*BaseApp) SetName

func (app *BaseApp) SetName(name string)

func (*BaseApp) SetOption

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

Implements ABCI

func (*BaseApp) SetPubKeyPeerFilter added in v0.18.0

func (app *BaseApp) SetPubKeyPeerFilter(pf sdk.PeerFilter)

func (*BaseApp) Simulate

func (app *BaseApp) Simulate(tx sdk.Tx) (result sdk.Result)

nolint - full tx execution

type QueryRouter

type QueryRouter interface {
	AddRoute(r string, h sdk.Querier) (rtr QueryRouter)
	Route(path string) (h sdk.Querier)
}

QueryRouter provides queryables for each query path.

type Router

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

Router provides handlers for each transaction type.

Jump to

Keyboard shortcuts

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