title: Method call after returning Mono<Void>
body: <p>I want to call the method when previous returned <code>Mono&lt;Void&gt;</code>:</p>
  
  <pre><code> @Override
   public Mono&lt;Void&gt; sendEmail(EmailDto emailDto) {
   return mailReactiveClient.sendEmail(message -&gt;
       createMessage(emailDto, emailDto.getBody(), message))
         .doOnNext(saveNotificationLog(emailDto)); //it's not work
  }
  
    private void saveNotificationLog(EmailDto emailDto) {
      notificationLogReactiveRepository.save(NotificationLog.builder()
         ...
        .build());
    }
  </code></pre>
  
  <p>Method <code>sendEmail</code>returns <code>Mono&lt;Void&gt;</code>.</p>
  
  <p>So how to call <code>saveNotificationLog</code>?</p>
  
  <p><strong>UPD:</strong> Tring to make my question simplier:</p>
  
  <pre><code> @Override
   public Mono&lt;Void&gt; sendEmail(EmailDto emailDto) {
   return mailReactiveClient.sendEmail(message -&gt;
       createMessage(emailDto, emailDto.getBody(), message))
         .doOnNext(System.out.print("Hello world!"); 
  }
  </code></pre>
  
  <p>How to call <code>doOnNext</code>or similar method after <code>sendEmail</code> return <code>Mono&lt;Void&gt;</code>?</p>