gpu-compute-chain/x/colinearcore/genesis.go

49 lines
1.3 KiB
Go

package colinearcore
import (
"colinear/x/colinearcore/keeper"
"colinear/x/colinearcore/types"
sdk "github.com/cosmos/cosmos-sdk/types"
)
// InitGenesis initializes the capability module's state from a provided genesis
// state.
func InitGenesis(ctx sdk.Context, k keeper.Keeper, genState types.GenesisState) {
// Set if defined
if genState.NextAuction != nil {
k.SetNextAuction(ctx, *genState.NextAuction)
}
// Set all the auction
for _, elem := range genState.AuctionList {
k.SetAuction(ctx, elem)
}
// Set if defined
if genState.LockedUsers != nil {
k.SetLockedUsers(ctx, *genState.LockedUsers)
}
// this line is used by starport scaffolding # genesis/module/init
k.SetParams(ctx, genState.Params)
}
// ExportGenesis returns the capability module's exported genesis.
func ExportGenesis(ctx sdk.Context, k keeper.Keeper) *types.GenesisState {
genesis := types.DefaultGenesis()
genesis.Params = k.GetParams(ctx)
// Get all nextAuction
nextAuction, found := k.GetNextAuction(ctx)
if found {
genesis.NextAuction = &nextAuction
}
genesis.AuctionList = k.GetAllAuction(ctx)
// Get all lockedUsers
lockedUsers, found := k.GetLockedUsers(ctx)
if found {
genesis.LockedUsers = &lockedUsers
}
// this line is used by starport scaffolding # genesis/module/export
return genesis
}