github.com/lino-network/lino@v0.6.11/x/global/keeper.go (about) 1 package global 2 3 //go:generate mockery -name GlobalKeeper 4 5 import ( 6 codec "github.com/cosmos/cosmos-sdk/codec" 7 sdk "github.com/cosmos/cosmos-sdk/types" 8 9 linotypes "github.com/lino-network/lino/types" 10 "github.com/lino-network/lino/x/global/model" 11 ) 12 13 // GlobalKeeper - aka global event manager. 14 type GlobalKeeper interface { 15 InitGenesis(ctx sdk.Context) 16 17 // blockchain scheduled events. 18 OnBeginBlock(ctx sdk.Context) 19 OnEndBlock(ctx sdk.Context) 20 21 // module events 22 RegisterEventAtTime(ctx sdk.Context, unixTime int64, event linotypes.Event) sdk.Error 23 ExecuteEvents(ctx sdk.Context, exec linotypes.EventExec) 24 25 // Getter 26 //// global time 27 GetLastBlockTime(ctx sdk.Context) int64 28 GetPastDay(ctx sdk.Context, unixTime int64) int64 29 GetBCEventErrors(ctx sdk.Context) []linotypes.BCEventErr 30 GetEventErrors(ctx sdk.Context) []model.EventError 31 GetGlobalTime(ctx sdk.Context) model.GlobalTime 32 33 // import export 34 ImportFromFile(ctx sdk.Context, cdc *codec.Codec, filepath string) error 35 ExportToFile(ctx sdk.Context, cdc *codec.Codec, filepath string) error 36 }