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

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

Introduction

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

Prototype

public void setFailedDeclarationRetryInterval(long failedDeclarationRetryInterval) 

Source Link

Document

Set the interval between passive queue declaration attempts in milliseconds.

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  . c o  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;
}