Documentation ¶
Index ¶
- Constants
- Variables
- func DefaultStoreLoader(ms sdk.CommitMultiStore) error
- func SetHaltHeight(blockHeight uint64) func(*BaseApp)
- func SetHaltTime(haltTime uint64) func(*BaseApp)
- func SetIAVLCacheSize(size int) func(*BaseApp)
- func SetIAVLDisableFastNode(disable bool) func(*BaseApp)
- func SetIAVLLazyLoading(lazyLoading bool) func(*BaseApp)
- func SetIndexEvents(ie []string) func(*BaseApp)
- func SetInterBlockCache(cache sdk.MultiStorePersistentCache) func(*BaseApp)
- func SetMinGasPrices(gasPricesStr string) func(*BaseApp)
- func SetMinRetainBlocks(minRetainBlocks uint64) func(*BaseApp)
- func SetPruning(opts pruningtypes.PruningOptions) func(*BaseApp)
- func SetSnapshot(snapshotStore *snapshots.Store, opts snapshottypes.SnapshotOptions) func(*BaseApp)
- func SetTrace(trace bool) func(*BaseApp)
- func SplitABCIQueryPath(requestPath string) (path []string)
- func ValidateBlockParams(i interface{}) error
- func ValidateEvidenceParams(i interface{}) error
- func ValidateValidatorParams(i interface{}) error
- type ABCIListener
- type BaseApp
- func (app *BaseApp) AddRunTxRecoveryHandler(handlers ...RecoveryHandler)
- func (app *BaseApp) AppVersion() uint64
- func (app *BaseApp) ApplySnapshotChunk(req abci.RequestApplySnapshotChunk) abci.ResponseApplySnapshotChunk
- func (app *BaseApp) BeginBlock(req abci.RequestBeginBlock) (res abci.ResponseBeginBlock)
- func (app *BaseApp) CheckTx(req abci.RequestCheckTx) abci.ResponseCheckTx
- func (app *BaseApp) Commit() abci.ResponseCommit
- func (app *BaseApp) CommitMultiStore() sdk.CommitMultiStore
- func (app *BaseApp) DeliverTx(req abci.RequestDeliverTx) (res abci.ResponseDeliverTx)
- func (app *BaseApp) EndBlock(req abci.RequestEndBlock) (res abci.ResponseEndBlock)
- func (app *BaseApp) FilterPeerByAddrPort(info string) abci.ResponseQuery
- func (app *BaseApp) FilterPeerByID(info string) abci.ResponseQuery
- func (app *BaseApp) GRPCQueryRouter() *GRPCQueryRouter
- func (app *BaseApp) GetBlockRetentionHeight(commitHeight int64) int64
- func (app *BaseApp) GetConsensusParams(ctx sdk.Context) *abci.ConsensusParams
- func (app *BaseApp) GetContextForDeliverTx(txBytes []byte) sdk.Context
- func (app *BaseApp) Info(req abci.RequestInfo) abci.ResponseInfo
- func (app *BaseApp) Init() error
- func (app *BaseApp) InitChain(req abci.RequestInitChain) (res abci.ResponseInitChain)
- func (app *BaseApp) IsSealed() bool
- func (app *BaseApp) LastBlockHeight() int64
- func (app *BaseApp) LastCommitID() storetypes.CommitID
- func (app *BaseApp) ListSnapshots(req abci.RequestListSnapshots) abci.ResponseListSnapshots
- func (app *BaseApp) LoadLatestVersion() error
- func (app *BaseApp) LoadSnapshotChunk(req abci.RequestLoadSnapshotChunk) abci.ResponseLoadSnapshotChunk
- func (app *BaseApp) LoadVersion(version int64) error
- func (app *BaseApp) Logger() log.Logger
- func (app *BaseApp) MountKVStores(keys map[string]*storetypes.KVStoreKey)
- func (app *BaseApp) MountMemoryStores(keys map[string]*storetypes.MemoryStoreKey)
- func (app *BaseApp) MountStore(key storetypes.StoreKey, typ storetypes.StoreType)
- func (app *BaseApp) MountStores(keys ...storetypes.StoreKey)
- func (app *BaseApp) MountTransientStores(keys map[string]*storetypes.TransientStoreKey)
- func (app *BaseApp) MsgServiceRouter() *MsgServiceRouter
- func (app *BaseApp) Name() string
- func (app *BaseApp) NewContext(isCheckTx bool, header tmproto.Header) sdk.Context
- func (app *BaseApp) NewUncachedContext(isCheckTx bool, header tmproto.Header) sdk.Context
- func (app *BaseApp) OfferSnapshot(req abci.RequestOfferSnapshot) abci.ResponseOfferSnapshot
- func (app *BaseApp) Query(req abci.RequestQuery) (res abci.ResponseQuery)
- func (app *BaseApp) QueryRouter() sdk.QueryRouter
- func (app *BaseApp) RegisterGRPCServer(server gogogrpc.Server)
- func (app *BaseApp) Router() sdk.Router
- func (app *BaseApp) Seal()
- func (app *BaseApp) SetAddrPeerFilter(pf sdk.PeerFilter)
- func (app *BaseApp) SetAnteHandler(ah sdk.AnteHandler)
- func (app *BaseApp) SetBeginBlocker(beginBlocker sdk.BeginBlocker)
- func (app *BaseApp) SetCMS(cms store.CommitMultiStore)
- func (app *BaseApp) SetCommitMultiStoreTracer(w io.Writer)
- func (app *BaseApp) SetDB(db dbm.DB)
- func (app *BaseApp) SetEndBlocker(endBlocker sdk.EndBlocker)
- func (app *BaseApp) SetFauxMerkleMode()
- func (app *BaseApp) SetIDPeerFilter(pf sdk.PeerFilter)
- func (app *BaseApp) SetInitChainer(initChainer sdk.InitChainer)
- func (app *BaseApp) SetInterfaceRegistry(registry types.InterfaceRegistry)
- func (app *BaseApp) SetMsgServiceRouter(msgServiceRouter *MsgServiceRouter)
- func (app *BaseApp) SetName(name string)
- func (app *BaseApp) SetOption(req abci.RequestSetOption) (res abci.ResponseSetOption)
- func (app *BaseApp) SetParamStore(ps ParamStore)
- func (app *BaseApp) SetPostHandler(ph sdk.AnteHandler)
- func (app *BaseApp) SetProtocolVersion(v uint64)
- func (app *BaseApp) SetQueryMultiStore(ms sdk.MultiStore)
- func (app *BaseApp) SetRouter(router sdk.Router)
- func (app *BaseApp) SetSnapshot(snapshotStore *snapshots.Store, opts snapshottypes.SnapshotOptions)
- func (app *BaseApp) SetStoreLoader(loader StoreLoader)
- func (app *BaseApp) SetStreamingService(s StreamingService)
- func (app *BaseApp) SetVersion(v string)
- func (app *BaseApp) SimCheck(txEncoder sdk.TxEncoder, tx sdk.Tx) (sdk.GasInfo, *sdk.Result, error)
- func (app *BaseApp) SimDeliver(txEncoder sdk.TxEncoder, tx sdk.Tx) (sdk.GasInfo, *sdk.Result, error)
- func (app *BaseApp) Simulate(txBytes []byte) (sdk.GasInfo, *sdk.Result, error)
- func (app *BaseApp) SnapshotManager() *snapshots.Manager
- func (app *BaseApp) StoreConsensusParams(ctx sdk.Context, cp *abci.ConsensusParams)
- func (app *BaseApp) Trace() bool
- func (app *BaseApp) Version() string
- type GRPCQueryHandler
- type GRPCQueryRouter
- type MsgServiceHandler
- type MsgServiceRouter
- func (msr *MsgServiceRouter) Handler(msg sdk.Msg) MsgServiceHandler
- func (msr *MsgServiceRouter) HandlerByTypeURL(typeURL string) MsgServiceHandler
- func (msr *MsgServiceRouter) RegisterService(sd *grpc.ServiceDesc, handler interface{})
- func (msr *MsgServiceRouter) SetInterfaceRegistry(interfaceRegistry codectypes.InterfaceRegistry)
- type ParamStore
- type QueryRouter
- type QueryServiceTestHelper
- type RecoveryHandler
- type Router
- type StoreLoader
- type StreamingService
Constants ¶
const ( QueryPathApp = "app" QueryPathCustom = "custom" QueryPathP2P = "p2p" QueryPathStore = "store" )
Supported ABCI Query prefixes
const Paramspace = "baseapp"
Paramspace defines the parameter subspace to be used for the paramstore.
Variables ¶
var ( ParamStoreKeyBlockParams = []byte("BlockParams") ParamStoreKeyEvidenceParams = []byte("EvidenceParams") ParamStoreKeyValidatorParams = []byte("ValidatorParams") )
Parameter store keys for all the consensus parameter types.
Functions ¶
func DefaultStoreLoader ¶
func DefaultStoreLoader(ms sdk.CommitMultiStore) error
DefaultStoreLoader will be used by default and loads the latest version
func SetHaltHeight ¶
SetHaltHeight returns a BaseApp option function that sets the halt block height.
func SetHaltTime ¶
SetHaltTime returns a BaseApp option function that sets the halt block time.
func SetIAVLCacheSize ¶
SetIAVLCacheSize provides a BaseApp option function that sets the size of IAVL cache.
func SetIAVLDisableFastNode ¶
SetIAVLDisableFastNode enables(false)/disables(true) fast node usage from the IAVL store.
func SetIAVLLazyLoading ¶
SetIAVLLazyLoading enables/disables lazy loading of the IAVL store.
func SetIndexEvents ¶
SetIndexEvents provides a BaseApp option function that sets the events to index.
func SetInterBlockCache ¶
func SetInterBlockCache(cache sdk.MultiStorePersistentCache) func(*BaseApp)
SetInterBlockCache provides a BaseApp option function that sets the inter-block cache.
func SetMinGasPrices ¶
SetMinGasPrices returns an option that sets the minimum gas prices on the app.
func SetMinRetainBlocks ¶
SetMinRetainBlocks returns a BaseApp option function that sets the minimum block retention height value when determining which heights to prune during ABCI Commit.
func SetPruning ¶
func SetPruning(opts pruningtypes.PruningOptions) func(*BaseApp)
SetPruning sets a pruning option on the multistore associated with the app
func SetSnapshot ¶
func SetSnapshot(snapshotStore *snapshots.Store, opts snapshottypes.SnapshotOptions) func(*BaseApp)
SetSnapshot sets the snapshot store.
func SplitABCIQueryPath ¶
SplitABCIQueryPath splits a string path using the delimiter '/'.
e.g. "this/is/funny" becomes []string{"this", "is", "funny"}
func ValidateBlockParams ¶
func ValidateBlockParams(i interface{}) error
ValidateBlockParams defines a stateless validation on BlockParams. This function is called whenever the parameters are updated or stored.
func ValidateEvidenceParams ¶
func ValidateEvidenceParams(i interface{}) error
ValidateEvidenceParams defines a stateless validation on EvidenceParams. This function is called whenever the parameters are updated or stored.
func ValidateValidatorParams ¶
func ValidateValidatorParams(i interface{}) error
ValidateValidatorParams defines a stateless validation on ValidatorParams. This function is called whenever the parameters are updated or stored.
Types ¶
type ABCIListener ¶
type ABCIListener interface { // ListenBeginBlock updates the streaming service with the latest BeginBlock messages ListenBeginBlock(ctx context.Context, req abci.RequestBeginBlock, res abci.ResponseBeginBlock) error // ListenEndBlock updates the steaming service with the latest EndBlock messages ListenEndBlock(ctx context.Context, req abci.RequestEndBlock, res abci.ResponseEndBlock) error // ListenDeliverTx updates the steaming service with the latest DeliverTx messages ListenDeliverTx(ctx context.Context, req abci.RequestDeliverTx, res abci.ResponseDeliverTx) error // ListenCommit updates the steaming service with the latest Commit event ListenCommit(ctx context.Context, res abci.ResponseCommit) error }
ABCIListener interface used to hook into the ABCI message processing of the BaseApp. the error results are propagated to consensus state machine, if you don't want to affect consensus, handle the errors internally and always return `nil` in these APIs.
type BaseApp ¶
type BaseApp struct {
// 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. It accepts a variadic number of option functions, which act on the BaseApp to set configuration choices.
NOTE: The db is used to store the version number for now.
func (*BaseApp) AddRunTxRecoveryHandler ¶
func (app *BaseApp) AddRunTxRecoveryHandler(handlers ...RecoveryHandler)
AddRunTxRecoveryHandler adds custom app.runTx method panic handlers.
func (*BaseApp) AppVersion ¶
AppVersion returns the application's protocol version.
func (*BaseApp) ApplySnapshotChunk ¶
func (app *BaseApp) ApplySnapshotChunk(req abci.RequestApplySnapshotChunk) abci.ResponseApplySnapshotChunk
ApplySnapshotChunk implements the ABCI interface. It delegates to app.snapshotManager if set.
func (*BaseApp) BeginBlock ¶
func (app *BaseApp) BeginBlock(req abci.RequestBeginBlock) (res abci.ResponseBeginBlock)
BeginBlock implements the ABCI application interface.
func (*BaseApp) CheckTx ¶
func (app *BaseApp) CheckTx(req abci.RequestCheckTx) abci.ResponseCheckTx
CheckTx implements the ABCI interface and executes a tx in CheckTx mode. In CheckTx mode, messages are not executed. This means messages are only validated and only the AnteHandler is executed. State is persisted to the BaseApp's internal CheckTx state if the AnteHandler passes. Otherwise, the ResponseCheckTx will contain releveant error information. Regardless of tx execution outcome, the ResponseCheckTx will contain relevant gas execution context.
func (*BaseApp) Commit ¶
func (app *BaseApp) Commit() abci.ResponseCommit
Commit implements the ABCI interface. It will commit all state that exists in the deliver state's multi-store and includes the resulting commit ID in the returned abci.ResponseCommit. Commit will set the check state based on the latest header and reset the deliver state. Also, if a non-zero halt height is defined in config, Commit will execute a deferred function call to check against that height and gracefully halt if it matches the latest committed height.
func (*BaseApp) CommitMultiStore ¶
func (app *BaseApp) CommitMultiStore() sdk.CommitMultiStore
CommitMultiStore returns the root multi-store. App constructor can use this to access the `cms`. UNSAFE: must not be used during the abci life cycle.
func (*BaseApp) DeliverTx ¶
func (app *BaseApp) DeliverTx(req abci.RequestDeliverTx) (res abci.ResponseDeliverTx)
DeliverTx implements the ABCI interface and executes a tx in DeliverTx mode. State only gets persisted if all messages are valid and get executed successfully. Otherwise, the ResponseDeliverTx will contain releveant error information. Regardless of tx execution outcome, the ResponseDeliverTx will contain relevant gas execution context.
func (*BaseApp) EndBlock ¶
func (app *BaseApp) EndBlock(req abci.RequestEndBlock) (res abci.ResponseEndBlock)
EndBlock implements the ABCI interface.
func (*BaseApp) FilterPeerByAddrPort ¶
func (app *BaseApp) FilterPeerByAddrPort(info string) abci.ResponseQuery
FilterPeerByAddrPort filters peers by address/port.
func (*BaseApp) FilterPeerByID ¶
func (app *BaseApp) FilterPeerByID(info string) abci.ResponseQuery
FilterPeerByID filters peers by node ID.
func (*BaseApp) GRPCQueryRouter ¶
func (app *BaseApp) GRPCQueryRouter() *GRPCQueryRouter
GRPCQueryRouter returns the GRPCQueryRouter of a BaseApp.
func (*BaseApp) GetBlockRetentionHeight ¶
GetBlockRetentionHeight returns the height for which all blocks below this height are pruned from Tendermint. Given a commitment height and a non-zero local minRetainBlocks configuration, the retentionHeight is the smallest height that satisfies:
- Unbonding (safety threshold) time: The block interval in which validators can be economically punished for misbehavior. Blocks in this interval must be auditable e.g. by the light client.
- Logical store snapshot interval: The block interval at which the underlying logical store database is persisted to disk, e.g. every 10000 heights. Blocks since the last IAVL snapshot must be available for replay on application restart.
- State sync snapshots: Blocks since the oldest available snapshot must be available for state sync nodes to catch up (oldest because a node may be restoring an old snapshot while a new snapshot was taken).
- Local (minRetainBlocks) config: Archive nodes may want to retain more or all blocks, e.g. via a local config option min-retain-blocks. There may also be a need to vary retention for other nodes, e.g. sentry nodes which do not need historical blocks.
func (*BaseApp) GetConsensusParams ¶
func (app *BaseApp) GetConsensusParams(ctx sdk.Context) *abci.ConsensusParams
GetConsensusParams returns the current consensus parameters from the BaseApp's ParamStore. If the BaseApp has no ParamStore defined, nil is returned.
func (*BaseApp) GetContextForDeliverTx ¶
func (*BaseApp) Info ¶
func (app *BaseApp) Info(req abci.RequestInfo) abci.ResponseInfo
Info implements the ABCI interface.
func (*BaseApp) Init ¶
Init initializes the app. It seals the app, preventing any further modifications. In addition, it validates the app against the earlier provided settings. Returns an error if validation fails. nil otherwise. Panics if the app is already sealed.
func (*BaseApp) InitChain ¶
func (app *BaseApp) InitChain(req abci.RequestInitChain) (res abci.ResponseInitChain)
InitChain implements the ABCI interface. It runs the initialization logic directly on the CommitMultiStore.
func (*BaseApp) LastBlockHeight ¶
LastBlockHeight returns the last committed block height.
func (*BaseApp) LastCommitID ¶
func (app *BaseApp) LastCommitID() storetypes.CommitID
LastCommitID returns the last CommitID of the multistore.
func (*BaseApp) ListSnapshots ¶
func (app *BaseApp) ListSnapshots(req abci.RequestListSnapshots) abci.ResponseListSnapshots
ListSnapshots implements the ABCI interface. It delegates to app.snapshotManager if set.
func (*BaseApp) LoadLatestVersion ¶
LoadLatestVersion loads the latest application version. It will panic if called more than once on a running BaseApp.
func (*BaseApp) LoadSnapshotChunk ¶
func (app *BaseApp) LoadSnapshotChunk(req abci.RequestLoadSnapshotChunk) abci.ResponseLoadSnapshotChunk
LoadSnapshotChunk implements the ABCI interface. It delegates to app.snapshotManager if set.
func (*BaseApp) LoadVersion ¶
LoadVersion loads the BaseApp application version. It will panic if called more than once on a running baseapp.
func (*BaseApp) MountKVStores ¶
func (app *BaseApp) MountKVStores(keys map[string]*storetypes.KVStoreKey)
MountKVStores mounts all IAVL or DB stores to the provided keys in the BaseApp multistore.
func (*BaseApp) MountMemoryStores ¶
func (app *BaseApp) MountMemoryStores(keys map[string]*storetypes.MemoryStoreKey)
MountMemoryStores mounts all in-memory KVStores with the BaseApp's internal commit multi-store.
func (*BaseApp) MountStore ¶
func (app *BaseApp) MountStore(key storetypes.StoreKey, typ storetypes.StoreType)
MountStore mounts a store to the provided key in the BaseApp multistore, using the default DB.
func (*BaseApp) MountStores ¶
func (app *BaseApp) MountStores(keys ...storetypes.StoreKey)
MountStores mounts all IAVL or DB stores to the provided keys in the BaseApp multistore.
func (*BaseApp) MountTransientStores ¶
func (app *BaseApp) MountTransientStores(keys map[string]*storetypes.TransientStoreKey)
MountTransientStores mounts all transient stores to the provided keys in the BaseApp multistore.
func (*BaseApp) MsgServiceRouter ¶
func (app *BaseApp) MsgServiceRouter() *MsgServiceRouter
MsgServiceRouter returns the MsgServiceRouter of a BaseApp.
func (*BaseApp) NewContext ¶
Context with current {check, deliver}State of the app used by tests.
func (*BaseApp) NewUncachedContext ¶
func (*BaseApp) OfferSnapshot ¶
func (app *BaseApp) OfferSnapshot(req abci.RequestOfferSnapshot) abci.ResponseOfferSnapshot
OfferSnapshot implements the ABCI interface. It delegates to app.snapshotManager if set.
func (*BaseApp) Query ¶
func (app *BaseApp) Query(req abci.RequestQuery) (res abci.ResponseQuery)
Query implements the ABCI interface. It delegates to CommitMultiStore if it implements Queryable.
func (*BaseApp) QueryRouter ¶
func (app *BaseApp) QueryRouter() sdk.QueryRouter
QueryRouter returns the QueryRouter of a BaseApp.
func (*BaseApp) RegisterGRPCServer ¶
RegisterGRPCServer registers gRPC services directly with the gRPC server.
func (*BaseApp) Seal ¶
func (app *BaseApp) Seal()
Seal seals a BaseApp. It prohibits any further modifications to a BaseApp.
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 ¶
SetCommitMultiStoreTracer sets the store tracer on the BaseApp's underlying CommitMultiStore.
func (*BaseApp) SetEndBlocker ¶
func (app *BaseApp) SetEndBlocker(endBlocker sdk.EndBlocker)
func (*BaseApp) SetFauxMerkleMode ¶
func (app *BaseApp) SetFauxMerkleMode()
func (*BaseApp) SetIDPeerFilter ¶
func (app *BaseApp) SetIDPeerFilter(pf sdk.PeerFilter)
func (*BaseApp) SetInitChainer ¶
func (app *BaseApp) SetInitChainer(initChainer sdk.InitChainer)
func (*BaseApp) SetInterfaceRegistry ¶
func (app *BaseApp) SetInterfaceRegistry(registry types.InterfaceRegistry)
SetInterfaceRegistry sets the InterfaceRegistry.
func (*BaseApp) SetMsgServiceRouter ¶
func (app *BaseApp) SetMsgServiceRouter(msgServiceRouter *MsgServiceRouter)
SetMsgServiceRouter sets the MsgServiceRouter of a BaseApp.
func (*BaseApp) SetOption ¶
func (app *BaseApp) SetOption(req abci.RequestSetOption) (res abci.ResponseSetOption)
SetOption implements the ABCI interface.
func (*BaseApp) SetParamStore ¶
func (app *BaseApp) SetParamStore(ps ParamStore)
SetParamStore sets a parameter store on the BaseApp.
func (*BaseApp) SetPostHandler ¶
func (app *BaseApp) SetPostHandler(ph sdk.AnteHandler)
func (*BaseApp) SetProtocolVersion ¶
SetProtocolVersion sets the application's protocol version
func (*BaseApp) SetQueryMultiStore ¶
func (app *BaseApp) SetQueryMultiStore(ms sdk.MultiStore)
SetQueryMultiStore set a alternative MultiStore implementation to support grpc query service.
func (*BaseApp) SetSnapshot ¶
func (app *BaseApp) SetSnapshot(snapshotStore *snapshots.Store, opts snapshottypes.SnapshotOptions)
SetSnapshot sets the snapshot store and options.
func (*BaseApp) SetStoreLoader ¶
func (app *BaseApp) SetStoreLoader(loader StoreLoader)
SetStoreLoader allows us to customize the rootMultiStore initialization.
func (*BaseApp) SetStreamingService ¶
func (app *BaseApp) SetStreamingService(s StreamingService)
SetStreamingService is used to set a streaming service into the BaseApp hooks and load the listeners into the multistore
func (*BaseApp) SetVersion ¶
SetVersion sets the application's version string.
func (*BaseApp) SimCheck ¶
SimCheck defines a CheckTx helper function that used in tests and simulations.
func (*BaseApp) SimDeliver ¶
func (*BaseApp) SnapshotManager ¶
SnapshotManager returns the snapshot manager. application use this to register extra extension snapshotters.
func (*BaseApp) StoreConsensusParams ¶
func (app *BaseApp) StoreConsensusParams(ctx sdk.Context, cp *abci.ConsensusParams)
StoreConsensusParams sets the consensus parameters to the baseapp's param store.
type GRPCQueryHandler ¶
type GRPCQueryHandler = func(ctx sdk.Context, req abci.RequestQuery) (abci.ResponseQuery, error)
GRPCQueryHandler defines a function type which handles ABCI Query requests using gRPC
type GRPCQueryRouter ¶
type GRPCQueryRouter struct {
// contains filtered or unexported fields
}
GRPCQueryRouter routes ABCI Query requests to GRPC handlers
func NewGRPCQueryRouter ¶
func NewGRPCQueryRouter() *GRPCQueryRouter
NewGRPCQueryRouter creates a new GRPCQueryRouter
func (*GRPCQueryRouter) RegisterService ¶
func (qrt *GRPCQueryRouter) RegisterService(sd *grpc.ServiceDesc, handler interface{})
RegisterService implements the gRPC Server.RegisterService method. sd is a gRPC service description, handler is an object which implements that gRPC service/
This functions PANICS: - if a protobuf service is registered twice.
func (*GRPCQueryRouter) Route ¶
func (qrt *GRPCQueryRouter) Route(path string) GRPCQueryHandler
Route returns the GRPCQueryHandler for a given query route path or nil if not found
func (*GRPCQueryRouter) SetInterfaceRegistry ¶
func (qrt *GRPCQueryRouter) SetInterfaceRegistry(interfaceRegistry codectypes.InterfaceRegistry)
SetInterfaceRegistry sets the interface registry for the router. This will also register the interface reflection gRPC service.
type MsgServiceHandler ¶
MsgServiceHandler defines a function type which handles Msg service message.
type MsgServiceRouter ¶
type MsgServiceRouter struct {
// contains filtered or unexported fields
}
MsgServiceRouter routes fully-qualified Msg service methods to their handler.
func NewMsgServiceRouter ¶
func NewMsgServiceRouter() *MsgServiceRouter
NewMsgServiceRouter creates a new MsgServiceRouter.
func (*MsgServiceRouter) Handler ¶
func (msr *MsgServiceRouter) Handler(msg sdk.Msg) MsgServiceHandler
Handler returns the MsgServiceHandler for a given msg or nil if not found.
func (*MsgServiceRouter) HandlerByTypeURL ¶
func (msr *MsgServiceRouter) HandlerByTypeURL(typeURL string) MsgServiceHandler
HandlerByTypeURL returns the MsgServiceHandler for a given query route path or nil if not found.
func (*MsgServiceRouter) RegisterService ¶
func (msr *MsgServiceRouter) RegisterService(sd *grpc.ServiceDesc, handler interface{})
RegisterService implements the gRPC Server.RegisterService method. sd is a gRPC service description, handler is an object which implements that gRPC service.
This function PANICs:
- if it is called before the service `Msg`s have been registered using RegisterInterfaces,
- or if a service is being registered twice.
func (*MsgServiceRouter) SetInterfaceRegistry ¶
func (msr *MsgServiceRouter) SetInterfaceRegistry(interfaceRegistry codectypes.InterfaceRegistry)
SetInterfaceRegistry sets the interface registry for the router.
type ParamStore ¶
type ParamStore interface { Get(ctx sdk.Context, key []byte, ptr interface{}) Has(ctx sdk.Context, key []byte) bool Set(ctx sdk.Context, key []byte, param interface{}) }
ParamStore defines the interface the parameter store used by the BaseApp must fulfill.
type QueryRouter ¶
type QueryRouter struct {
// contains filtered or unexported fields
}
func NewQueryRouter ¶
func NewQueryRouter() *QueryRouter
NewQueryRouter returns a reference to a new QueryRouter.
func (*QueryRouter) AddRoute ¶
func (qrt *QueryRouter) AddRoute(route string, q sdk.Querier) sdk.QueryRouter
AddRoute adds a query path to the router with a given Querier. It will panic if a duplicate route is given. The route must be alphanumeric.
type QueryServiceTestHelper ¶
type QueryServiceTestHelper struct { *GRPCQueryRouter Ctx sdk.Context }
QueryServiceTestHelper provides a helper for making grpc query service rpc calls in unit tests. It implements both the grpc Server and ClientConn interfaces needed to register a query service server and create a query service client.
func NewQueryServerTestHelper ¶
func NewQueryServerTestHelper(ctx sdk.Context, interfaceRegistry types.InterfaceRegistry) *QueryServiceTestHelper
NewQueryServerTestHelper creates a new QueryServiceTestHelper that wraps the provided sdk.Context
func (*QueryServiceTestHelper) Invoke ¶
func (q *QueryServiceTestHelper) Invoke(_ gocontext.Context, method string, args, reply interface{}, _ ...grpc.CallOption) error
Invoke implements the grpc ClientConn.Invoke method
func (*QueryServiceTestHelper) NewStream ¶
func (q *QueryServiceTestHelper) NewStream(gocontext.Context, *grpc.StreamDesc, string, ...grpc.CallOption) (grpc.ClientStream, error)
NewStream implements the grpc ClientConn.NewStream method
type RecoveryHandler ¶
type RecoveryHandler func(recoveryObj interface{}) error
RecoveryHandler handles recovery() object. Return a non-nil error if recoveryObj was processed. Return nil if recoveryObj was not processed.
type Router ¶
type Router struct {
// contains filtered or unexported fields
}
type StoreLoader ¶
type StoreLoader func(ms sdk.CommitMultiStore) error
StoreLoader defines a customizable function to control how we load the CommitMultiStore from disk. This is useful for state migration, when loading a datastore written with an older version of the software. In particular, if a module changed the substore key name (or removed a substore) between two versions of the software.
type StreamingService ¶
type StreamingService interface { // Stream is the streaming service loop, awaits kv pairs and writes them to some destination stream or file Stream(wg *sync.WaitGroup) error // Listeners returns the streaming service's listeners for the BaseApp to register Listeners() map[store.StoreKey][]store.WriteListener // ABCIListener interface for hooking into the ABCI messages from inside the BaseApp ABCIListener // Closer interface io.Closer }
StreamingService interface for registering WriteListeners with the BaseApp and updating the service with the ABCI messages using the hooks