github.com/KiraCore/sekai@v0.3.43/x/tokens/handler.go (about) 1 package tokens 2 3 import ( 4 "github.com/KiraCore/sekai/x/tokens/keeper" 5 "github.com/KiraCore/sekai/x/tokens/types" 6 sdk "github.com/cosmos/cosmos-sdk/types" 7 "github.com/cosmos/cosmos-sdk/types/errors" 8 ) 9 10 // NewHandler returns new instance of handler 11 func NewHandler(ck keeper.Keeper, cgk types.CustomGovKeeper) sdk.Handler { 12 msgServer := keeper.NewMsgServerImpl(ck, cgk) 13 14 return func(ctx sdk.Context, msg sdk.Msg) (*sdk.Result, error) { 15 ctx = ctx.WithEventManager(sdk.NewEventManager()) 16 17 switch msg := msg.(type) { 18 case *types.MsgUpsertTokenAlias: 19 res, err := msgServer.UpsertTokenAlias(sdk.WrapSDKContext(ctx), msg) 20 return sdk.WrapServiceResult(ctx, res, err) 21 22 case *types.MsgUpsertTokenRate: 23 res, err := msgServer.UpsertTokenRate(sdk.WrapSDKContext(ctx), msg) 24 return sdk.WrapServiceResult(ctx, res, err) 25 26 default: 27 return nil, errors.Wrapf(errors.ErrUnknownRequest, "unrecognized %s message type: %T", types.ModuleName, msg) 28 } 29 } 30 }