Class AmqpClientInboundGatewaySpec
java.lang.Object
org.springframework.integration.dsl.IntegrationComponentSpec<AmqpClientInboundGatewaySpec, AmqpClientInboundGateway>
org.springframework.integration.dsl.MessagingGatewaySpec<AmqpClientInboundGatewaySpec, AmqpClientInboundGateway>
org.springframework.integration.amqp.dsl.AmqpClientInboundGatewaySpec
- All Implemented Interfaces:
DisposableBean
,FactoryBean<AmqpClientInboundGateway>
,InitializingBean
,Lifecycle
,Phased
,SmartLifecycle
public class AmqpClientInboundGatewaySpec
extends MessagingGatewaySpec<AmqpClientInboundGatewaySpec, AmqpClientInboundGateway>
Spec for an
AmqpClientInboundGateway
.- Since:
- 7.0
- Author:
- Artem Bilan
-
Field Summary
Fields inherited from class org.springframework.integration.dsl.IntegrationComponentSpec
logger, PARSER, target
Fields inherited from interface org.springframework.beans.factory.FactoryBean
OBJECT_TYPE_ATTRIBUTE
Fields inherited from interface org.springframework.context.SmartLifecycle
DEFAULT_PHASE
-
Constructor Summary
ConstructorsConstructorDescriptionAmqpClientInboundGatewaySpec
(org.springframework.amqp.rabbitmq.client.AmqpConnectionFactory connectionFactory, String... queueNames) Create an instance based on aAmqpConnectionFactory
and queues to consume from. -
Method Summary
Modifier and TypeMethodDescriptionadviceChain
(Advice... advices) SetAdvice
instances to proxy message listener.afterReceivePostProcessors
(MessagePostProcessor... afterReceivePostProcessors) AddMessagePostProcessor
instances to apply on just received messages.autoSettle
(boolean autoSettle) Set tofalse
to propagate an acknowledgement callback into message headers for downstream flow manual settlement.consumersPerQueue
(int consumersPerQueue) Each queue runs in its own consumer; set this property to create multiple consumers for each queue.defaultRequeue
(boolean defaultRequeue) Set the default behavior when a message processing has failed.gracefulShutdownPeriod
(Duration gracefulShutdownPeriod) Set a duration for how long to wait for all the consumers to shut down successfully on listener container stop.headerMapper
(AmqpHeaderMapper headerMapper) Set anAmqpHeaderMapper
to map request and reply headers.initialCredits
(int initialCredits) The initial number credits to grant to the AMQP receiver.messageConverter
(@Nullable MessageConverter messageConverter) Set aMessageConverter
to replace the defaultSimpleMessageConverter
.priority
(int priority) The consumer priority.replyExchange
(String exchange) Set an exchange for publishing reply.replyPostProcessor
(ReplyPostProcessor replyPostProcessor) Set anReplyPostProcessor
to modify reply AMQP message before producing.replyQueue
(String queue) Set a queue for publishing reply.replyRoutingKey
(String routingKey) Set a routing key for publishing reply.stateListeners
(com.rabbitmq.client.amqp.Resource.StateListener... stateListeners) AddResource.StateListener
instances to the consumer.Methods inherited from class org.springframework.integration.dsl.MessagingGatewaySpec
autoStartup, errorChannel, errorChannel, errorOnTimeout, id, observationConvention, phase, replyChannel, replyChannel, replyMapper, replyTimeout, requestChannel, requestChannel, requestMapper, requestTimeout, shouldTrack
Methods inherited from class org.springframework.integration.dsl.IntegrationComponentSpec
_this, afterPropertiesSet, destroy, doGet, getId, getObject, getObjectType, getPhase, isAutoStartup, isRunning, start, stop, stop
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.beans.factory.FactoryBean
isSingleton
Methods inherited from interface org.springframework.context.SmartLifecycle
isPauseable
-
Constructor Details
-
AmqpClientInboundGatewaySpec
public AmqpClientInboundGatewaySpec(org.springframework.amqp.rabbitmq.client.AmqpConnectionFactory connectionFactory, String... queueNames) Create an instance based on aAmqpConnectionFactory
and queues to consume from.- Parameters:
connectionFactory
- theAmqpConnectionFactory
to connectqueueNames
- queues to consume from
-
-
Method Details
-
initialCredits
The initial number credits to grant to the AMQP receiver. The default is100
.- Parameters:
initialCredits
- number of initial credits- Returns:
- the spec
-
priority
The consumer priority.- Parameters:
priority
- consumer priority- Returns:
- the spec
-
stateListeners
public AmqpClientInboundGatewaySpec stateListeners(com.rabbitmq.client.amqp.Resource.StateListener... stateListeners) AddResource.StateListener
instances to the consumer.- Parameters:
stateListeners
- listeners to add- Returns:
- the spec
-
afterReceivePostProcessors
public AmqpClientInboundGatewaySpec afterReceivePostProcessors(MessagePostProcessor... afterReceivePostProcessors) AddMessagePostProcessor
instances to apply on just received messages.- Parameters:
afterReceivePostProcessors
- listeners to add- Returns:
- the spec
-
adviceChain
SetAdvice
instances to proxy message listener.- Parameters:
advices
- the advices to add- Returns:
- the spec
-
autoSettle
Set tofalse
to propagate an acknowledgement callback into message headers for downstream flow manual settlement.- Parameters:
autoSettle
-true
to acknowledge messages automatically.- Returns:
- the spec
-
defaultRequeue
Set the default behavior when a message processing has failed. When true, messages will be requeued, when false, they will be discarded. This option can be overruled by throwingAmqpRejectAndDontRequeueException
orImmediateRequeueAmqpException
from the downstream flow. Default true.- Parameters:
defaultRequeue
- true to requeue by default.- Returns:
- the spec
-
gracefulShutdownPeriod
Set a duration for how long to wait for all the consumers to shut down successfully on listener container stop. Default 30 seconds.- Parameters:
gracefulShutdownPeriod
- the timeout to wait on stop.- Returns:
- the spec
-
consumersPerQueue
Each queue runs in its own consumer; set this property to create multiple consumers for each queue. Can be treated asconcurrency
, but per queue.- Parameters:
consumersPerQueue
- the consumers per queue.- Returns:
- the spec
-
messageConverter
Set aMessageConverter
to replace the defaultSimpleMessageConverter
. If set to null, an AMQP message is sent as is into a message payload. And a reply message has to return an AMQP message as its payload.- Parameters:
messageConverter
- theMessageConverter
to use or null.- Returns:
- the spec
-
headerMapper
Set anAmqpHeaderMapper
to map request and reply headers.- Parameters:
headerMapper
- theAmqpHeaderMapper
to use.- Returns:
- the spec
-
replyPostProcessor
Set anReplyPostProcessor
to modify reply AMQP message before producing.- Parameters:
replyPostProcessor
- theReplyPostProcessor
to use.- Returns:
- the spec
-
replyExchange
Set an exchange for publishing reply. Mutually exclusive withreplyQueue(String)
. If neither is set, thereplyTo
property from the request message is used to determine where to produce a reply.- Parameters:
exchange
- the exchange to send a reply.- Returns:
- the spec
-
replyRoutingKey
Set a routing key for publishing reply. Used only together withreplyExchange(String)
. If neither is set, thereplyTo
property from the request message is used to determine where to produce a reply.- Parameters:
routingKey
- the routing key to send a reply.- Returns:
- the spec
-
replyQueue
Set a queue for publishing reply. Mutually exclusive withreplyExchange(String)
. If neither is set, thereplyTo
property from the request message is used to determine where to produce a reply.- Parameters:
queue
- the queue to send a reply.- Returns:
- the spec
-