public ServerReplyProto sendServer()

in ratis-hadoop/src/main/java/org/apache/ratis/hadooprpc/server/RaftServerProtocolServerSideTranslatorPB.java [50:78]


  public ServerReplyProto sendServer(RpcController unused, ServerRequestProto requestProto) throws ServiceException {
    ServerOps type = requestProto.getType();
    ByteBuffer buffer = requestProto.getRequest().asReadOnlyByteBuffer();
    GeneratedMessageV3 respone = null;
    try {
      switch (type) {
        case requestVote:
          respone = requestVote(RequestVoteRequestProto.parseFrom(buffer));
          break;
        case startLeaderElection:
          respone = startLeaderElection(StartLeaderElectionRequestProto.parseFrom(buffer));
          break;
        case installSnapshot:
          respone = installSnapshot(InstallSnapshotRequestProto.parseFrom(buffer));
          break;
        case appendEntries:
          respone = appendEntries(AppendEntriesRequestProto.parseFrom(buffer));
          break;
        default:
          throw new IOException("Invalid Request Type:" + type);
      }
      return ServerReplyProto.newBuilder()
          .setType(type)
          .setResponse(com.google.protobuf.ByteString.copyFrom(respone.toByteArray()))
          .build();
    } catch(IOException ioe) {
      throw new ServiceException(ioe);
    }
  }