public class UntilSuccessful extends AbstractOutboundRouter implements UntilSuccessfulConfiguration
UntilSuccessful internal route can be executed synchronously or asynchronously depending on the threading profile defined on it. By default, if no threading profile is defined, then it will use the default threading profile configuration for the application. This means that the default behavior is to process asynchronously.
UntilSuccessful can optionally be configured to synchronously return an acknowledgment message when it has scheduled the event
for processing. UntilSuccessful is backed by a ListableObjectStore for storing the events that are pending
(re)processing.
ReactiveProcessor.ProcessingType| Modifier and Type | Field and Description |
|---|---|
protected Processor |
dlqMP |
static String |
PROCESS_ATTEMPT_COUNT_PROPERTY_NAME |
initialised, logger, resultsHandler, routes, started, transactionConfigflowConstruct, messagingExceptionHandler, muleContext| Constructor and Description |
|---|
UntilSuccessful() |
| Modifier and Type | Method and Description |
|---|---|
String |
getAckExpression() |
Processor |
getDlqMP() |
String |
getEventKeyPrefix() |
String |
getFailureExpression() |
ExpressionFilter |
getFailureExpressionFilter() |
int |
getMaxRetries() |
long |
getMillisBetweenRetries() |
ListableObjectStore<Event> |
getObjectStore() |
Processor |
getRoute() |
AbstractOutboundRouter |
getRouter() |
void |
initialise() |
boolean |
isMatch(Event event,
Event.Builder builder)
Determines if the event should be processed
|
protected Event |
route(Event event) |
void |
setAckExpression(String ackExpression) |
void |
setFailureExpression(String failureExpression) |
void |
setMaxRetries(int maxRetries) |
void |
setMillisBetweenRetries(long millisBetweenRetries) |
void |
setObjectStore(ListableObjectStore<Event> objectStore) |
void |
setSecondsBetweenRetries(long secondsBetweenRetries)
Deprecated.
use
setMillisBetweenRetries(long) instead |
void |
setSynchronous(boolean synchronous) |
void |
start() |
void |
stop() |
addRoute, createEventToRoute, dispose, doProcessRoute, getMuleContext, getOwnedMessageProcessors, getResultsHandler, getRouterStatistics, getRoutes, getTransactionConfig, isDynamicRoutes, process, removeRoute, sendRequest, sendRequestEvent, setFlowConstruct, setMessageProcessors, setMuleContext, setResultsHandler, setRouterStatistics, setRoutes, setTransactionConfiggetOwnedObjectsgetFlowConstruct, setMessagingExceptionHandlergetAnnotation, getAnnotations, getLocation, setAnnotationsclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetFlowConstruct, getMuleContextgetProcessingTypepublic static final String PROCESS_ATTEMPT_COUNT_PROPERTY_NAME
protected Processor dlqMP
public void initialise()
throws org.mule.runtime.api.lifecycle.InitialisationException
initialise in interface org.mule.runtime.api.lifecycle.Initialisableinitialise in class AbstractOutboundRouterorg.mule.runtime.api.lifecycle.InitialisationExceptionpublic void start()
throws org.mule.runtime.api.exception.MuleException
start in interface org.mule.runtime.api.lifecycle.Startablestart in class AbstractOutboundRouterorg.mule.runtime.api.exception.MuleExceptionpublic void stop()
throws org.mule.runtime.api.exception.MuleException
stop in interface org.mule.runtime.api.lifecycle.Stoppablestop in class AbstractOutboundRouterorg.mule.runtime.api.exception.MuleExceptionpublic boolean isMatch(Event event, Event.Builder builder) throws org.mule.runtime.api.exception.MuleException
MatchableisMatch in interface Matchableevent - the current event to evaluatebuilder - an event builder in case the filter needs to make changes to the event.org.mule.runtime.api.exception.MuleException - if the event cannot be evaluatedprotected Event route(Event event) throws org.mule.runtime.api.exception.MuleException
route in class AbstractOutboundRouterorg.mule.runtime.api.exception.MuleExceptionpublic ListableObjectStore<Event> getObjectStore()
getObjectStore in interface UntilSuccessfulConfigurationpublic void setObjectStore(ListableObjectStore<Event> objectStore)
public int getMaxRetries()
getMaxRetries in interface UntilSuccessfulConfigurationpublic void setMaxRetries(int maxRetries)
@Deprecated public void setSecondsBetweenRetries(long secondsBetweenRetries)
setMillisBetweenRetries(long) insteadsecondsBetweenRetries - the number of seconds to wait between retriespublic long getMillisBetweenRetries()
getMillisBetweenRetries in interface UntilSuccessfulConfigurationpublic void setMillisBetweenRetries(long millisBetweenRetries)
public String getFailureExpression()
public void setFailureExpression(String failureExpression)
public String getAckExpression()
getAckExpression in interface UntilSuccessfulConfigurationpublic void setAckExpression(String ackExpression)
public String getEventKeyPrefix()
public ExpressionFilter getFailureExpressionFilter()
getFailureExpressionFilter in interface UntilSuccessfulConfigurationpublic Processor getDlqMP()
getDlqMP in interface UntilSuccessfulConfigurationpublic Processor getRoute()
getRoute in interface UntilSuccessfulConfigurationpublic AbstractOutboundRouter getRouter()
getRouter in interface UntilSuccessfulConfigurationpublic void setSynchronous(boolean synchronous)
Copyright © 2003–2017 MuleSoft, Inc.. All rights reserved.