forked from cerc-io/laconicd
e511051f3e
* Add message service with a create bond command * Add query proto file with bonds list query * Remove legacy amino coded registration * Add bond to auth module config * Use collections package for bond module state
33 lines
746 B
Go
33 lines
746 B
Go
package keeper
|
|
|
|
import (
|
|
"git.vdb.to/cerc-io/laconic2d/x/bond"
|
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
|
)
|
|
|
|
// InitGenesis initializes the module state from a genesis state.
|
|
func (k *Keeper) InitGenesis(ctx sdk.Context, data *bond.GenesisState) error {
|
|
k.SetParams(ctx, data.Params)
|
|
|
|
// Save bonds in store.
|
|
for _, bond := range data.Bonds {
|
|
if err := k.Bonds.Set(ctx, bond.Id, *bond); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
|
|
return nil
|
|
}
|
|
|
|
// ExportGenesis exports the module state to a genesis state.
|
|
func (k *Keeper) ExportGenesis(ctx sdk.Context) (*bond.GenesisState, error) {
|
|
params := k.GetParams(ctx)
|
|
|
|
bonds, err := k.ListBonds(ctx)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return &bond.GenesisState{Params: params, Bonds: bonds}, nil
|
|
}
|