Documentation ¶
Index ¶
- Constants
- Variables
- func ConvertMsg(msg sdk.Msg, height int64) (sdk.Msg, error)
- func DefaultStoreLoader(ms sdk.CommitMultiStore) error
- func EvmResultConvert(txHash, data []byte) ([]byte, error)
- func Find(x string) string
- func GetABCIBlock(height int64) (*ctypes.ResultBlock, error)
- func GetABCIHeader(height int64) (abci.Header, error)
- func GetABCITx(hash []byte) (*ctypes.ResultTx, error)
- func GetGlobalMempool() mempool.Mempool
- func IsMempoolEnablePendingPool() bool
- func IsMempoolEnableRecheck() bool
- func IsMempoolEnableSort() bool
- func NewBlockDataCache() *blockDataCache
- func RegisterCmHandle(msgType string, create *CMHandle)
- func RegisterEvmConvertJudge(create func(msg sdk.Msg) ([]byte, bool))
- func RegisterEvmParamParse(create func(msg sdk.Msg) ([]byte, error))
- func RegisterEvmResultConverter(create func(txHash, data []byte) ([]byte, error))
- func SetGlobalMempool(mempool mempool.Mempool, enableSort bool, enablePendingPool bool)
- func SetHaltHeight(blockHeight uint64) func(*BaseApp)
- func SetHaltTime(haltTime uint64) func(*BaseApp)
- func SetInterBlockCache(cache sdk.MultiStorePersistentCache) func(*BaseApp)
- func SetMinGasPrices(gasPricesStr string) func(*BaseApp)
- func SetPruning(opts sdk.PruningOptions) func(*BaseApp)
- func SetTrace(trace bool) func(*BaseApp)
- func Union(x string, yString string)
- type BaseApp
- func (app *BaseApp) AddCustomizeModuleOnStopLogic(cs sdk.CustomizeOnStop)
- func (app *BaseApp) AppVersion() string
- func (app *BaseApp) BeginBlock(req abci.RequestBeginBlock) (res abci.ResponseBeginBlock)
- func (app *BaseApp) Check(tx sdk.Tx) (sdk.GasInfo, *sdk.Result, error)
- func (app *BaseApp) CheckTx(req abci.RequestCheckTx) abci.ResponseCheckTx
- func (app *BaseApp) Commit(req abci.RequestCommit) abci.ResponseCommit
- func (app *BaseApp) Deliver(tx sdk.Tx) (sdk.GasInfo, *sdk.Result, error)
- func (app *BaseApp) DeliverRealTx(txes abci.TxEssentials) abci.ResponseDeliverTx
- func (app *BaseApp) DeliverTx(req abci.RequestDeliverTx) abci.ResponseDeliverTx
- func (app *BaseApp) EndBlock(req abci.RequestEndBlock) (res abci.ResponseEndBlock)
- func (app *BaseApp) Export(toApp *BaseApp, version int64) error
- func (app *BaseApp) FilterPeerByAddrPort(info string) abci.ResponseQuery
- func (app *BaseApp) FilterPeerByID(info string) abci.ResponseQuery
- func (app *BaseApp) GRPCQueryRouter() *GRPCQueryRouter
- func (app *BaseApp) GetCMS() sdk.CommitMultiStore
- func (app *BaseApp) GetCacheMultiStore(txBytes []byte, height int64) (sdk.CacheMultiStore, bool)
- func (app *BaseApp) GetCommitVersion() (int64, error)
- func (app *BaseApp) GetDB() dbm.DB
- func (app *BaseApp) GetDeliverStateCtx() sdk.Context
- func (app *BaseApp) GetRawTxInfo(rawTx tmtypes.Tx) mempool.ExTxInfo
- func (app *BaseApp) GetRealTxFromRawTx(rawTx tmtypes.Tx) abci.TxEssentials
- func (app *BaseApp) GetTxDecoder() sdk.TxDecoder
- func (app *BaseApp) GetTxHistoryGasUsed(rawTx tmtypes.Tx) int64
- func (app *BaseApp) GetTxInfo(ctx sdk.Context, tx sdk.Tx) mempool.ExTxInfo
- func (app *BaseApp) Info(req abci.RequestInfo) abci.ResponseInfo
- func (app *BaseApp) InitChain(req abci.RequestInitChain) (res abci.ResponseInitChain)
- func (app *BaseApp) IsSealed() bool
- func (app *BaseApp) JudgeEvmConvert(ctx sdk.Context, msg sdk.Msg) bool
- func (app *BaseApp) LastBlockHeight() int64
- func (app *BaseApp) LastCommitID() sdk.CommitID
- func (app *BaseApp) LoadLatestVersion(baseKey *sdk.KVStoreKey) error
- func (app *BaseApp) LoadVersion(version int64, baseKey *sdk.KVStoreKey) error
- func (app *BaseApp) Logger() log.Logger
- func (app *BaseApp) MockContext() sdk.Context
- func (app *BaseApp) MountKVStores(keys map[string]*sdk.KVStoreKey)
- func (app *BaseApp) MountMemoryStores(keys map[string]*sdk.MemoryStoreKey)
- func (app *BaseApp) MountStore(key sdk.StoreKey, typ sdk.StoreType)
- func (app *BaseApp) MountStoreWithDB(key sdk.StoreKey, typ sdk.StoreType, db dbm.DB)
- func (app *BaseApp) MountStores(keys ...sdk.StoreKey)
- func (app *BaseApp) MountTransientStores(keys map[string]*sdk.TransientStoreKey)
- func (app *BaseApp) MsgServiceRouter() *MsgServiceRouter
- func (app *BaseApp) Name() string
- func (app *BaseApp) NewContext(isCheckTx bool, header abci.Header) (ctx sdk.Context)
- func (app *BaseApp) ParallelTxs(txs [][]byte, onlyCalSender bool) []*abci.ResponseDeliverTx
- func (app *BaseApp) PreDeliverRealTx(tx []byte) abci.TxEssentials
- func (app *BaseApp) PushAnteHandler(ah sdk.AnteHandler)
- func (app *BaseApp) PutCacheMultiStore(cms sdk.CacheMultiStore)
- func (app *BaseApp) Query(req abci.RequestQuery) 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) SetAccNonceHandler(anh sdk.AccNonceHandler)
- func (app *BaseApp) SetAddrPeerFilter(pf sdk.PeerFilter)
- func (app *BaseApp) SetAnteHandler(ah sdk.AnteHandler)
- func (app *BaseApp) SetAppVersion(v string)
- 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) SetEndLogHandler(handle recordHandle)
- func (app *BaseApp) SetEvmSysContractAddressHandler(handler sdk.EvmSysContractAddressHandler)
- func (app *BaseApp) SetEvmWatcherCollector(collector sdk.EvmWatcherCollector)
- func (app *BaseApp) SetFauxMerkleMode()
- func (app *BaseApp) SetGasRefundHandler(gh sdk.GasRefundHandler)
- func (app *BaseApp) SetGetTxFeeHandler(handler sdk.GetTxFeeHandler)
- func (app *BaseApp) SetIDPeerFilter(pf sdk.PeerFilter)
- func (app *BaseApp) SetInitChainer(initChainer sdk.InitChainer)
- func (app *BaseApp) SetInterceptors(interceptors map[string]Interceptor)
- func (app *BaseApp) SetInterfaceRegistry(registry types.InterfaceRegistry)
- func (app *BaseApp) SetMptCommitHandler(mch sdk.MptCommitHandler)
- func (app *BaseApp) SetName(name string)
- func (app *BaseApp) SetOption(req abci.RequestSetOption) (res abci.ResponseSetOption)
- func (app *BaseApp) SetParallelTxLogHandlers(fixLog sdk.LogFix)
- func (app *BaseApp) SetPartialConcurrentHandlers(etf sdk.GetTxFeeAndFromHandler)
- func (app *BaseApp) SetPreDeliverTxHandler(handler sdk.PreDeliverTxHandler)
- func (app *BaseApp) SetRouter(router sdk.Router)
- func (app *BaseApp) SetStartLogHandler(handle recordHandle)
- func (app *BaseApp) SetStoreLoader(loader StoreLoader)
- func (app *BaseApp) SetTmClient(client client.Client)
- func (app *BaseApp) SetUpdateFeeCollectorAccHandler(handler sdk.UpdateFeeCollectorAccHandler)
- func (app *BaseApp) SetUpdateGPOHandler(handler sdk.UpdateGPOHandler)
- func (app *BaseApp) Simulate(txBytes []byte, tx sdk.Tx, height int64, overridesBytes []byte, from ...string) (sdk.GasInfo, *sdk.Result, error)
- func (app *BaseApp) StopBaseApp()
- func (app *BaseApp) TraceTx(queryTraceTx sdk.QueryTraceTx, targetTx sdk.Tx, txIndex uint32, ...) (*sdk.Result, error)
- func (app *BaseApp) UpdateFeeCollector(fee sdk.Coins, add bool)
- type CMHandle
- type CacheTxContextFunc
- type GRPCQueryHandler
- type GRPCQueryRouter
- type HistoryGasUsedRecordDB
- type Interceptor
- type MsgServiceHandler
- type MsgServiceRouter
- func (msr *MsgServiceRouter) Handler(methodName string) MsgServiceHandler
- func (msr *MsgServiceRouter) HandlerWithMsg(msg sdk.MsgAdapter) MsgServiceHandler
- func (msr *MsgServiceRouter) RegisterService(sd *grpc.ServiceDesc, handler interface{})
- func (msr *MsgServiceRouter) SetInterfaceRegistry(interfaceRegistry codectypes.InterfaceRegistry)
- type MsgWrapper
- type QueryRouter
- type QueryServiceTestHelper
- type Router
- type StoreLoader
Constants ¶
const ( // MainStoreKey is the string representation of the main store MainStoreKey = "main" // LatestSimulateTxHeight is the height to simulate tx based on the state of latest block height // only for runTxModeSimulate LatestSimulateTxHeight = 0 )
const ( HistoryGasUsedDbDir = "data" HistoryGasUsedDBName = "hgu" FlagGasUsedFactor = "gu_factor" )
Variables ¶
var (
GasUsedFactor = 0.4
)
Functions ¶
func DefaultStoreLoader ¶
func DefaultStoreLoader(ms sdk.CommitMultiStore) error
DefaultStoreLoader will be used by default and loads the latest version
func EvmResultConvert ¶
func GetABCIBlock ¶
func GetABCIBlock(height int64) (*ctypes.ResultBlock, error)
func GetGlobalMempool ¶
func IsMempoolEnablePendingPool ¶
func IsMempoolEnablePendingPool() bool
func IsMempoolEnableRecheck ¶
func IsMempoolEnableRecheck() bool
func IsMempoolEnableSort ¶
func IsMempoolEnableSort() bool
func NewBlockDataCache ¶
func NewBlockDataCache() *blockDataCache
func RegisterCmHandle ¶
func RegisterEvmConvertJudge ¶
func SetGlobalMempool ¶
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 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 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 { GasRefundHandler sdk.GasRefundHandler // gas refund handler for gas refund EvmSysContractAddressHandler sdk.EvmSysContractAddressHandler // evm system contract address handler for judge whether convert evm tx to cm tx FeeSplitCollector []*sdk.FeeSplitInfo // 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) AddCustomizeModuleOnStopLogic ¶
func (app *BaseApp) AddCustomizeModuleOnStopLogic(cs sdk.CustomizeOnStop)
func (*BaseApp) AppVersion ¶
AppVersion returns the application's version string.
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(req abci.RequestCommit) 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) DeliverRealTx ¶
func (app *BaseApp) DeliverRealTx(txes abci.TxEssentials) abci.ResponseDeliverTx
func (*BaseApp) DeliverTx ¶
func (app *BaseApp) DeliverTx(req abci.RequestDeliverTx) abci.ResponseDeliverTx
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
FilterPeerByIDfilters peers by node ID.
func (*BaseApp) GRPCQueryRouter ¶
func (app *BaseApp) GRPCQueryRouter() *GRPCQueryRouter
GRPCQueryRouter returns the GRPCQueryRouter of a BaseApp.
func (*BaseApp) GetCMS ¶
func (app *BaseApp) GetCMS() sdk.CommitMultiStore
func (*BaseApp) GetCacheMultiStore ¶
func (*BaseApp) GetCommitVersion ¶
GetCommitVersion loads the latest committed version.
func (*BaseApp) GetDeliverStateCtx ¶
func (*BaseApp) GetRealTxFromRawTx ¶
func (app *BaseApp) GetRealTxFromRawTx(rawTx tmtypes.Tx) abci.TxEssentials
func (*BaseApp) GetTxDecoder ¶
func (*BaseApp) GetTxHistoryGasUsed ¶
func (*BaseApp) Info ¶
func (app *BaseApp) Info(req abci.RequestInfo) abci.ResponseInfo
Info implements the ABCI interface.
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) JudgeEvmConvert ¶
func (*BaseApp) LastBlockHeight ¶
LastBlockHeight returns the last committed block height.
func (*BaseApp) LastCommitID ¶
LastCommitID returns the last CommitID of the multistore.
func (*BaseApp) LoadLatestVersion ¶
func (app *BaseApp) LoadLatestVersion(baseKey *sdk.KVStoreKey) error
LoadLatestVersion loads the latest application version. It will panic if called more than once on a running BaseApp.
func (*BaseApp) LoadVersion ¶
func (app *BaseApp) LoadVersion(version int64, baseKey *sdk.KVStoreKey) error
LoadVersion loads the BaseApp application version. It will panic if called more than once on a running baseapp.
func (*BaseApp) MockContext ¶
MockContext returns a initialized context
func (*BaseApp) MountKVStores ¶
func (app *BaseApp) MountKVStores(keys map[string]*sdk.KVStoreKey)
MountStores mounts all IAVL or DB stores to the provided keys in the BaseApp multistore.
func (*BaseApp) MountMemoryStores ¶
func (app *BaseApp) MountMemoryStores(keys map[string]*sdk.MemoryStoreKey)
MountMemoryStores mounts all in-memory KVStores with the BaseApp's internal commit multi-store.
func (*BaseApp) MountStore ¶
MountStore mounts a store to the provided key in the BaseApp multistore, using the default DB.
func (*BaseApp) MountStoreWithDB ¶
MountStoreWithDB mounts a store to the provided key in the BaseApp multistore, using a specified DB.
func (*BaseApp) MountStores ¶
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]*sdk.TransientStoreKey)
MountStores mounts all IAVL or DB stores to the provided keys in the BaseApp multistore.
func (*BaseApp) MsgServiceRouter ¶
func (app *BaseApp) MsgServiceRouter() *MsgServiceRouter
func (*BaseApp) NewContext ¶
Context with current {check, deliver}State of the app used by tests.
func (*BaseApp) ParallelTxs ¶
func (app *BaseApp) ParallelTxs(txs [][]byte, onlyCalSender bool) []*abci.ResponseDeliverTx
ParallelTxs run txs
func (*BaseApp) PreDeliverRealTx ¶
func (app *BaseApp) PreDeliverRealTx(tx []byte) abci.TxEssentials
func (*BaseApp) PushAnteHandler ¶
func (app *BaseApp) PushAnteHandler(ah sdk.AnteHandler)
func (*BaseApp) PutCacheMultiStore ¶
func (app *BaseApp) PutCacheMultiStore(cms sdk.CacheMultiStore)
func (*BaseApp) Query ¶
func (app *BaseApp) Query(req abci.RequestQuery) 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 ¶
func (*BaseApp) Seal ¶
func (app *BaseApp) Seal()
Seal seals a BaseApp. It prohibits any further modifications to a BaseApp.
func (*BaseApp) SetAccNonceHandler ¶
func (app *BaseApp) SetAccNonceHandler(anh sdk.AccNonceHandler)
func (*BaseApp) SetAddrPeerFilter ¶
func (app *BaseApp) SetAddrPeerFilter(pf sdk.PeerFilter)
func (*BaseApp) SetAnteHandler ¶
func (app *BaseApp) SetAnteHandler(ah sdk.AnteHandler)
func (*BaseApp) SetAppVersion ¶
SetAppVersion sets the application's version string.
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) SetEndLogHandler ¶
func (app *BaseApp) SetEndLogHandler(handle recordHandle)
SetStopLogHandler set the endLog of the BaseApp.
func (*BaseApp) SetEvmSysContractAddressHandler ¶
func (app *BaseApp) SetEvmSysContractAddressHandler(handler sdk.EvmSysContractAddressHandler)
func (*BaseApp) SetEvmWatcherCollector ¶
func (app *BaseApp) SetEvmWatcherCollector(collector sdk.EvmWatcherCollector)
func (*BaseApp) SetFauxMerkleMode ¶
func (app *BaseApp) SetFauxMerkleMode()
func (*BaseApp) SetGasRefundHandler ¶
func (app *BaseApp) SetGasRefundHandler(gh sdk.GasRefundHandler)
func (*BaseApp) SetGetTxFeeHandler ¶
func (app *BaseApp) SetGetTxFeeHandler(handler sdk.GetTxFeeHandler)
func (*BaseApp) SetIDPeerFilter ¶
func (app *BaseApp) SetIDPeerFilter(pf sdk.PeerFilter)
func (*BaseApp) SetInitChainer ¶
func (app *BaseApp) SetInitChainer(initChainer sdk.InitChainer)
func (*BaseApp) SetInterceptors ¶
func (app *BaseApp) SetInterceptors(interceptors map[string]Interceptor)
func (*BaseApp) SetInterfaceRegistry ¶
func (app *BaseApp) SetInterfaceRegistry(registry types.InterfaceRegistry)
SetInterfaceRegistry sets the InterfaceRegistry.
func (*BaseApp) SetMptCommitHandler ¶
func (app *BaseApp) SetMptCommitHandler(mch sdk.MptCommitHandler)
func (*BaseApp) SetOption ¶
func (app *BaseApp) SetOption(req abci.RequestSetOption) (res abci.ResponseSetOption)
SetOption implements the ABCI interface.
func (*BaseApp) SetParallelTxLogHandlers ¶
func (*BaseApp) SetPartialConcurrentHandlers ¶
func (app *BaseApp) SetPartialConcurrentHandlers(etf sdk.GetTxFeeAndFromHandler)
func (*BaseApp) SetPreDeliverTxHandler ¶
func (app *BaseApp) SetPreDeliverTxHandler(handler sdk.PreDeliverTxHandler)
func (*BaseApp) SetStartLogHandler ¶
func (app *BaseApp) SetStartLogHandler(handle recordHandle)
SetStartLogHandler set the startLog of the BaseApp.
func (*BaseApp) SetStoreLoader ¶
func (app *BaseApp) SetStoreLoader(loader StoreLoader)
SetStoreLoader allows us to customize the rootMultiStore initialization.
func (*BaseApp) SetTmClient ¶
func (*BaseApp) SetUpdateFeeCollectorAccHandler ¶
func (app *BaseApp) SetUpdateFeeCollectorAccHandler(handler sdk.UpdateFeeCollectorAccHandler)
func (*BaseApp) SetUpdateGPOHandler ¶
func (app *BaseApp) SetUpdateGPOHandler(handler sdk.UpdateGPOHandler)
func (*BaseApp) StopBaseApp ¶
func (app *BaseApp) StopBaseApp()
func (*BaseApp) TraceTx ¶
func (app *BaseApp) TraceTx(queryTraceTx sdk.QueryTraceTx, targetTx sdk.Tx, txIndex uint32, block *tmtypes.Block) (*sdk.Result, error)
TraceTx returns the trace log for the target tx To trace the target tx, the context must be set to the specific block at first, and the predesessors in the same block must be run before tracing the tx. The runtx procedure for TraceTx is nearly same with that for DeliverTx, but the state was saved in different Cache in app.
type CMHandle ¶
type CMHandle struct {
// contains filtered or unexported fields
}
func NewCMHandle ¶
type CacheTxContextFunc ¶
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 HistoryGasUsedRecordDB ¶
type HistoryGasUsedRecordDB struct {
// contains filtered or unexported fields
}
func InstanceOfHistoryGasUsedRecordDB ¶
func InstanceOfHistoryGasUsedRecordDB() *HistoryGasUsedRecordDB
func (*HistoryGasUsedRecordDB) FlushHgu ¶
func (h *HistoryGasUsedRecordDB) FlushHgu()
func (*HistoryGasUsedRecordDB) GetHgu ¶
func (h *HistoryGasUsedRecordDB) GetHgu(key []byte) int64
func (*HistoryGasUsedRecordDB) UpdateGasUsed ¶
func (h *HistoryGasUsedRecordDB) UpdateGasUsed(key []byte, gasUsed int64)
type Interceptor ¶
type Interceptor interface {
Intercept(req *abci.RequestQuery)
}
it is like hooker ,grap the request and do sth....(like redirect the path or anything else)
func NewRedirectInterceptor ¶
func NewRedirectInterceptor(redirectPath string) Interceptor
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(methodName string) MsgServiceHandler
Handler returns the MsgServiceHandler for a given query route path or nil if not found.
func (*MsgServiceRouter) HandlerWithMsg ¶
func (msr *MsgServiceRouter) HandlerWithMsg(msg sdk.MsgAdapter) MsgServiceHandler
Handler returns the MsgServiceHandler for a given msg 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 MsgWrapper ¶
type MsgWrapper struct { Name string `json:"type"` Data json.RawMessage `json:"value"` }
func ParseMsgWrapper ¶
func ParseMsgWrapper(data []byte) (*MsgWrapper, error)
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(path 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 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.
func StoreLoaderWithUpgrade ¶
func StoreLoaderWithUpgrade(upgrades *storetypes.StoreUpgrades) StoreLoader
StoreLoaderWithUpgrade is used to prepare baseapp with a fixed StoreLoader pattern. This is useful in test cases, or with custom upgrade loading logic.
func UpgradeableStoreLoader ¶
func UpgradeableStoreLoader(upgradeInfoPath string) StoreLoader
UpgradeableStoreLoader can be configured by SetStoreLoader() to check for the existence of a given upgrade file - json encoded StoreUpgrades data.
If not file is present, it will peform the default load (no upgrades to store).
If the file is present, it will parse the file and execute those upgrades (rename or delete stores), while loading the data. It will also delete the upgrade file upon successful load, so that the upgrade is only applied once, and not re-applied on next restart
This is useful for in place migrations when a store key is renamed between two versions of the software. (TODO: this code will move to x/upgrades when PR #4233 is merged, here mainly to help test the design)
Source Files ¶
- abci.go
- baseapp.go
- baseapp_checktx.go
- baseapp_ibc_adapter.go
- baseapp_mode_base.go
- baseapp_mode_deliver.go
- baseapp_mode_deliverInAsync.go
- baseapp_mode_simulate.go
- baseapp_mode_trace.go
- baseapp_parallel.go
- baseapp_runtx.go
- baseapp_synclist.go
- cache.go
- evm2cm.go
- gasuseddb.go
- grpcrouter.go
- grpcrouter_helpers.go
- grpcserver.go
- helpers.go
- helpers_okchain.go
- msg_service_router.go
- options.go
- queryrouter.go
- router.go
- state.go