github.com/cosmos/cosmos-sdk@v0.50.10/x/mint/keeper/msg_server.go (about)

     1  package keeper
     2  
     3  import (
     4  	"context"
     5  
     6  	"cosmossdk.io/errors"
     7  
     8  	govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
     9  	"github.com/cosmos/cosmos-sdk/x/mint/types"
    10  )
    11  
    12  var _ types.MsgServer = msgServer{}
    13  
    14  // msgServer is a wrapper of Keeper.
    15  type msgServer struct {
    16  	Keeper
    17  }
    18  
    19  // NewMsgServerImpl returns an implementation of the x/mint MsgServer interface.
    20  func NewMsgServerImpl(k Keeper) types.MsgServer {
    21  	return &msgServer{
    22  		Keeper: k,
    23  	}
    24  }
    25  
    26  // UpdateParams updates the params.
    27  func (ms msgServer) UpdateParams(ctx context.Context, msg *types.MsgUpdateParams) (*types.MsgUpdateParamsResponse, error) {
    28  	if ms.authority != msg.Authority {
    29  		return nil, errors.Wrapf(govtypes.ErrInvalidSigner, "invalid authority; expected %s, got %s", ms.authority, msg.Authority)
    30  	}
    31  
    32  	if err := msg.Params.Validate(); err != nil {
    33  		return nil, err
    34  	}
    35  
    36  	if err := ms.Params.Set(ctx, msg.Params); err != nil {
    37  		return nil, err
    38  	}
    39  
    40  	return &types.MsgUpdateParamsResponse{}, nil
    41  }