laconicd/x/auction/keeper/genesis.go
Prathamesh Musale cb1f723475 Add commands to create and get auctions (#2)
To be added in an upcoming PR:
- commands to commit, reveal and get bids

Reviewed-on: deep-stack/laconic2d#2
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-02-12 08:34:40 +00:00

41 lines
920 B
Go

package keeper
import (
"git.vdb.to/cerc-io/laconic2d/x/auction"
sdk "github.com/cosmos/cosmos-sdk/types"
)
// InitGenesis initializes the module state from a genesis state.
func (k *Keeper) InitGenesis(ctx sdk.Context, data *auction.GenesisState) error {
if err := k.Params.Set(ctx, data.Params); err != nil {
return err
}
// Save auctions in store.
for _, auction := range data.Auctions.Auctions {
if err := k.Auctions.Set(ctx, auction.Id, auction); err != nil {
return err
}
}
return nil
}
// ExportGenesis exports the module state to a genesis state.
func (k *Keeper) ExportGenesis(ctx sdk.Context) (*auction.GenesisState, error) {
params, err := k.Params.Get(ctx)
if err != nil {
return nil, err
}
auctions, err := k.ListAuctions(ctx)
if err != nil {
return nil, err
}
return &auction.GenesisState{
Params: params,
Auctions: &auction.Auctions{Auctions: auctions},
}, nil
}