package io.vertx.groovy.core.eventbus;
public class Message_GroovyExtension {
  public static java.lang.Object body(io.vertx.core.eventbus.Message<Object> j_receiver) {
    return io.vertx.core.impl.ConversionHelper.fromObject(j_receiver.body());
  }
  public static void reply(io.vertx.core.eventbus.Message<Object> j_receiver, java.lang.Object message) {
    j_receiver.reply(io.vertx.core.impl.ConversionHelper.toObject(message));
  }
  public static <R>void reply(io.vertx.core.eventbus.Message<Object> j_receiver, java.lang.Object message, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>>> replyHandler) {
    j_receiver.reply(io.vertx.core.impl.ConversionHelper.toObject(message),
      replyHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>> ar) {
        replyHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromObject(event)));
      }
    } : null);
  }
  public static void reply(io.vertx.core.eventbus.Message<Object> j_receiver, java.lang.Object message, java.util.Map<String, Object> options) {
    j_receiver.reply(io.vertx.core.impl.ConversionHelper.toObject(message),
      options != null ? new io.vertx.core.eventbus.DeliveryOptions(io.vertx.core.impl.ConversionHelper.toJsonObject(options)) : null);
  }
  public static <R>void reply(io.vertx.core.eventbus.Message<Object> j_receiver, java.lang.Object message, java.util.Map<String, Object> options, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>>> replyHandler) {
    j_receiver.reply(io.vertx.core.impl.ConversionHelper.toObject(message),
      options != null ? new io.vertx.core.eventbus.DeliveryOptions(io.vertx.core.impl.ConversionHelper.toJsonObject(options)) : null,
      replyHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>> ar) {
        replyHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromObject(event)));
      }
    } : null);
  }
  public static <R>void replyAndRequest(io.vertx.core.eventbus.Message<Object> j_receiver, java.lang.Object message, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>>> replyHandler) {
    j_receiver.replyAndRequest(io.vertx.core.impl.ConversionHelper.toObject(message),
      replyHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>> ar) {
        replyHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromObject(event)));
      }
    } : null);
  }
  public static <R>void replyAndRequest(io.vertx.core.eventbus.Message<Object> j_receiver, java.lang.Object message, java.util.Map<String, Object> options, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>>> replyHandler) {
    j_receiver.replyAndRequest(io.vertx.core.impl.ConversionHelper.toObject(message),
      options != null ? new io.vertx.core.eventbus.DeliveryOptions(io.vertx.core.impl.ConversionHelper.toJsonObject(options)) : null,
      replyHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.eventbus.Message<java.lang.Object>> ar) {
        replyHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromObject(event)));
      }
    } : null);
  }
}