org.apache.camel.processor
Class RecipientList
java.lang.Object
org.apache.camel.impl.ServiceSupport
org.apache.camel.processor.RecipientList
- All Implemented Interfaces:
- AsyncProcessor, Processor, Service, ShutdownableService
public class RecipientList
- extends ServiceSupport
- implements AsyncProcessor
Implements a dynamic Recipient List
pattern where the list of actual endpoints to send a message exchange to are
dependent on some dynamic expression.
- Version:
| Methods inherited from class org.apache.camel.impl.ServiceSupport |
addChildService, doResume, doShutdown, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, removeChildService, resume, shutdown, start, start, stop, suspend |
RecipientList
public RecipientList(CamelContext camelContext)
RecipientList
public RecipientList(CamelContext camelContext,
String delimiter)
RecipientList
public RecipientList(CamelContext camelContext,
Expression expression)
RecipientList
public RecipientList(CamelContext camelContext,
Expression expression,
String delimiter)
toString
public String toString()
- Overrides:
toString in class Object
process
public void process(Exchange exchange)
throws Exception
- Description copied from interface:
Processor
- Processes the message exchange
- Specified by:
process in interface Processor
- Parameters:
exchange - the message exchange
- Throws:
Exception - if an internal processing error has occurred.
process
public boolean process(Exchange exchange,
AsyncCallback callback)
- Description copied from interface:
AsyncProcessor
- Processes the message exchange.
Similar to
Processor.process(org.apache.camel.Exchange), but the caller supports having the exchange asynchronously processed.
If there was a failure processing then the caused Exception would be set on the Exchange.
- Specified by:
process in interface AsyncProcessor
- Parameters:
exchange - the message exchangecallback - the AsyncCallback will be invoked when the processing of the exchange is completed.
If the exchange is completed synchronously, then the callback is also invoked synchronously.
The callback should therefore be careful of starting recursive loop.
- Returns:
- (doneSync) true to continue execute synchronously, false to continue being executed asynchronously
- See Also:
AsyncProcessorHelper.process(AsyncProcessor, Exchange, AsyncCallback)
sendToRecipientList
public boolean sendToRecipientList(Exchange exchange,
Object recipientList,
AsyncCallback callback)
- Sends the given exchange to the recipient list
resolveEndpoint
protected Endpoint resolveEndpoint(Exchange exchange,
Object recipient)
doStart
protected void doStart()
throws Exception
- Specified by:
doStart in class ServiceSupport
- Throws:
Exception
doStop
protected void doStop()
throws Exception
- Specified by:
doStop in class ServiceSupport
- Throws:
Exception
isStreaming
public boolean isStreaming()
setStreaming
public void setStreaming(boolean streaming)
isIgnoreInvalidEndpoints
public boolean isIgnoreInvalidEndpoints()
setIgnoreInvalidEndpoints
public void setIgnoreInvalidEndpoints(boolean ignoreInvalidEndpoints)
isParallelProcessing
public boolean isParallelProcessing()
setParallelProcessing
public void setParallelProcessing(boolean parallelProcessing)
isStopOnException
public boolean isStopOnException()
setStopOnException
public void setStopOnException(boolean stopOnException)
getExecutorService
public ExecutorService getExecutorService()
setExecutorService
public void setExecutorService(ExecutorService executorService)
getAggregationStrategy
public AggregationStrategy getAggregationStrategy()
setAggregationStrategy
public void setAggregationStrategy(AggregationStrategy aggregationStrategy)
getTimeout
public long getTimeout()
setTimeout
public void setTimeout(long timeout)
Apache CAMEL