org.mule.routing
Class FirstSuccessful
java.lang.Object
org.mule.processor.AbstractMuleObjectOwner<MessageProcessor>
org.mule.processor.AbstractMessageProcessorOwner
org.mule.routing.outbound.AbstractOutboundRouter
org.mule.routing.FirstSuccessful
- All Implemented Interfaces:
- AnnotatedObject, FlowConstructAware, MuleContextAware, Disposable, Initialisable, Lifecycle, Startable, Stoppable, MessageProcessor, MessageRouter, Matchable, MatchableMessageProcessor, MatchableMessageRouter, OutboundRouter, RouterStatisticsRecorder
public class FirstSuccessful
- extends AbstractOutboundRouter
FirstSuccessful routes an event to the first target route that can accept it
without throwing or returning an exception. If no such route can be found, an
exception is thrown. Note that this works more reliable with synchronous targets,
but no such restriction is imposed.
Methods inherited from class org.mule.routing.outbound.AbstractOutboundRouter |
addRoute, cloneMessage, createEventToRoute, dispose, getEnableCorrelation, getMuleContext, getOwnedMessageProcessors, getReplyTo, getResultsHandler, getRoute, getRouterStatistics, getRoutes, getTransactionConfig, isDynamicRoutes, process, propagateMagicProperties, removeRoute, sendRequest, sendRequestEvent, setEnableCorrelation, setEnableCorrelationAsString, setMessageProcessors, setMessageProperties, setReplyTo, setResultsHandler, setRouterStatistics, setRoutes, setTransactionConfig, start, stop |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
failureExpression
protected String failureExpression
failureExpressionFilter
protected ExpressionFilter failureExpressionFilter
FirstSuccessful
public FirstSuccessful()
initialise
public void initialise()
throws InitialisationException
- Description copied from interface:
Initialisable
- Method used to perform any initialisation work. If a fatal error occurs during
initialisation an
InitialisationException
should be thrown,
causing the Mule instance to shutdown. If the error is recoverable, say by
retrying to connect, a RecoverableException
should be thrown.
There is no guarantee that by throwing a Recoverable exception that the Mule
instance will not shut down.
- Specified by:
initialise
in interface Initialisable
- Overrides:
initialise
in class AbstractOutboundRouter
- Throws:
InitialisationException
- if a fatal error occurs causing the Mule instance to shutdown
RecoverableException
- if an error occurs that can be recovered from
route
public MuleEvent route(MuleEvent event)
throws MessagingException
- Route the given event to one of our targets
- Specified by:
route
in class AbstractOutboundRouter
- Throws:
MessagingException
cloneEventForRoutinng
protected MuleEvent cloneEventForRoutinng(MuleEvent event,
MessageProcessor mp)
isMatch
public boolean isMatch(MuleMessage message)
throws MuleException
- Description copied from interface:
Matchable
- Determines if the event should be processed
- Parameters:
message
- the current message to evaluate
- Returns:
- true if the event should be processed by this router
- Throws:
MuleException
- if the event cannot be evaluated
setFailureExpression
public void setFailureExpression(String failureExpression)
- Specifies an expression that when evaluated as determines if the processing of
one a route was a failure or not.
- Parameters:
failureExpression
- - See Also:
ExpressionFilter
Copyright © 2003-2012 MuleSoft, Inc.. All Rights Reserved.