Spring Integration

org.springframework.integration.splitter
Class AbstractMessageSplitter

java.lang.Object
  extended by org.springframework.integration.context.IntegrationObjectSupport
      extended by org.springframework.integration.handler.AbstractMessageHandler
          extended by org.springframework.integration.handler.AbstractReplyProducingMessageHandler
              extended by org.springframework.integration.splitter.AbstractMessageSplitter
All Implemented Interfaces:
BeanFactoryAware, BeanNameAware, InitializingBean, Ordered, NamedComponent, MessageHandler, MessageProducer, TrackableComponent
Direct Known Subclasses:
DefaultMessageSplitter, ExpressionEvaluatingSplitter, MethodInvokingSplitter, XPathMessageSplitter

public abstract class AbstractMessageSplitter
extends AbstractReplyProducingMessageHandler

Base class for Message-splitting handlers.

Author:
Mark Fisher, Dave Syer

Field Summary
static String SEQUENCE_DETAILS
           
 
Fields inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler
DEFAULT_SEND_TIMEOUT
 
Fields inherited from class org.springframework.integration.handler.AbstractMessageHandler
logger
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
AbstractMessageSplitter()
           
 
Method Summary
 String getComponentType()
          Subclasses may implement this method to provide component type information.
protected  Object handleRequestMessage(Message<?> message)
          Subclasses must implement this method to handle the request Message.
protected abstract  Object splitMessage(Message<?> message)
          Subclasses must override this method to split the received Message.
 
Methods inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler
getMessagingTemplate, handleMessageInternal, onInit, setChannelResolver, setOutputChannel, setRequiresReply, setSendTimeout, shouldCopyRequestHeaders
 
Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler
getOrder, handleMessage, setOrder, setShouldTrack
 
Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport
afterPropertiesSet, getBeanFactory, getComponentName, getConversionService, getRequiredMetadataPersister, getTaskScheduler, setBeanFactory, setBeanName, setComponentName, setConversionService, setTaskScheduler, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.springframework.integration.context.NamedComponent
getComponentName
 

Field Detail

SEQUENCE_DETAILS

public static final String SEQUENCE_DETAILS
See Also:
Constant Field Values
Constructor Detail

AbstractMessageSplitter

public AbstractMessageSplitter()
Method Detail

handleRequestMessage

protected final Object handleRequestMessage(Message<?> message)
Description copied from class: AbstractReplyProducingMessageHandler
Subclasses must implement this method to handle the request Message. The return value may be a Message, a MessageBuilder, or any plain Object. The base class will handle the final creation of a reply Message from any of those starting points. If the return value is null, the Message flow will end here.

Specified by:
handleRequestMessage in class AbstractReplyProducingMessageHandler

getComponentType

public String getComponentType()
Description copied from class: IntegrationObjectSupport
Subclasses may implement this method to provide component type information.

Specified by:
getComponentType in interface NamedComponent
Overrides:
getComponentType in class AbstractMessageHandler

splitMessage

protected abstract 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.


Spring Integration

Copyright © 2010. All Rights Reserved.