org.springframework.integration.splitter
Class AbstractMessageSplitter

java.lang.Object
  extended by org.springframework.integration.handler.AbstractMessageHandler
      extended by org.springframework.integration.handler.AbstractReplyProducingMessageHandler
          extended by org.springframework.integration.splitter.AbstractMessageSplitter
All Implemented Interfaces:
org.springframework.beans.factory.BeanFactoryAware, MessageHandler
Direct Known Subclasses:
DefaultMessageSplitter, MethodInvokingSplitter, XPathMessageSplitter

public abstract class AbstractMessageSplitter
extends AbstractReplyProducingMessageHandler

Base class for Message-splitting handlers.

Author:
Mark Fisher

Field Summary
 
Fields inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler
DEFAULT_SEND_TIMEOUT
 
Fields inherited from class org.springframework.integration.handler.AbstractMessageHandler
logger
 
Constructor Summary
AbstractMessageSplitter()
           
 
Method Summary
protected  void handleRequestMessage(Message<?> message, ReplyMessageHolder replyHolder)
           
protected abstract  java.lang.Object splitMessage(Message<?> message)
          Subclasses must override this method to split the received Message.
 
Methods inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler
getOutputChannel, handleMessageInternal, sendReplyMessage, setBeanFactory, setChannelResolver, setOutputChannel, setRequiresReply, setSelector, setSendTimeout, supports
 
Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler
handleMessage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractMessageSplitter

public AbstractMessageSplitter()
Method Detail

handleRequestMessage

protected final void handleRequestMessage(Message<?> message,
                                          ReplyMessageHolder replyHolder)
Specified by:
handleRequestMessage in class AbstractReplyProducingMessageHandler

splitMessage

protected abstract java.lang.Object splitMessage(Message<?> message)
Subclasses must override this method to split the received Message. The return value may be a Collection or Array. The individual elements may be Messages, but it is not necessary. If the elements are not Messages, each will be provided as the payload of a Message. It is also acceptable to return a single Object or Message. In that case, a single reply Message will be produced.