Example usage for org.springframework.amqp.rabbit.listener BlockingQueueConsumer setTagStrategy

List of usage examples for org.springframework.amqp.rabbit.listener BlockingQueueConsumer setTagStrategy

Introduction

In this page you can find the example usage for org.springframework.amqp.rabbit.listener BlockingQueueConsumer setTagStrategy.

Prototype

public void setTagStrategy(ConsumerTagStrategy tagStrategy) 

Source Link

Document

Set the ConsumerTagStrategy to use when generating consumer tags.

Usage

From source file:org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.java

protected BlockingQueueConsumer createBlockingQueueConsumer() {
    BlockingQueueConsumer consumer;
    String[] queues = getRequiredQueueNames();
    // There's no point prefetching less than the tx size, otherwise the consumer will stall because the broker
    // didn't get an ack for delivered messages
    int actualPrefetchCount = getPrefetchCount() > this.txSize ? getPrefetchCount() : this.txSize;
    consumer = new BlockingQueueConsumer(getConnectionFactory(), this.messagePropertiesConverter,
            this.cancellationLock, getAcknowledgeMode(), isChannelTransacted(), actualPrefetchCount,
            isDefaultRequeueRejected(), getConsumerArguments(), isExclusive(), queues);
    if (this.declarationRetries != null) {
        consumer.setDeclarationRetries(this.declarationRetries);
    }/*w  ww  . j a v a  2 s  .  co m*/
    if (this.failedDeclarationRetryInterval != null) {
        consumer.setFailedDeclarationRetryInterval(this.failedDeclarationRetryInterval);
    }
    if (this.retryDeclarationInterval != null) {
        consumer.setRetryDeclarationInterval(this.retryDeclarationInterval);
    }
    if (getConsumerTagStrategy() != null) {
        consumer.setTagStrategy(getConsumerTagStrategy());
    }
    consumer.setBackOffExecution(this.recoveryBackOff.start());
    consumer.setShutdownTimeout(getShutdownTimeout());
    return consumer;
}