public class AmqpOutboundEndpoint extends AbstractAmqpOutboundEndpoint implements RabbitTemplate.ConfirmCallback, RabbitTemplate.ReturnCallback
AbstractAmqpOutboundEndpoint.CorrelationDataWrapper
AbstractReplyProducingMessageHandler.RequestHandler
IntegrationManagement.ManagementOverrides
messagingTemplate
EXPRESSION_PARSER, logger
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor and Description |
---|
AmqpOutboundEndpoint(AmqpTemplate amqpTemplate) |
Modifier and Type | Method and Description |
---|---|
void |
confirm(CorrelationData correlationData,
boolean ack,
String cause) |
protected void |
doStop() |
protected void |
endpointInit()
Subclasses can override to perform any additional initialization.
|
String |
getComponentType()
Subclasses may implement this method to provide component type information.
|
IntegrationPatternType |
getIntegrationPatternType()
Return a pattern type this component implements.
|
RabbitTemplate |
getRabbitTemplate() |
protected Object |
handleRequestMessage(Message<?> requestMessage)
Subclasses must implement this method to handle the request Message.
|
void |
returnedMessage(Message message,
int replyCode,
String replyText,
String exchange,
String routingKey) |
void |
setExpectReply(boolean expectReply)
Set to true if this endpoint is a gateway.
|
void |
setMultiSend(boolean multiSend)
|
void |
setWaitForConfirm(boolean waitForConfirm)
Set to true if you want to block the calling thread until a publisher confirm has
been received.
|
addDelayProperty, buildReply, buildReturnedMessage, doInit, doStart, generateCorrelationData, generateExchangeName, generateRoutingKey, getConfirmAckChannel, getConfirmCorrelationExpression, getConfirmNackChannel, getConfirmTimeout, getCorrelationDataGenerator, getDefaultDeliveryMode, getExchangeName, getExchangeNameExpression, getExchangeNameGenerator, getHeaderMapper, getReturnChannel, getRoutingKey, getRoutingKeyExpression, getRoutingKeyGenerator, handleConfirm, isHeadersMappedLast, isLazyConnect, isRunning, setConfirmAckChannel, setConfirmAckChannelName, setConfirmCorrelationExpression, setConfirmCorrelationExpressionString, setConfirmNackChannel, setConfirmNackChannelName, setConfirmTimeout, setConnectionFactory, setDefaultDeliveryMode, setDelay, setDelayExpression, setDelayExpressionString, setErrorMessageStrategy, setExchangeName, setExchangeNameExpression, setExchangeNameExpressionString, setHeaderMapper, setHeadersMappedLast, setLazyConnect, setReturnChannel, setRoutingKey, setRoutingKeyExpression, setRoutingKeyExpressionString, start, stop
doInvokeAdvisedRequestHandler, getBeanClassLoader, getRequiresReply, handleMessageInternal, hasAdviceChain, onInit, setAdviceChain, setBeanClassLoader, setRequiresReply
addNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, messageBuilderForReply, produceOutput, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, setSendTimeout, shouldCopyRequestHeaders, shouldSplitOutput, updateNotPropagatedHeaders
handleMessage, onComplete, onError, onNext, onSubscribe
buildSendTimer, configureMetrics, destroy, getActiveCount, getActiveCountLong, getDuration, getErrorCount, getErrorCountLong, getHandleCount, getHandleCountLong, getHandlerMetrics, getManagedName, getManagedType, getMaxDuration, getMeanDuration, getMetricsCaptor, getMinDuration, getOrder, getOverrides, getStandardDeviationDuration, isCountsEnabled, isLoggingEnabled, isStatsEnabled, registerMetricsCaptor, reset, sendTimer, setCountsEnabled, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, setStatsEnabled, shouldTrack
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
errorCount, handleCount
getBeanName, getComponentName
public AmqpOutboundEndpoint(AmqpTemplate amqpTemplate)
public void setExpectReply(boolean expectReply)
expectReply
- true for a gateway.public void setWaitForConfirm(boolean waitForConfirm)
waitForConfirm
- true to block until the confirmation or timeout is received.AbstractAmqpOutboundEndpoint.setConfirmTimeout(long)
,
setMultiSend(boolean)
public String getComponentType()
IntegrationObjectSupport
getComponentType
in interface NamedComponent
getComponentType
in class MessageHandlerSupport
public void setMultiSend(boolean multiSend)
Iterable
of Message
, send
the messages in a single invocation of the template (same channel) and optionally
wait for the confirms or die or perform all sends within a transaction (existing or
new).multiSend
- true to send multiple messages.setWaitForConfirm(boolean)
public IntegrationPatternType getIntegrationPatternType()
IntegrationPattern
getIntegrationPatternType
in interface IntegrationPattern
getIntegrationPatternType
in class AbstractReplyProducingMessageHandler
IntegrationPatternType
this component implements.public RabbitTemplate getRabbitTemplate()
getRabbitTemplate
in class AbstractAmqpOutboundEndpoint
protected void endpointInit()
AbstractAmqpOutboundEndpoint
endpointInit
in class AbstractAmqpOutboundEndpoint
protected void doStop()
doStop
in class AbstractAmqpOutboundEndpoint
protected Object handleRequestMessage(Message<?> requestMessage)
AbstractReplyProducingMessageHandler
handleRequestMessage
in class AbstractReplyProducingMessageHandler
requestMessage
- The request message.null
.public void confirm(CorrelationData correlationData, boolean ack, String cause)
confirm
in interface RabbitTemplate.ConfirmCallback
public void returnedMessage(Message message, int replyCode, String replyText, String exchange, String routingKey)
returnedMessage
in interface RabbitTemplate.ReturnCallback