org.mule.routing.outbound
Class MessageChunkingRouter

java.lang.Object
  extended by org.mule.routing.AbstractRouter
      extended by org.mule.routing.outbound.AbstractOutboundRouter
          extended by org.mule.routing.outbound.FilteringOutboundRouter
              extended by org.mule.routing.outbound.MessageChunkingRouter
All Implemented Interfaces:
UMOOutboundRouter, UMORouter

public class MessageChunkingRouter
extends FilteringOutboundRouter

A router that breaks up the current message onto smaller parts and sends them to the same destination. The Destination component needs to have a MessageChunkingAggregator inbound router in order to rebuild the message at the other end.

See Also:
MessageChunkingAggregator

Field Summary
 
Fields inherited from class org.mule.routing.outbound.AbstractOutboundRouter
ENABLE_CORRELATION_ALWAYS, ENABLE_CORRELATION_IF_NOT_SET, ENABLE_CORRELATION_NEVER, enableCorrelation, endpoints, logger, propertyExtractor, replyTo, transactionConfig
 
Constructor Summary
MessageChunkingRouter()
           
 
Method Summary
 int getChunkSize()
           
 int getNumberOfMessages()
           
 UMOMessage route(UMOMessage message, UMOSession session, boolean synchronous)
          This method is responsible for routing the Message via the Session.
 void setChunkSize(int chunkSize)
           
 void setNumberOfMessages(int numberOfMessages)
           
 
Methods inherited from class org.mule.routing.outbound.FilteringOutboundRouter
addEndpoint, getEndpoint, getFilter, getTransformer, isMatch, isUseTemplates, setFilter, setTransformer, setUseTemplates
 
Methods inherited from class org.mule.routing.outbound.AbstractOutboundRouter
dispatch, getEnableCorrelation, getEndpoints, getPropertyExtractor, getReplyTo, getTransactionConfig, isDynamicEndpoints, removeEndpoint, send, setEnableCorrelation, setEnableCorrelationAsString, setEndpoints, setMessageProperties, setPropertyExtractor, setPropertyExtractorAsString, setReplyTo, setTransactionConfig
 
Methods inherited from class org.mule.routing.AbstractRouter
getRouterStatistics, setRouterStatistics
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.mule.umo.routing.UMORouter
getRouterStatistics, setRouterStatistics
 

Constructor Detail

MessageChunkingRouter

public MessageChunkingRouter()
Method Detail

getChunkSize

public int getChunkSize()

setChunkSize

public void setChunkSize(int chunkSize)

getNumberOfMessages

public int getNumberOfMessages()

setNumberOfMessages

public void setNumberOfMessages(int numberOfMessages)

route

public UMOMessage route(UMOMessage message,
                        UMOSession session,
                        boolean synchronous)
                 throws RoutingException
Description copied from interface: UMOOutboundRouter
This method is responsible for routing the Message via the Session. The logic for this method will change for each type of router depending on expected behaviour. For example, a MulticastingRouter might just iterate through the list of assoaciated endpoints sending the message. Another type of router such as the ExceptionBasedRouter will hit the first endpoint, if it fails try the second, and so on. Most router implementations will extends the FilteringOutboundRouter which implements all the common logic need for a router.

Specified by:
route in interface UMOOutboundRouter
Overrides:
route in class FilteringOutboundRouter
Parameters:
message - the message to send via one or more endpoints on this router
session - the session used to actually send the event
synchronous - whether the invocation process should be synchronous or not
Returns:
a result message if any from the invocation. If the synchronous flag is false a null result will always be returned.
Throws:
RoutingException
See Also:
FilteringOutboundRouter, ExceptionBasedRouter, MulticastingRouter


Copyright © 2003-2008 MuleSource, Inc.. All Rights Reserved.