org.mule.routing.outbound
Class AbstractRecipientList

java.lang.Object
  extended by org.mule.processor.AbstractMuleObjectOwner<MessageProcessor>
      extended by org.mule.processor.AbstractMessageProcessorOwner
          extended by org.mule.routing.outbound.AbstractOutboundRouter
              extended by org.mule.routing.outbound.FilteringOutboundRouter
                  extended by org.mule.routing.outbound.AbstractRecipientList
All Implemented Interfaces:
AnnotatedObject, FlowConstructAware, MuleContextAware, Disposable, Initialisable, Lifecycle, Startable, Stoppable, MessageProcessor, MessageProcessorContainer, MessageRouter, Matchable, MatchableMessageProcessor, MatchableMessageRouter, OutboundRouter, RouterStatisticsRecorder, TransformingMatchable
Direct Known Subclasses:
ExpressionRecipientList, StaticRecipientList

public abstract class AbstractRecipientList
extends FilteringOutboundRouter

AbstractRecipientList is used to dispatch a single event to multiple recipients over the same transport. The recipient targets can be configured statically or can be obtained from the message payload.


Field Summary
 
Fields inherited from class org.mule.routing.outbound.FilteringOutboundRouter
expressionManager
 
Fields inherited from class org.mule.routing.outbound.AbstractOutboundRouter
enableCorrelation, initialised, logger, replyTo, resultsHandler, routes, started, transactionConfig
 
Fields inherited from class org.mule.processor.AbstractMuleObjectOwner
flowConstruct, muleContext
 
Fields inherited from interface org.mule.api.lifecycle.Initialisable
PHASE_NAME
 
Fields inherited from interface org.mule.api.lifecycle.Startable
PHASE_NAME
 
Fields inherited from interface org.mule.api.lifecycle.Stoppable
PHASE_NAME
 
Fields inherited from interface org.mule.api.lifecycle.Disposable
PHASE_NAME
 
Fields inherited from interface org.mule.api.AnnotatedObject
PROPERTY_NAME
 
Constructor Summary
AbstractRecipientList()
           
 
Method Summary
protected  OutboundEndpoint buildOutboundEndpoint(String recipient)
           
protected  OutboundEndpoint getRecipientEndpoint(MuleMessage message, Object recipient)
           
protected  OutboundEndpoint getRecipientEndpointFromString(MuleMessage message, String recipient)
           
protected  OutboundEndpoint getRecipientEndpointFromUri(EndpointURI uri)
           
protected abstract  List<Object> getRecipients(MuleEvent event)
           
 Boolean getSynchronous()
           
 boolean isDynamicRoutes()
          Determines whether this router supports dynamic route.
 MuleEvent route(MuleEvent event)
           
 void setSynchronous(Boolean synchronous)
           
 
Methods inherited from class org.mule.routing.outbound.FilteringOutboundRouter
addRoute, getFilter, getRoute, getTransformers, initialise, isMatch, isTransformBeforeMatch, isUseTemplates, setFilter, setTransformers, setUseTemplates
 
Methods inherited from class org.mule.routing.outbound.AbstractOutboundRouter
cloneMessage, cloneMessage, createEventToRoute, dispose, getEnableCorrelation, getMuleContext, getOwnedMessageProcessors, getReplyTo, getResultsHandler, getRoute, getRouterStatistics, getRoutes, getTransactionConfig, process, propagateMagicProperties, removeRoute, sendRequest, sendRequestEvent, setEnableCorrelation, setEnableCorrelationAsString, setMessageProcessors, setMessageProperties, setReplyTo, setResultsHandler, setRouterStatistics, setRoutes, setTransactionConfig, start, stop
 
Methods inherited from class org.mule.processor.AbstractMessageProcessorOwner
addMessageProcessorPathElements, getAnnotation, getAnnotations, getOwnedObjects, setAnnotations
 
Methods inherited from class org.mule.processor.AbstractMuleObjectOwner
getFlowConstruct, setFlowConstruct, setMuleContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.mule.api.context.MuleContextAware
setMuleContext
 
Methods inherited from interface org.mule.api.construct.FlowConstructAware
setFlowConstruct
 

Constructor Detail

AbstractRecipientList

public AbstractRecipientList()
Method Detail

route

public MuleEvent route(MuleEvent event)
                throws RoutingException
Overrides:
route in class FilteringOutboundRouter
Throws:
RoutingException

getRecipientEndpoint

protected OutboundEndpoint getRecipientEndpoint(MuleMessage message,
                                                Object recipient)
                                         throws MuleException
Throws:
MuleException

getRecipientEndpointFromUri

protected OutboundEndpoint getRecipientEndpointFromUri(EndpointURI uri)
                                                throws MuleException
Throws:
MuleException

getRecipientEndpointFromString

protected OutboundEndpoint getRecipientEndpointFromString(MuleMessage message,
                                                          String recipient)
                                                   throws MuleException
Throws:
MuleException

buildOutboundEndpoint

protected OutboundEndpoint buildOutboundEndpoint(String recipient)
                                          throws MuleException
Throws:
MuleException

getSynchronous

public Boolean getSynchronous()

setSynchronous

public void setSynchronous(Boolean synchronous)

isDynamicRoutes

public boolean isDynamicRoutes()
Description copied from interface: OutboundRouter
Determines whether this router supports dynamic route. i.e. routes that are not configured at design time. routes might be pulled from the message or payload.

Specified by:
isDynamicRoutes in interface OutboundRouter
Overrides:
isDynamicRoutes in class AbstractOutboundRouter

getRecipients

protected abstract List<Object> getRecipients(MuleEvent event)
                                       throws CouldNotRouteOutboundMessageException
Throws:
CouldNotRouteOutboundMessageException


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