Class MethodInvokingMessageProcessor<T>
java.lang.Object
org.springframework.integration.util.AbstractExpressionEvaluator
org.springframework.integration.handler.AbstractMessageProcessor<T>
org.springframework.integration.handler.MethodInvokingMessageProcessor<T>
- Type Parameters:
T- the expected payload type.
- All Implemented Interfaces:
Aware,BeanFactoryAware,InitializingBean,Lifecycle,MessageProcessor<T>,ManageableLifecycle
public class MethodInvokingMessageProcessor<T>
extends AbstractMessageProcessor<T>
implements ManageableLifecycle
A MessageProcessor implementation that invokes a method on a target Object.
The Method instance or method name may be provided as a constructor argument.
If a method name is provided, and more than one declared method has that name,
the method-selection will be dynamic, based on the underlying SpEL method resolution.
Alternatively, an annotation type may be provided so that the candidates for
SpEL's method resolution are determined by the presence of that
annotation rather than the method name.
- Since:
- 2.0
- Author:
- Dave Syer, Artem Bilan, Gary Russell
-
Field Summary
Fields inherited from class org.springframework.integration.util.AbstractExpressionEvaluator
EXPRESSION_PARSER, logger -
Constructor Summary
ConstructorsConstructorDescriptionMethodInvokingMessageProcessor(Object targetObject, Class<? extends Annotation> annotationType) MethodInvokingMessageProcessor(Object targetObject, Method method) MethodInvokingMessageProcessor(Object targetObject, String methodName) MethodInvokingMessageProcessor(Object targetObject, String methodName, boolean canProcessMessageList) -
Method Summary
Modifier and TypeMethodDescriptionbooleanisAsync()booleanprocessMessage(Message<?> message) Process the Message and return a value (or null).voidsetBeanFactory(BeanFactory beanFactory) Specify a BeanFactory in order to enable resolution via@beanNamein the expression.voidsetConversionService(ConversionService conversionService) voidsetUseSpelInvoker(boolean useSpelInvoker) Abooleanflag to use SpEL Expression evaluation orInvocableHandlerMethodfor target method invocation.voidstart()voidstop()Methods inherited from class org.springframework.integration.util.AbstractExpressionEvaluator
afterPropertiesSet, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, getBeanFactory, getEvaluationContext, getEvaluationContext, getMessageBuilderFactory, onInit, setSimpleEvaluationContext
-
Constructor Details
-
MethodInvokingMessageProcessor
-
MethodInvokingMessageProcessor
-
MethodInvokingMessageProcessor
-
MethodInvokingMessageProcessor
public MethodInvokingMessageProcessor(Object targetObject, Class<? extends Annotation> annotationType)
-
-
Method Details
-
setConversionService
- Overrides:
setConversionServicein classAbstractExpressionEvaluator
-
setBeanFactory
Description copied from class:AbstractExpressionEvaluatorSpecify a BeanFactory in order to enable resolution via@beanNamein the expression.- Specified by:
setBeanFactoryin interfaceBeanFactoryAware- Overrides:
setBeanFactoryin classAbstractExpressionEvaluator
-
setUseSpelInvoker
public void setUseSpelInvoker(boolean useSpelInvoker) Abooleanflag to use SpEL Expression evaluation orInvocableHandlerMethodfor target method invocation.- Parameters:
useSpelInvoker- to use SpEL Expression evaluation or not.- Since:
- 5.0
-
start
public void start()- Specified by:
startin interfaceLifecycle- Specified by:
startin interfaceManageableLifecycle
-
stop
public void stop()- Specified by:
stopin interfaceLifecycle- Specified by:
stopin interfaceManageableLifecycle
-
isRunning
public boolean isRunning()- Specified by:
isRunningin interfaceLifecycle- Specified by:
isRunningin interfaceManageableLifecycle
-
isAsync
public boolean isAsync() -
processMessage
Description copied from interface:MessageProcessorProcess the Message and return a value (or null).- Specified by:
processMessagein interfaceMessageProcessor<T>- Specified by:
processMessagein classAbstractMessageProcessor<T>- Parameters:
message- The message to process.- Returns:
- The result.
-