Files
sonr/x/did/keeper/genesis.go
T

80 lines
1.8 KiB
Go
Raw Normal View History

2024-07-05 22:20:13 -04:00
package keeper
import (
"context"
"cosmossdk.io/log"
2024-09-07 18:12:58 -04:00
sdk "github.com/cosmos/cosmos-sdk/types"
2024-09-19 02:04:22 -04:00
"github.com/ipfs/boxo/path"
"google.golang.org/grpc/peer"
2024-09-07 18:12:58 -04:00
2024-09-05 01:24:57 -04:00
"github.com/onsonr/sonr/x/did/types"
2024-07-05 22:20:13 -04:00
)
// Logger returns the logger
func (k Keeper) Logger() log.Logger {
return k.logger
}
// InitGenesis initializes the module's state from a genesis state.
func (k *Keeper) InitGenesis(ctx context.Context, data *types.GenesisState) error {
// this line is used by starport scaffolding # genesis/module/init
if err := data.Params.Validate(); err != nil {
return err
}
return k.Params.Set(ctx, data.Params)
}
// ExportGenesis exports the module's state to a genesis state.
func (k *Keeper) ExportGenesis(ctx context.Context) *types.GenesisState {
params, err := k.Params.Get(ctx)
if err != nil {
panic(err)
}
// this line is used by starport scaffolding # genesis/module/export
return &types.GenesisState{
Params: params,
}
}
2024-09-07 18:12:58 -04:00
// CheckValidatorExists checks if a validator exists
func (k Keeper) CheckValidatorExists(ctx sdk.Context, addr string) bool {
address, err := sdk.ValAddressFromBech32(addr)
if err != nil {
return false
}
ok, err := k.StakingKeeper.Validator(ctx, address)
if err != nil {
return false
}
if ok != nil {
return true
}
return false
}
2024-09-19 02:04:22 -04:00
// HasPathInIPFS checks if a file is in the local IPFS node
func (k Keeper) HasPathInIPFS(ctx sdk.Context, cid string) (bool, error) {
path, err := path.NewPath(cid)
if err != nil {
return false, err
}
v, err := k.ipfsClient.Unixfs().Get(ctx, path)
2024-09-07 18:12:58 -04:00
if err != nil {
2024-09-19 02:04:22 -04:00
return false, err
}
if v == nil {
return false, nil
2024-09-07 18:12:58 -04:00
}
2024-09-19 02:04:22 -04:00
return true, nil
2024-09-07 18:12:58 -04:00
}
2024-09-19 02:04:22 -04:00
func (k Keeper) UnwrapCtx(goCtx context.Context) Context {
ctx := sdk.UnwrapSDKContext(goCtx)
peer, _ := peer.FromContext(goCtx)
return Context{SDKCtx: ctx, Peer: peer, Keeper: k}
2024-09-07 18:12:58 -04:00
}