Class AbstractStandardMessageHandlerFactoryBean
java.lang.Object
org.springframework.integration.config.AbstractSimpleMessageHandlerFactoryBean<MessageHandler>
org.springframework.integration.config.AbstractStandardMessageHandlerFactoryBean
- All Implemented Interfaces:
Aware, BeanFactoryAware, BeanNameAware, DisposableBean, FactoryBean<MessageHandler>, ApplicationContextAware, ApplicationEventPublisherAware
- Direct Known Subclasses:
FilterFactoryBean, RouterFactoryBean, ServiceActivatorFactoryBean, SplitterFactoryBean, TransformerFactoryBean
public abstract class AbstractStandardMessageHandlerFactoryBean
extends AbstractSimpleMessageHandlerFactoryBean<MessageHandler>
implements DisposableBean
Base class for FactoryBeans that create standard MessageHandler instances.
- Author:
- Mark Fisher, Alexander Peters, Gary Russell, Artem Bilan, David Liu, Ngoc Nhan
-
Field Summary
Fields inherited from class AbstractSimpleMessageHandlerFactoryBean
loggerFields inherited from interface FactoryBean
OBJECT_TYPE_ATTRIBUTE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanprotected voidcheckForIllegalTarget(Object targetObject, @Nullable String targetMethodName) protected MessageHandlerprotected MessageHandlercreateExpressionEvaluatingHandler(Expression expression) protected MessageHandlerprotected <T> MessageHandlercreateMessageProcessingHandler(MessageProcessor<T> processor) protected abstract MessageHandlercreateMethodInvokingHandler(Object targetObject, @Nullable String targetMethodName) Subclasses must implement this method to create the MessageHandler.voiddestroy()protected booleanmethodIsHandleMessageOrEmpty(@Nullable String targetMethodName) protected voidvoidsetExpression(Expression expression) Set a SpEL expression to use.voidsetExpressionString(String expressionString) Set a SpEL expression to use.voidsetRequiresReply(Boolean requiresReply) voidsetSendTimeout(Long sendTimeout) voidsetTargetMethodName(String targetMethodName) Set the method name for the message handler.voidsetTargetObject(Object targetObject) Set the target POJO for the message handler.Methods inherited from class AbstractSimpleMessageHandlerFactoryBean
createHandlerInternal, getBeanFactory, getObject, getObjectType, getPreCreationHandlerType, isSingleton, setAdviceChain, setApplicationContext, setApplicationEventPublisher, setAsync, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setOrder, setOutputChannel, setOutputChannelName
-
Constructor Details
-
AbstractStandardMessageHandlerFactoryBean
public AbstractStandardMessageHandlerFactoryBean()
-
-
Method Details
-
setTargetObject
Set the target POJO for the message handler.- Parameters:
targetObject- the target object.
-
setTargetMethodName
Set the method name for the message handler.- Parameters:
targetMethodName- the target method name.
-
setExpressionString
Set a SpEL expression to use.- Parameters:
expressionString- the expression as a String.
-
setExpression
Set a SpEL expression to use.- Parameters:
expression- the expression.
-
setRequiresReply
-
setSendTimeout
-
getSendTimeout
-
destroy
public void destroy()- Specified by:
destroyin interfaceDisposableBean
-
createHandler
- Specified by:
createHandlerin classAbstractSimpleMessageHandlerFactoryBean<MessageHandler>
-
checkForIllegalTarget
-
createMethodInvokingHandler
protected abstract MessageHandler createMethodInvokingHandler(Object targetObject, @Nullable String targetMethodName) Subclasses must implement this method to create the MessageHandler.- Parameters:
targetObject- the object to use for method invocation.targetMethodName- the method name of the target object to invoke.- Returns:
- the method invoking
MessageHandlerimplementation.
-
createExpressionEvaluatingHandler
-
createMessageProcessingHandler
-
createDefaultHandler
-
methodIsHandleMessageOrEmpty
-
canBeUsedDirect
-
postProcessReplyProducer
-