Lorenz Herzberger 490f35ee5d
ignite scaffold type asset hash signature pubkey --module asset
Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>
2023-07-03 15:16:49 +02:00

30 lines
787 B
Go

package keeper
import (
"planetmint-go/x/asset/types"
"github.com/cosmos/cosmos-sdk/store/prefix"
sdk "github.com/cosmos/cosmos-sdk/types"
)
func (k Keeper) StoreAsset(ctx sdk.Context, asset types.Asset) {
store := prefix.NewStore(ctx.KVStore(k.storeKey), types.KeyPrefix(types.AssetKey))
appendValue := k.cdc.MustMarshal(&asset)
store.Set(GetAssetHashBytes(asset.Hash), appendValue)
}
func (k Keeper) GetAsset(ctx sdk.Context, hash string) (val types.Asset, found bool) {
store := prefix.NewStore(ctx.KVStore(k.storeKey), types.KeyPrefix(types.AssetKey))
asset := store.Get(GetAssetHashBytes(hash))
if asset == nil {
return val, false
}
k.cdc.MustUnmarshal(asset, &val)
return val, true
}
func GetAssetHashBytes(hash string) []byte {
bz := []byte(hash)
return bz
}