Операция карты терминала не вызывается в Mono

Вот соответствующий код:

Mono<ResponseEntity<String>> res = remoteCall(HttpMethod.POST, issueTokenUrl, GsonConvertor.getInstance().serialize(request));

Mono<IssueToken> it = res.map(this::getIssueToken);

Удаленный вызов успешен (код состояния 200 с хорошим телом ответа), но поток просто не пойдет внутрь getIssueToken() метод. Вот метод:

private IssueToken getIssueToken(ResponseEntity<String> response) {
    System.out.println("Inside the method");    //this line won't print on the console
    HttpStatus statusCode = response.getStatusCode();

    checkErrors(response);
    return GsonConvertor.getInstance().deserialize(response.getBody(), IssueToken.class);
  }

Может кто-нибудь сказать мне, почему это происходит?

1 ответ

map(Function) просто создает новый Mono но хитрость в том, что функция не оценивается напрямую. Он оценивается, когда вы используете его, например, путем вызова subscribe(),

Другие вопросы по тегам