package io.vertx.rabbitmq;

import com.rabbitmq.client.BasicProperties;
import com.rabbitmq.client.Envelope;
import io.vertx.codegen.annotations.CacheReturn;
import io.vertx.codegen.annotations.GenIgnore;
import io.vertx.codegen.annotations.VertxGen;
import io.vertx.core.Handler;
import io.vertx.core.buffer.Buffer;

Represent a message received message received in a rabbitmq-queue.
/** * Represent a message received message received in a rabbitmq-queue. */
@VertxGen public interface RabbitMQMessage {
Returns:the message body
/** * @return the message body */
@CacheReturn Buffer body();
Returns:the consumer tag associated with the consumer
/** * @return the <i>consumer tag</i> associated with the consumer */
@CacheReturn String consumerTag();
Returns:packaging data for the message
/** * @return packaging data for the message */
@GenIgnore(GenIgnore.PERMITTED_TYPE) @CacheReturn Envelope envelope();
Returns:content header data for the message
/** * @return content header data for the message */
@GenIgnore(GenIgnore.PERMITTED_TYPE) @CacheReturn BasicProperties properties();
Returns:the message count for messages obtained with RabbitMQClient.basicGet(String, boolean, Handler<AsyncResult<RabbitMQMessage>>)
/** * @return the message count for messages obtained with {@link RabbitMQClient#basicGet(String, boolean, Handler)} */
@CacheReturn Integer messageCount(); }