public abstract class AbstractAwsMessageHandler
extends org.springframework.integration.handler.AbstractMessageProducingHandler
AbstractMessageProducingHandler
for AWS services.
Utilizes common logic (AsyncHandler
, ErrorMessageStrategy
,
failureChannel
etc.) and message pre- and post-processing,Modifier and Type | Field and Description |
---|---|
protected static long |
DEFAULT_SEND_TIMEOUT |
messagingTemplate
Constructor and Description |
---|
AbstractAwsMessageHandler() |
Modifier and Type | Method and Description |
---|---|
protected abstract void |
additionalOnSuccessHeaders(org.springframework.integration.support.AbstractIntegrationMessageBuilder<?> messageBuilder,
com.amazonaws.AmazonWebServiceRequest request,
java.lang.Object result) |
protected com.amazonaws.handlers.AsyncHandler<? extends com.amazonaws.AmazonWebServiceRequest,?> |
getAsyncHandler() |
protected org.springframework.integration.support.ErrorMessageStrategy |
getErrorMessageStrategy() |
protected org.springframework.expression.EvaluationContext |
getEvaluationContext() |
protected org.springframework.messaging.MessageChannel |
getFailureChannel() |
protected org.springframework.expression.Expression |
getSendTimeoutExpression() |
protected void |
handleMessageInternal(org.springframework.messaging.Message<?> message) |
protected abstract java.util.concurrent.Future<?> |
handleMessageToAws(org.springframework.messaging.Message<?> message) |
protected boolean |
isSync() |
protected <I extends com.amazonaws.AmazonWebServiceRequest,O> |
obtainAsyncHandler(org.springframework.messaging.Message<?> message,
com.amazonaws.AmazonWebServiceRequest request) |
protected void |
onInit() |
void |
setAsyncHandler(com.amazonaws.handlers.AsyncHandler<? extends com.amazonaws.AmazonWebServiceRequest,?> asyncHandler) |
void |
setErrorMessageStrategy(org.springframework.integration.support.ErrorMessageStrategy errorMessageStrategy) |
void |
setFailureChannel(org.springframework.messaging.MessageChannel failureChannel)
Set the failure channel.
|
void |
setFailureChannelName(java.lang.String failureChannelName)
Set the failure channel name.
|
void |
setSendTimeout(long sendTimeout) |
void |
setSendTimeoutExpression(org.springframework.expression.Expression sendTimeoutExpression) |
void |
setSendTimeoutExpressionString(java.lang.String sendTimeoutExpression) |
void |
setSync(boolean sync) |
addNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, produceOutput, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, shouldCopyRequestHeaders, shouldSplitOutput
configureMetrics, getActiveCount, getActiveCountLong, getComponentType, getDuration, getErrorCount, getErrorCountLong, getHandleCount, getHandleCountLong, getManagedName, getManagedType, getMaxDuration, getMeanDuration, getMinDuration, getOrder, getOverrides, getStandardDeviationDuration, handleMessage, isCountsEnabled, isLoggingEnabled, isStatsEnabled, onComplete, onError, onNext, onSubscribe, reset, setCountsEnabled, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, setStatsEnabled
afterPropertiesSet, extractTypeIfPossible, getApplicationContext, getApplicationContextId, getBeanFactory, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
protected static final long DEFAULT_SEND_TIMEOUT
public void setAsyncHandler(com.amazonaws.handlers.AsyncHandler<? extends com.amazonaws.AmazonWebServiceRequest,?> asyncHandler)
protected com.amazonaws.handlers.AsyncHandler<? extends com.amazonaws.AmazonWebServiceRequest,?> getAsyncHandler()
public void setSync(boolean sync)
protected boolean isSync()
public void setSendTimeout(long sendTimeout)
setSendTimeout
in class org.springframework.integration.handler.AbstractMessageProducingHandler
public void setSendTimeoutExpressionString(java.lang.String sendTimeoutExpression)
public void setSendTimeoutExpression(org.springframework.expression.Expression sendTimeoutExpression)
protected org.springframework.expression.Expression getSendTimeoutExpression()
public void setFailureChannel(org.springframework.messaging.MessageChannel failureChannel)
ErrorMessage
will be sent
to this channel with a payload of a AwsRequestFailureException
with the
failed message and cause.failureChannel
- the failure channel.public void setFailureChannelName(java.lang.String failureChannelName)
ErrorMessage
will be
sent to this channel name with a payload of a AwsRequestFailureException
with the failed message and cause.failureChannelName
- the failure channel name.protected org.springframework.messaging.MessageChannel getFailureChannel()
public void setErrorMessageStrategy(org.springframework.integration.support.ErrorMessageStrategy errorMessageStrategy)
protected org.springframework.integration.support.ErrorMessageStrategy getErrorMessageStrategy()
protected org.springframework.expression.EvaluationContext getEvaluationContext()
protected void onInit() throws java.lang.Exception
onInit
in class org.springframework.integration.handler.AbstractMessageProducingHandler
java.lang.Exception
protected void handleMessageInternal(org.springframework.messaging.Message<?> message) throws java.lang.Exception
handleMessageInternal
in class org.springframework.integration.handler.AbstractMessageHandler
java.lang.Exception
protected <I extends com.amazonaws.AmazonWebServiceRequest,O> com.amazonaws.handlers.AsyncHandler<I,O> obtainAsyncHandler(org.springframework.messaging.Message<?> message, com.amazonaws.AmazonWebServiceRequest request)
protected abstract java.util.concurrent.Future<?> handleMessageToAws(org.springframework.messaging.Message<?> message)
protected abstract void additionalOnSuccessHeaders(org.springframework.integration.support.AbstractIntegrationMessageBuilder<?> messageBuilder, com.amazonaws.AmazonWebServiceRequest request, java.lang.Object result)