package io.vertx.groovy.rabbitmq;
public class RabbitMQClient_GroovyExtension {
  public static void basicAck(io.vertx.rabbitmq.RabbitMQClient j_receiver, long deliveryTag, boolean multiple, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.util.Map<String, Object>>> resultHandler) {
    j_receiver.basicAck(deliveryTag,
      multiple,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromJsonObject(event)));
      }
    } : null);
  }
  public static void basicNack(io.vertx.rabbitmq.RabbitMQClient j_receiver, long deliveryTag, boolean multiple, boolean requeue, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.util.Map<String, Object>>> resultHandler) {
    j_receiver.basicNack(deliveryTag,
      multiple,
      requeue,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromJsonObject(event)));
      }
    } : null);
  }
  public static void basicGet(io.vertx.rabbitmq.RabbitMQClient j_receiver, java.lang.String queue, boolean autoAck, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.util.Map<String, Object>>> resultHandler) {
    j_receiver.basicGet(queue,
      autoAck,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromJsonObject(event)));
      }
    } : null);
  }
  public static void basicConsumer(io.vertx.rabbitmq.RabbitMQClient j_receiver, java.lang.String queue, java.util.Map<String, Object> options, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.rabbitmq.RabbitMQConsumer>> resultHandler) {
    j_receiver.basicConsumer(queue,
      options != null ? new io.vertx.rabbitmq.QueueOptions(io.vertx.core.impl.ConversionHelper.toJsonObject(options)) : null,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.rabbitmq.RabbitMQConsumer>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.rabbitmq.RabbitMQConsumer> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromObject(event)));
      }
    } : null);
  }
  public static void basicPublish(io.vertx.rabbitmq.RabbitMQClient j_receiver, java.lang.String exchange, java.lang.String routingKey, java.util.Map<String, Object> message, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>> resultHandler) {
    j_receiver.basicPublish(exchange,
      routingKey,
      message != null ? io.vertx.core.impl.ConversionHelper.toJsonObject(message) : null,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>() {
      public void handle(io.vertx.core.AsyncResult<java.lang.Void> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromObject(event)));
      }
    } : null);
  }
  public static void exchangeDeclare(io.vertx.rabbitmq.RabbitMQClient j_receiver, java.lang.String exchange, java.lang.String type, boolean durable, boolean autoDelete, java.util.Map<String, Object> config, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>> resultHandler) {
    j_receiver.exchangeDeclare(exchange,
      type,
      durable,
      autoDelete,
      config != null ? io.vertx.core.impl.ConversionHelper.toJsonObject(config) : null,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>() {
      public void handle(io.vertx.core.AsyncResult<java.lang.Void> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromObject(event)));
      }
    } : null);
  }
  public static void queueDeclareAuto(io.vertx.rabbitmq.RabbitMQClient j_receiver, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.util.Map<String, Object>>> resultHandler) {
    j_receiver.queueDeclareAuto(resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromJsonObject(event)));
      }
    } : null);
  }
  public static void queueDeclare(io.vertx.rabbitmq.RabbitMQClient j_receiver, java.lang.String queue, boolean durable, boolean exclusive, boolean autoDelete, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.util.Map<String, Object>>> resultHandler) {
    j_receiver.queueDeclare(queue,
      durable,
      exclusive,
      autoDelete,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromJsonObject(event)));
      }
    } : null);
  }
  public static void queueDeclare(io.vertx.rabbitmq.RabbitMQClient j_receiver, java.lang.String queue, boolean durable, boolean exclusive, boolean autoDelete, java.util.Map<String, Object> config, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.util.Map<String, Object>>> resultHandler) {
    j_receiver.queueDeclare(queue,
      durable,
      exclusive,
      autoDelete,
      config != null ? io.vertx.core.impl.ConversionHelper.toJsonObject(config) : null,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromJsonObject(event)));
      }
    } : null);
  }
  public static void queueDelete(io.vertx.rabbitmq.RabbitMQClient j_receiver, java.lang.String queue, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.util.Map<String, Object>>> resultHandler) {
    j_receiver.queueDelete(queue,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromJsonObject(event)));
      }
    } : null);
  }
  public static void queueDeleteIf(io.vertx.rabbitmq.RabbitMQClient j_receiver, java.lang.String queue, boolean ifUnused, boolean ifEmpty, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.util.Map<String, Object>>> resultHandler) {
    j_receiver.queueDeleteIf(queue,
      ifUnused,
      ifEmpty,
      resultHandler != null ? new io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>() {
      public void handle(io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject> ar) {
        resultHandler.handle(ar.map(event -> io.vertx.core.impl.ConversionHelper.fromJsonObject(event)));
      }
    } : null);
  }
}