@Metadata(label="eip,endpoint,routing") public class RecipientListDefinition<Type extends ProcessorDefinition<Type>> extends ExpressionNode implements ExecutorServiceAwareDefinition<RecipientListDefinition<Type>>
inheritErrorHandler, log| Constructor and Description |
|---|
RecipientListDefinition() |
RecipientListDefinition(org.apache.camel.Expression expression) |
RecipientListDefinition(ExpressionDefinition expression) |
| Modifier and Type | Method and Description |
|---|---|
RecipientListDefinition<Type> |
aggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy)
Sets the AggregationStrategy to be used to assemble the replies from the
recipients, into a single outgoing message from the RecipientList.
|
RecipientListDefinition<Type> |
aggregationStrategy(Supplier<org.apache.camel.AggregationStrategy> aggregationStrategy)
Sets the AggregationStrategy to be used to assemble the replies from the
recipients, into a single outgoing message from the RecipientList.
|
RecipientListDefinition<Type> |
aggregationStrategyMethodAllowNull()
If this option is false then the aggregate method is not used if there
was no data to enrich.
|
RecipientListDefinition<Type> |
aggregationStrategyMethodName(String methodName)
This option can be used to explicit declare the method name to use, when
using POJOs as the AggregationStrategy.
|
RecipientListDefinition<Type> |
aggregationStrategyRef(String aggregationStrategyRef)
Sets a reference to the AggregationStrategy to be used to assemble the
replies from the recipients, into a single outgoing message from the
RecipientList.
|
RecipientListDefinition<Type> |
cacheSize(int cacheSize)
Sets the maximum size used by the
ProducerCache which is used to cache and
reuse producers when using this recipient list, when uris are reused. |
RecipientListDefinition<Type> |
delimiter(String delimiter)
Delimiter used if the Expression returned multiple endpoints.
|
Type |
end()
Ends the current block
|
RecipientListDefinition<Type> |
executorService(ExecutorService executorService)
To use a custom Thread Pool to be used for parallel processing.
|
RecipientListDefinition<Type> |
executorServiceRef(String executorServiceRef)
Refers to a custom Thread Pool to be used for parallel processing.
|
org.apache.camel.AggregationStrategy |
getAggregationStrategy() |
Integer |
getCacheSize() |
String |
getDelimiter() |
ExecutorService |
getExecutorService() |
String |
getExecutorServiceRef() |
Boolean |
getIgnoreInvalidEndpoints() |
String |
getLabel()
Returns a label to describe this node such as the expression if some kind
of expression node
|
org.apache.camel.Processor |
getOnPrepare() |
String |
getOnPrepareRef() |
Boolean |
getParallelAggregate() |
Boolean |
getParallelProcessing() |
Boolean |
getShareUnitOfWork() |
String |
getShortName() |
Boolean |
getStopOnAggregateException() |
Boolean |
getStopOnException() |
Boolean |
getStrategyMethodAllowNull() |
String |
getStrategyMethodName() |
String |
getStrategyRef() |
Boolean |
getStreaming() |
Long |
getTimeout() |
RecipientListDefinition<Type> |
ignoreInvalidEndpoints()
Ignore the invalidate endpoint exception when try to create a producer
with that endpoint
|
ProcessClause<RecipientListDefinition<Type>> |
onPrepare()
Sets the
Processor when preparing the
Exchange to be used send using a fluent buidler. |
RecipientListDefinition<Type> |
onPrepare(org.apache.camel.Processor onPrepare)
Uses the
Processor when preparing the
Exchange to be used send. |
RecipientListDefinition<Type> |
onPrepare(Supplier<org.apache.camel.Processor> onPrepare)
Uses the
Processor when preparing the
Exchange to be used send. |
RecipientListDefinition<Type> |
onPrepareRef(String onPrepareRef)
Uses the
Processor when preparing the
Exchange to be send. |
RecipientListDefinition<Type> |
parallelAggregate()
If enabled then the aggregate method on AggregationStrategy can be called
concurrently.
|
RecipientListDefinition<Type> |
parallelProcessing()
If enabled then sending messages to the recipients occurs concurrently.
|
RecipientListDefinition<Type> |
parallelProcessing(boolean parallelProcessing)
If enabled then sending messages to the recipients occurs concurrently.
|
void |
setAggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy)
Sets the AggregationStrategy to be used to assemble the replies from the
recipients, into a single outgoing message from the RecipientList.
|
void |
setCacheSize(Integer cacheSize) |
void |
setDelimiter(String delimiter) |
void |
setExecutorService(ExecutorService executorService) |
void |
setExecutorServiceRef(String executorServiceRef) |
void |
setExpression(ExpressionDefinition expression)
Expression that returns which endpoints (url) to send the message to (the
recipients).
|
void |
setIgnoreInvalidEndpoints(Boolean ignoreInvalidEndpoints) |
void |
setOnPrepare(org.apache.camel.Processor onPrepare) |
void |
setOnPrepareRef(String onPrepareRef) |
void |
setParallelAggregate(Boolean parallelAggregate) |
void |
setParallelProcessing(Boolean parallelProcessing) |
void |
setShareUnitOfWork(Boolean shareUnitOfWork) |
void |
setStopOnAggregateException(Boolean stopOnAggregateException) |
void |
setStopOnException(Boolean stopOnException) |
void |
setStrategyMethodAllowNull(Boolean strategyMethodAllowNull)
If this option is false then the aggregate method is not used if there
was no data to enrich.
|
void |
setStrategyMethodName(String strategyMethodName)
This option can be used to explicit declare the method name to use, when
using POJOs as the AggregationStrategy.
|
void |
setStrategyRef(String strategyRef)
Sets a reference to the AggregationStrategy to be used to assemble the
replies from the recipients, into a single outgoing message from the
RecipientList.
|
void |
setStreaming(Boolean streaming) |
void |
setTimeout(Long timeout) |
RecipientListDefinition<Type> |
shareUnitOfWork()
Shares the
UnitOfWork with the parent and
each of the sub messages. |
RecipientListDefinition<Type> |
stopOnAggregateException()
If enabled, unwind exceptions occurring at aggregation time to the error
handler when parallelProcessing is used.
|
RecipientListDefinition<Type> |
stopOnException()
Will now stop further processing if an exception or failure occurred
during processing of an
Exchange and the caused
exception will be thrown. |
RecipientListDefinition<Type> |
streaming()
If enabled then Camel will process replies out-of-order, eg in the order
they come back.
|
RecipientListDefinition<Type> |
timeout(long timeout)
Sets a total timeout specified in millis, when using parallel processing.
|
String |
toString() |
configureChild, getExpression, getOutputs, id, preCreateProcessor, setExpressionaddInterceptStrategy, addOutput, aggregate, aggregate, aggregate, aggregate, attribute, bean, bean, bean, bean, bean, bean, bean, bean, bean, choice, claimCheck, claimCheck, claimCheck, claimCheck, clearOutput, convertBodyTo, convertBodyTo, delay, delay, delay, doTry, dynamicRouter, dynamicRouter, endChoice, endDoTry, endHystrix, endParent, endRest, enrich, enrich, enrich, enrich, enrich, enrich, enrich, enrich, enrich, enrichWith, enrichWith, enrichWith, enrichWith, enrichWith, enrichWith, filter, filter, filter, filter, getIndex, getInterceptStrategies, getOtherAttributes, getParent, hystrix, idempotentConsumer, idempotentConsumer, idempotentConsumer, inheritErrorHandler, inOnly, inOnly, inOnly, inOnly, inOnly, inOut, inOut, inOut, inOut, inOut, isAbstract, isInheritErrorHandler, isTopLevelOnly, isWrappingEntireOutput, loadBalance, loadBalance, log, log, log, log, log, log, loop, loop, loop, loopDoWhile, loopDoWhile, markRollbackOnly, markRollbackOnlyLast, marshal, marshal, marshal, marshal, multicast, multicast, multicast, onCompletion, onException, onException, pipeline, pipeline, pipeline, pipeline, placeholder, policy, policy, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrich, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollEnrichWith, pollEnrichWith, process, process, process, process, recipientList, recipientList, recipientList, recipientList, removeHeader, removeHeaders, removeHeaders, removeProperties, removeProperties, removeProperty, resequence, resequence, rollback, rollback, routeDescription, routeGroup, routeId, routingSlip, routingSlip, routingSlip, saga, sample, sample, sample, script, script, serviceCall, serviceCall, serviceCall, setBody, setBody, setBody, setBody, setExchangePattern, setHeader, setHeader, setHeader, setInheritErrorHandler, setOtherAttributes, setParent, setProperty, setProperty, sort, sort, sort, split, split, split, startupOrder, step, step, stop, threads, threads, threads, threads, throttle, throttle, throttle, throttle, throttle, throwException, throwException, to, to, to, to, to, to, to, to, to, to, to, to, to, to, toD, toD, toD, toD, toD, toD, toF, transacted, transacted, transform, transform, unmarshal, unmarshal, unmarshal, unmarshal, validate, validate, validate, wireTap, wireTap, wireTapdescription, description, getCustomId, getDescription, getDescriptionText, getId, hasCustomIdAssigned, idOrCreate, setCustomId, setDescription, setIdclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitexecutorServicegetReadPropertyPlaceholderOptions, getWritePropertyPlaceholderOptionspublic RecipientListDefinition()
public RecipientListDefinition(ExpressionDefinition expression)
public RecipientListDefinition(org.apache.camel.Expression expression)
public String getShortName()
getShortName in interface org.apache.camel.NamedNodepublic String getLabel()
ProcessorDefinitiongetLabel in interface org.apache.camel.NamedNodegetLabel in class ExpressionNodepublic Type end()
ProcessorDefinitionend in class ProcessorDefinition<ExpressionNode>public RecipientListDefinition<Type> delimiter(String delimiter)
delimiter - the delimiterpublic RecipientListDefinition<Type> aggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy)
public RecipientListDefinition<Type> aggregationStrategy(Supplier<org.apache.camel.AggregationStrategy> aggregationStrategy)
public RecipientListDefinition<Type> aggregationStrategyRef(String aggregationStrategyRef)
public RecipientListDefinition<Type> aggregationStrategyMethodName(String methodName)
methodName - the method name to callpublic RecipientListDefinition<Type> aggregationStrategyMethodAllowNull()
public RecipientListDefinition<Type> ignoreInvalidEndpoints()
public RecipientListDefinition<Type> parallelProcessing()
public RecipientListDefinition<Type> parallelProcessing(boolean parallelProcessing)
public RecipientListDefinition<Type> parallelAggregate()
public RecipientListDefinition<Type> stopOnAggregateException()
false for the sake of backward
compatibility.public RecipientListDefinition<Type> streaming()
public RecipientListDefinition<Type> stopOnException()
Exchange and the caused
exception will be thrown.
Will also stop if processing the exchange failed (has a fault message) or
an exception was thrown and handled by the error handler (such as using
onException). In all situations the recipient list will stop further
processing. This is the same behavior as in pipeline, which is used by
the routing engine.
The default behavior is to not stop but continue processing till
the endpublic RecipientListDefinition<Type> executorService(ExecutorService executorService)
executorService in interface ExecutorServiceAwareDefinition<RecipientListDefinition<Type extends ProcessorDefinition<Type>>>executorService - the executor servicepublic RecipientListDefinition<Type> executorServiceRef(String executorServiceRef)
executorServiceRef in interface ExecutorServiceAwareDefinition<RecipientListDefinition<Type extends ProcessorDefinition<Type>>>executorServiceRef - reference for a
ExecutorService to lookup in the
Registrypublic RecipientListDefinition<Type> onPrepare(org.apache.camel.Processor onPrepare)
Processor when preparing the
Exchange to be used send. This can be used to
deep-clone messages that should be send, or any custom logic needed
before the exchange is send.onPrepare - the processorpublic RecipientListDefinition<Type> onPrepare(Supplier<org.apache.camel.Processor> onPrepare)
Processor when preparing the
Exchange to be used send. This can be used to
deep-clone messages that should be send, or any custom logic needed
before the exchange is send.onPrepare - the processorpublic ProcessClause<RecipientListDefinition<Type>> onPrepare()
Processor when preparing the
Exchange to be used send using a fluent buidler.public RecipientListDefinition<Type> onPrepareRef(String onPrepareRef)
Processor when preparing the
Exchange to be send. This can be used to
deep-clone messages that should be send, or any custom logic needed
before the exchange is send.onPrepareRef - reference to the processor to lookup in the
Registrypublic RecipientListDefinition<Type> timeout(long timeout)
timeout - timeout in millispublic RecipientListDefinition<Type> shareUnitOfWork()
UnitOfWork with the parent and
each of the sub messages. Recipient List will by default not share unit
of work between the parent exchange and each recipient exchange. This
means each sub exchange has its own individual unit of work.public RecipientListDefinition<Type> cacheSize(int cacheSize)
ProducerCache which is used to cache and
reuse producers when using this recipient list, when uris are reused.cacheSize - the cache size, use 0 for default cache size,
or -1 to turn cache off.public void setExpression(ExpressionDefinition expression)
setExpression in class ExpressionNodepublic String getDelimiter()
public void setDelimiter(String delimiter)
public Boolean getParallelProcessing()
public void setParallelProcessing(Boolean parallelProcessing)
public String getStrategyRef()
public void setStrategyRef(String strategyRef)
public String getStrategyMethodName()
public void setStrategyMethodName(String strategyMethodName)
public Boolean getStrategyMethodAllowNull()
public void setStrategyMethodAllowNull(Boolean strategyMethodAllowNull)
public String getExecutorServiceRef()
getExecutorServiceRef in interface org.apache.camel.ExecutorServiceAwarepublic void setExecutorServiceRef(String executorServiceRef)
setExecutorServiceRef in interface org.apache.camel.ExecutorServiceAwarepublic Boolean getIgnoreInvalidEndpoints()
public void setIgnoreInvalidEndpoints(Boolean ignoreInvalidEndpoints)
public Boolean getStopOnException()
public void setStopOnException(Boolean stopOnException)
public org.apache.camel.AggregationStrategy getAggregationStrategy()
public void setAggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy)
public ExecutorService getExecutorService()
getExecutorService in interface org.apache.camel.ExecutorServiceAwarepublic void setExecutorService(ExecutorService executorService)
setExecutorService in interface org.apache.camel.ExecutorServiceAwarepublic Boolean getStreaming()
public void setStreaming(Boolean streaming)
public Long getTimeout()
public void setTimeout(Long timeout)
public String getOnPrepareRef()
public void setOnPrepareRef(String onPrepareRef)
public org.apache.camel.Processor getOnPrepare()
public void setOnPrepare(org.apache.camel.Processor onPrepare)
public Boolean getShareUnitOfWork()
public void setShareUnitOfWork(Boolean shareUnitOfWork)
public Integer getCacheSize()
public void setCacheSize(Integer cacheSize)
public Boolean getParallelAggregate()
public void setParallelAggregate(Boolean parallelAggregate)
public Boolean getStopOnAggregateException()
public void setStopOnAggregateException(Boolean stopOnAggregateException)
Apache Camel