anchor.diff:  // Imperative API:
   mailer.send(Mail.withText("to@acme.org", "A simple email from quarkus", "This is my body."));
   // Reactive API:
  -CompletionStage<Void> stage = reactiveMailer.send(Mail.withText("to@acme.org", "A reactive email from quarkus", "This is my body."));
  +Uni<Void> stage = reactiveMailer.send(Mail.withText("to@acme.org", "A reactive email from quarkus", "This is my body."));
   ----
   
   For example, you can use the `Mailer` in a JAX-RS endpoint as follows:
  
positive.code: public CompletionStage<Response> sendASimpleEmailAsync() {
      return reactiveMailer.send(
              Mail.withText("to@acme.org", "A reactive email from quarkus", "This is my body"))
              .thenApply(x -> Response.accepted().build());
  }
  ----
  
  With such a JAX-RS resource, you can check that everything is working with:
  
negative.code: 
  Three API flavors are exposed:
  
  * the Mutiny client (`io.vertx.mutiny.ext.mail.MailClient`)
  * the Axle client (`io.vertx.axle.ext.mail.MailClient`), using `CompletionStage` and Reactive Streams `Publisher` - deprecated, it is recommended to switch to the Mutiny client
  * the RX Java 2 client (`io.vertx.reactivex.ext.mail.MailClient`) - deprecated, it is recommended to switch to the Mutiny client
  * the bare client (`io.vertx.ext.mail.MailClient`)
  
  Check the link:vertx[Using Vert.x guide] for further details about these different APIs and how to select the most suitable for you.
  