2023-09-22 16:05:12 +00:00
|
|
|
package keeper
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
|
|
|
|
|
|
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
|
|
|
|
|
|
|
"github.com/kava-labs/kava/x/community/types"
|
|
|
|
)
|
|
|
|
|
|
|
|
// GetParams returns the params from the store
|
|
|
|
func (k Keeper) GetParams(ctx sdk.Context) (types.Params, bool) {
|
|
|
|
store := ctx.KVStore(k.key)
|
|
|
|
|
|
|
|
bz := store.Get(types.ParamsKey)
|
|
|
|
if bz == nil {
|
|
|
|
return types.Params{}, false
|
|
|
|
}
|
|
|
|
|
|
|
|
params := types.Params{}
|
|
|
|
k.cdc.MustUnmarshal(bz, ¶ms)
|
|
|
|
|
|
|
|
return params, true
|
|
|
|
}
|
|
|
|
|
|
|
|
// SetParams sets params on the store
|
|
|
|
func (k Keeper) SetParams(ctx sdk.Context, params types.Params) {
|
|
|
|
if err := params.Validate(); err != nil {
|
|
|
|
panic(fmt.Sprintf("invalid params: %s", err))
|
|
|
|
}
|
|
|
|
|
|
|
|
store := ctx.KVStore(k.key)
|
|
|
|
bz := k.cdc.MustMarshal(¶ms)
|
|
|
|
|
|
|
|
store.Set(types.ParamsKey, bz)
|
|
|
|
}
|
2023-10-03 15:41:54 +00:00
|
|
|
|
|
|
|
func (k Keeper) mustGetParams(ctx sdk.Context) types.Params {
|
|
|
|
params, found := k.GetParams(ctx)
|
|
|
|
if !found {
|
|
|
|
panic("invalid state: module parameters not found")
|
|
|
|
}
|
|
|
|
|
|
|
|
return params
|
|
|
|
}
|