mirror of
				https://github.com/0glabs/0g-chain.git
				synced 2025-10-31 19:07:32 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			130 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			130 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| package pricefeed
 | |
| 
 | |
| import (
 | |
| 	"encoding/json"
 | |
| 
 | |
| 	"github.com/gorilla/mux"
 | |
| 	"github.com/spf13/cobra"
 | |
| 
 | |
| 	"github.com/cosmos/cosmos-sdk/client/context"
 | |
| 	"github.com/cosmos/cosmos-sdk/codec"
 | |
| 	"github.com/cosmos/cosmos-sdk/types/module"
 | |
| 	"github.com/kava-labs/kava/x/pricefeed/client/cli"
 | |
| 	"github.com/kava-labs/kava/x/pricefeed/client/rest"
 | |
| 
 | |
| 	sdk "github.com/cosmos/cosmos-sdk/types"
 | |
| 	abci "github.com/tendermint/tendermint/abci/types"
 | |
| )
 | |
| 
 | |
| var (
 | |
| 	_ module.AppModule      = AppModule{}
 | |
| 	_ module.AppModuleBasic = AppModuleBasic{}
 | |
| )
 | |
| // AppModuleBasic app module basics object
 | |
| type AppModuleBasic struct{}
 | |
| 
 | |
| // Name get module name
 | |
| func (AppModuleBasic) Name() string {
 | |
| 	return ModuleName
 | |
| }
 | |
| 
 | |
| // RegisterCodec register module codec
 | |
| func (AppModuleBasic) RegisterCodec(cdc *codec.Codec) {
 | |
| 	RegisterCodec(cdc)
 | |
| }
 | |
| 
 | |
| // DefaultGenesis default genesis state
 | |
| func (AppModuleBasic) DefaultGenesis() json.RawMessage {
 | |
| 	return ModuleCdc.MustMarshalJSON(DefaultGenesisState())
 | |
| }
 | |
| 
 | |
| // ValidateGenesis module validate genesis
 | |
| func (AppModuleBasic) ValidateGenesis(bz json.RawMessage) error {
 | |
| 	var data GenesisState
 | |
| 	err := ModuleCdc.UnmarshalJSON(bz, &data)
 | |
| 	if err != nil {
 | |
| 		return err
 | |
| 	}
 | |
| 	return ValidateGenesis(data)
 | |
| }
 | |
| 
 | |
| // RegisterRESTRoutes register rest routes
 | |
| func (AppModuleBasic) RegisterRESTRoutes(ctx context.CLIContext, rtr *mux.Router) {
 | |
| 	rest.RegisterRoutes(ctx, rtr, StoreKey)
 | |
| }
 | |
| 
 | |
| // GetTxCmd get the root tx command of this module
 | |
| func (AppModuleBasic) GetTxCmd(cdc *codec.Codec) *cobra.Command {
 | |
| 	return cli.GetTxCmd(StoreKey, cdc)
 | |
| }
 | |
| 
 | |
| // GetQueryCmd get the root query command of this module
 | |
| func (AppModuleBasic) GetQueryCmd(cdc *codec.Codec) *cobra.Command {
 | |
| 	return cli.GetQueryCmd(StoreKey, cdc)
 | |
| }
 | |
| 
 | |
| // AppModule app module type
 | |
| type AppModule struct {
 | |
| 	AppModuleBasic
 | |
| 	keeper Keeper
 | |
| }
 | |
| 
 | |
| // NewAppModule creates a new AppModule object
 | |
| func NewAppModule(keeper Keeper) AppModule {
 | |
| 	return AppModule{
 | |
| 		AppModuleBasic: AppModuleBasic{},
 | |
| 		keeper:         keeper,
 | |
| 	}
 | |
| }
 | |
| 
 | |
| // Name module name
 | |
| func (AppModule) Name() string {
 | |
| 	return ModuleName
 | |
| }
 | |
| 
 | |
| // RegisterInvariants register module invariants
 | |
| func (AppModule) RegisterInvariants(_ sdk.InvariantRegistry) {}
 | |
| 
 | |
| // Route module message route name
 | |
| func (AppModule) Route() string {
 | |
| 	return ModuleName
 | |
| }
 | |
| 
 | |
| // NewHandler module handler
 | |
| func (am AppModule) NewHandler() sdk.Handler {
 | |
| 	return NewHandler(am.keeper)
 | |
| }
 | |
| 
 | |
| // QuerierRoute module querier route name
 | |
| func (AppModule) QuerierRoute() string {
 | |
| 	return ModuleName
 | |
| }
 | |
| 
 | |
| // NewQuerierHandler module querier
 | |
| func (am AppModule) NewQuerierHandler() sdk.Querier {
 | |
| 	return NewQuerier(am.keeper)
 | |
| }
 | |
| 
 | |
| // BeginBlock module begin-block
 | |
| func (AppModule) BeginBlock(_ sdk.Context, _ abci.RequestBeginBlock) {}
 | |
| 
 | |
| // EndBlock module end-block
 | |
| func (am AppModule) EndBlock(ctx sdk.Context, _ abci.RequestEndBlock) []abci.ValidatorUpdate {
 | |
| 	EndBlocker(ctx, am.keeper)
 | |
| 	return []abci.ValidatorUpdate{}
 | |
| }
 | |
| 
 | |
| // InitGenesis module init-genesis
 | |
| func (am AppModule) InitGenesis(ctx sdk.Context, data json.RawMessage) []abci.ValidatorUpdate {
 | |
| 	var genesisState GenesisState
 | |
| 	ModuleCdc.MustUnmarshalJSON(data, &genesisState)
 | |
| 	InitGenesis(ctx, am.keeper, genesisState)
 | |
| 	return []abci.ValidatorUpdate{}
 | |
| }
 | |
| 
 | |
| // ExportGenesis module export genesis
 | |
| func (am AppModule) ExportGenesis(ctx sdk.Context) json.RawMessage {
 | |
| 	gs := ExportGenesis(ctx, am.keeper)
 | |
| 	return ModuleCdc.MustMarshalJSON(gs)
 | |
| }
 | 
