Class AbstractRequestHandlerAdvice
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.handler.advice.AbstractRequestHandlerAdvice
- All Implemented Interfaces:
- Advice,- Interceptor,- MethodInterceptor,- Aware,- BeanFactoryAware,- BeanNameAware,- InitializingBean,- ApplicationContextAware,- ExpressionCapable,- NamedComponent
- Direct Known Subclasses:
- CacheRequestHandlerAdvice,- ExpressionEvaluatingRequestHandlerAdvice,- RateLimiterRequestHandlerAdvice,- RequestHandlerCircuitBreakerAdvice,- RequestHandlerRetryAdvice
public abstract class AbstractRequestHandlerAdvice extends IntegrationObjectSupport implements MethodInterceptor
Base class for 
MessageHandler advice classes. Subclasses should provide an
 implementation for doInvoke(ExecutionCallback, Object, Message). Used to
 advise the handleRequestMessage method for
 AbstractReplyProducingMessageHandler or
 MessageHandler.handleMessage(Message) for other message handlers.- Since:
- 2.2
- Author:
- Gary Russell, Artem Bilan
- 
Nested Class SummaryNested Classes Modifier and Type Class Description protected static interfaceAbstractRequestHandlerAdvice.ExecutionCallbackCalled by subclasses in doInvoke() to proceed() the invocation.protected static classAbstractRequestHandlerAdvice.ThrowableHolderException
- 
Field SummaryFields inherited from class org.springframework.integration.context.IntegrationObjectSupportEXPRESSION_PARSER, logger
- 
Constructor SummaryConstructors Constructor Description AbstractRequestHandlerAdvice()
- 
Method SummaryModifier and Type Method Description protected abstract ObjectdoInvoke(AbstractRequestHandlerAdvice.ExecutionCallback callback, Object target, Message<?> message)Subclasses implement this method to apply behavior to theMessageHandler.Objectinvoke(MethodInvocation invocation)protected ExceptionunwrapExceptionIfNecessary(Exception e)Unwrap the cause of aAbstractRequestHandlerAdvice.ThrowableHolderException.protected ThrowableunwrapThrowableIfNecessary(Exception e)Unwrap the cause of aAbstractRequestHandlerAdvice.ThrowableHolderException.Methods inherited from class org.springframework.integration.context.IntegrationObjectSupportafterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getComponentType, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, onInit, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
- 
Constructor Details- 
AbstractRequestHandlerAdvicepublic AbstractRequestHandlerAdvice()
 
- 
- 
Method Details- 
invoke- Specified by:
- invokein interface- MethodInterceptor
- Throws:
- Throwable
 
- 
doInvokeprotected abstract Object doInvoke(AbstractRequestHandlerAdvice.ExecutionCallback callback, Object target, Message<?> message)Subclasses implement this method to apply behavior to theMessageHandler.callback.execute() invokes the handler method and returns its result, or null. - Parameters:
- callback- Subclasses invoke the execute() method on this interface to invoke the handler method.
- target- The target handler.
- message- The message that will be sent to the handler.
- Returns:
- the result after invoking the MessageHandler.
 
- 
unwrapExceptionIfNecessaryUnwrap the cause of aAbstractRequestHandlerAdvice.ThrowableHolderException.- Parameters:
- e- The exception.
- Returns:
- The cause, or e, if not a AbstractRequestHandlerAdvice.ThrowableHolderException
 
- 
unwrapThrowableIfNecessaryUnwrap the cause of aAbstractRequestHandlerAdvice.ThrowableHolderException.- Parameters:
- e- The exception.
- Returns:
- The cause, or e, if not a AbstractRequestHandlerAdvice.ThrowableHolderException
 
 
-