@Metadata(label="eip,routing") public class MulticastDefinition extends OutputDefinition<MulticastDefinition> implements ExecutorServiceAwareDefinition<MulticastDefinition>
outputs
inheritErrorHandler, log
Constructor and Description |
---|
MulticastDefinition() |
Modifier and Type | Method and Description |
---|---|
AggregationStrategyClause<MulticastDefinition> |
aggregationStrategy()
Sets the AggregationStrategy to be used to assemble the replies from the
multicasts, into a single outgoing message from the Multicast using a
fluent builder.
|
MulticastDefinition |
aggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy)
Sets the AggregationStrategy to be used to assemble the replies from the
multicasts, into a single outgoing message from the Multicast.
|
MulticastDefinition |
aggregationStrategy(Supplier<org.apache.camel.AggregationStrategy> aggregationStrategy)
Sets the AggregationStrategy to be used to assemble the replies from the
multicasts, into a single outgoing message from the Multicast.
|
MulticastDefinition |
aggregationStrategyMethodAllowNull()
If this option is false then the aggregate method is not used if there
was no data to enrich.
|
MulticastDefinition |
aggregationStrategyMethodName(String methodName)
This option can be used to explicit declare the method name to use, when
using POJOs as the AggregationStrategy.
|
MulticastDefinition |
aggregationStrategyRef(String aggregationStrategyRef)
Sets a reference to the AggregationStrategy to be used to assemble the
replies from the multicasts, into a single outgoing message from the
Multicast.
|
MulticastDefinition |
executorService(ExecutorService executorService)
To use a custom Thread Pool to be used for parallel processing.
|
MulticastDefinition |
executorServiceRef(String executorServiceRef)
Refers to a custom Thread Pool to be used for parallel processing.
|
org.apache.camel.AggregationStrategy |
getAggregationStrategy() |
ExecutorService |
getExecutorService() |
String |
getExecutorServiceRef() |
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() |
ProcessClause<MulticastDefinition> |
onPrepare()
Set the
Processor to use when preparing the
Exchange to be send using a fluent builder. |
MulticastDefinition |
onPrepare(org.apache.camel.Processor onPrepare)
Uses the
Processor when preparing the
Exchange to be send. |
MulticastDefinition |
onPrepare(Supplier<org.apache.camel.Processor> onPrepare)
Uses the
Processor when preparing the
Exchange to be send. |
MulticastDefinition |
onPrepareRef(String onPrepareRef)
Uses the
Processor when preparing the
Exchange to be send. |
MulticastDefinition |
parallelAggregate()
If enabled then the aggregate method on AggregationStrategy can be called
concurrently.
|
MulticastDefinition |
parallelProcessing()
If enabled then sending messages to the multicasts occurs concurrently.
|
MulticastDefinition |
parallelProcessing(boolean parallelProcessing)
If enabled then sending messages to the multicasts occurs concurrently.
|
MulticastDefinition |
setAggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy) |
void |
setExecutorService(ExecutorService executorService) |
void |
setExecutorServiceRef(String executorServiceRef)
Refers to a custom Thread Pool to be used for parallel processing.
|
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)
Refers to an AggregationStrategy to be used to assemble the replies from
the multicasts, into a single outgoing message from the Multicast.
|
void |
setStreaming(Boolean streaming) |
void |
setTimeout(Long timeout) |
MulticastDefinition |
shareUnitOfWork()
Shares the
UnitOfWork with the parent and
each of the sub messages. |
MulticastDefinition |
stopOnAggregateException()
If enabled, unwind exceptions occurring at aggregation time to the error
handler when parallelProcessing is used.
|
MulticastDefinition |
stopOnException()
Will now stop further processing if an exception or failure occurred
during processing of an
Exchange and the caused
exception will be thrown. |
MulticastDefinition |
streaming()
If enabled then Camel will process replies out-of-order, eg in the order
they come back.
|
MulticastDefinition |
timeout(long timeout)
Sets a total timeout specified in millis, when using parallel processing.
|
String |
toString() |
getOutputs, setOutputs
addInterceptStrategy, addOutput, aggregate, aggregate, aggregate, aggregate, attribute, bean, bean, bean, bean, bean, bean, bean, bean, bean, choice, claimCheck, claimCheck, claimCheck, claimCheck, clearOutput, configureChild, convertBodyTo, convertBodyTo, delay, delay, delay, doTry, dynamicRouter, dynamicRouter, end, 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, id, 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, preCreateProcessor, 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, wireTap
description, description, getCustomId, getDescription, getDescriptionText, getId, hasCustomIdAssigned, idOrCreate, setCustomId, setDescription, setId
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
executorService
getReadPropertyPlaceholderOptions, getWritePropertyPlaceholderOptions
public MulticastDefinition()
public String toString()
toString
in class OutputDefinition<MulticastDefinition>
public String getShortName()
getShortName
in interface org.apache.camel.NamedNode
getShortName
in class OutputDefinition<MulticastDefinition>
public String getLabel()
ProcessorDefinition
getLabel
in interface org.apache.camel.NamedNode
getLabel
in class ProcessorDefinition<MulticastDefinition>
public AggregationStrategyClause<MulticastDefinition> aggregationStrategy()
public MulticastDefinition aggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy)
public MulticastDefinition aggregationStrategy(Supplier<org.apache.camel.AggregationStrategy> aggregationStrategy)
public MulticastDefinition aggregationStrategyRef(String aggregationStrategyRef)
public MulticastDefinition aggregationStrategyMethodName(String methodName)
methodName
- the method name to callpublic MulticastDefinition aggregationStrategyMethodAllowNull()
public MulticastDefinition parallelProcessing()
public MulticastDefinition parallelProcessing(boolean parallelProcessing)
public MulticastDefinition parallelAggregate()
public MulticastDefinition stopOnAggregateException()
false
for the sake of backward
compatibility.public MulticastDefinition streaming()
public MulticastDefinition 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 multicast 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 MulticastDefinition executorService(ExecutorService executorService)
executorService
in interface ExecutorServiceAwareDefinition<MulticastDefinition>
executorService
- the executor servicepublic MulticastDefinition executorServiceRef(String executorServiceRef)
executorServiceRef
in interface ExecutorServiceAwareDefinition<MulticastDefinition>
executorServiceRef
- reference for a
ExecutorService
to lookup in the
Registry
public ProcessClause<MulticastDefinition> onPrepare()
Processor
to use when preparing the
Exchange
to be send using a fluent builder.public MulticastDefinition onPrepare(org.apache.camel.Processor onPrepare)
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.onPrepare
- the processorpublic MulticastDefinition onPrepare(Supplier<org.apache.camel.Processor> onPrepare)
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.onPrepare
- the processorpublic MulticastDefinition 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
Registry
public MulticastDefinition timeout(long timeout)
timeout
- timeout in millispublic MulticastDefinition shareUnitOfWork()
UnitOfWork
with the parent and
each of the sub messages. Multicast will by default not share unit of
work between the parent exchange and each multicasted exchange. This
means each sub exchange has its own individual unit of work.public org.apache.camel.AggregationStrategy getAggregationStrategy()
public MulticastDefinition setAggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy)
public Boolean getParallelProcessing()
public void setParallelProcessing(Boolean parallelProcessing)
public Boolean getStreaming()
public void setStreaming(Boolean streaming)
public Boolean getStopOnException()
public void setStopOnException(Boolean stopOnException)
public ExecutorService getExecutorService()
getExecutorService
in interface org.apache.camel.ExecutorServiceAware
public void setExecutorService(ExecutorService executorService)
setExecutorService
in interface org.apache.camel.ExecutorServiceAware
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.ExecutorServiceAware
public void setExecutorServiceRef(String executorServiceRef)
setExecutorServiceRef
in interface org.apache.camel.ExecutorServiceAware
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 Boolean getParallelAggregate()
public void setParallelAggregate(Boolean parallelAggregate)
public Boolean getStopOnAggregateException()
public void setStopOnAggregateException(Boolean stopOnAggregateException)
Apache Camel