org.mule.routing
Class AbstractSplitter

java.lang.Object
  extended by org.mule.processor.AbstractInterceptingMessageProcessor
      extended by org.mule.routing.AbstractSplitter
All Implemented Interfaces:
MuleContextAware, InterceptingMessageProcessor, MessageProcessor, MessageSource
Direct Known Subclasses:
CollectionSplitter, ExpressionSplitter, FeedSplitter, FeedSplitter, MapSplitter, MessageChunkSplitter

public abstract class AbstractSplitter
extends AbstractInterceptingMessageProcessor
implements MuleContextAware

Splits a message invoking the next message processor one for each split part. Implementations must implement splitMessage(MuleEvent) and determine how the message is split.

EIP Reference: http://www.eaipatterns.com/Sequencer.html


Field Summary
protected  CorrelationMode enableCorrelation
           
protected  MessageInfoMapping messageInfoMapping
           
protected  MuleContext muleContext
           
protected  RouterResultsHandler resultsHandler
           
 
Fields inherited from class org.mule.processor.AbstractInterceptingMessageProcessor
logger, next, notificationHandler
 
Constructor Summary
AbstractSplitter()
           
 
Method Summary
protected  boolean isSplitRequired(MuleEvent event)
           
 MuleEvent process(MuleEvent event)
          Invokes the MessageProcessor.
protected  List<MuleEvent> processParts(List parts, MuleEvent event)
           
 void setEnableCorrelation(CorrelationMode enableCorrelation)
           
 void setMessageInfoMapping(MessageInfoMapping messageInfoMapping)
           
 void setMuleContext(MuleContext context)
           
protected abstract  List<MuleMessage> splitMessage(MuleEvent event)
           
 
Methods inherited from class org.mule.processor.AbstractInterceptingMessageProcessor
fireNotification, getMuleContext, processNext, setListener, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

muleContext

protected MuleContext muleContext

resultsHandler

protected RouterResultsHandler resultsHandler

enableCorrelation

protected CorrelationMode enableCorrelation

messageInfoMapping

protected MessageInfoMapping messageInfoMapping
Constructor Detail

AbstractSplitter

public AbstractSplitter()
Method Detail

process

public MuleEvent process(MuleEvent event)
                  throws MuleException
Description copied from interface: MessageProcessor
Invokes the MessageProcessor.

Specified by:
process in interface MessageProcessor
Parameters:
event - MuleEvent to be processed
Returns:
optional response MuleEvent
Throws:
MuleException

isSplitRequired

protected boolean isSplitRequired(MuleEvent event)

splitMessage

protected abstract List<MuleMessage> splitMessage(MuleEvent event)
                                           throws MuleException
Throws:
MuleException

processParts

protected List<MuleEvent> processParts(List parts,
                                       MuleEvent event)
                                throws MuleException
Throws:
MuleException

setEnableCorrelation

public void setEnableCorrelation(CorrelationMode enableCorrelation)

setMuleContext

public void setMuleContext(MuleContext context)
Specified by:
setMuleContext in interface MuleContextAware
Overrides:
setMuleContext in class AbstractInterceptingMessageProcessor

setMessageInfoMapping

public void setMessageInfoMapping(MessageInfoMapping messageInfoMapping)


Copyright © 2003-2014 MuleSoft, Inc.. All Rights Reserved.