github.com/Finschia/finschia-sdk@v0.48.1/x/evidence/keeper/msg_server.go (about)

     1  package keeper
     2  
     3  import (
     4  	"context"
     5  
     6  	sdk "github.com/Finschia/finschia-sdk/types"
     7  	"github.com/Finschia/finschia-sdk/x/evidence/types"
     8  )
     9  
    10  type msgServer struct {
    11  	Keeper
    12  }
    13  
    14  // NewMsgServerImpl returns an implementation of the bank MsgServer interface
    15  // for the provided Keeper.
    16  func NewMsgServerImpl(keeper Keeper) types.MsgServer {
    17  	return &msgServer{Keeper: keeper}
    18  }
    19  
    20  var _ types.MsgServer = msgServer{}
    21  
    22  // SubmitEvidence implements the MsgServer.SubmitEvidence method.
    23  func (ms msgServer) SubmitEvidence(goCtx context.Context, msg *types.MsgSubmitEvidence) (*types.MsgSubmitEvidenceResponse, error) {
    24  	ctx := sdk.UnwrapSDKContext(goCtx)
    25  
    26  	evidence := msg.GetEvidence()
    27  	if err := ms.Keeper.SubmitEvidence(ctx, evidence); err != nil {
    28  		return nil, err
    29  	}
    30  
    31  	return &types.MsgSubmitEvidenceResponse{
    32  		Hash: evidence.Hash(),
    33  	}, nil
    34  }