code: public static <ReqT, RespT> RespT blockingUnaryCall(ClientCall<ReqT, RespT> call, ReqT req) {
      try {
        return getUnchecked(futureUnaryCall(call, req));
      } catch (RuntimeException e) {
        throw cancelThrow(call, e);
      } catch (Error e) {
        throw cancelThrow(call, e);
      }
    }
docs: Executes a unary call and blocks on the response.  The {@code call} should not be already
  started.  After calling this method, {@code call} should no longer be used.
  
  @return the single response message.