Interface DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder
- All Superinterfaces:
org.apache.camel.builder.EndpointProducerBuilder
,org.apache.camel.EndpointProducerResolver
- Enclosing interface:
DynamicRouterEndpointBuilderFactory
public static interface DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder
extends org.apache.camel.builder.EndpointProducerBuilder
Builder for endpoint for the Dynamic Router component.
-
Method Summary
Modifier and TypeMethodDescriptionadvanced()
aggregationStrategy
(String aggregationStrategy) Refers to an AggregationStrategy to be used to assemble the replies from the multicasts, into a single outgoing message from the Multicast.aggregationStrategyBean
(String aggregationStrategyBean) Refers to an AggregationStrategy to be used to assemble the replies from the multicasts, into a single outgoing message from the Multicast.aggregationStrategyBean
(org.apache.camel.AggregationStrategy aggregationStrategyBean) Refers to an AggregationStrategy to be used to assemble the replies from the multicasts, into a single outgoing message from the Multicast.aggregationStrategyMethodAllowNull
(boolean aggregationStrategyMethodAllowNull) If this option is false then the aggregate method is not used if there was no data to enrich.aggregationStrategyMethodAllowNull
(String aggregationStrategyMethodAllowNull) If this option is false then the aggregate method is not used if there was no data to enrich.aggregationStrategyMethodName
(String aggregationStrategyMethodName) You can use a POJO as the AggregationStrategy.cacheSize
(int cacheSize) When caching producer endpoints, this is the size of the cache.When caching producer endpoints, this is the size of the cache.executorService
(String executorService) Refers to a custom Thread Pool to be used for parallel processing.executorServiceBean
(String executorServiceBean) Refers to a custom Thread Pool to be used for parallel processing.executorServiceBean
(ExecutorService executorServiceBean) Refers to a custom Thread Pool to be used for parallel processing.ignoreInvalidEndpoints
(boolean ignoreInvalidEndpoints) Ignore the invalid endpoint exception when attempting to create a producer with an invalid endpoint.ignoreInvalidEndpoints
(String ignoreInvalidEndpoints) Ignore the invalid endpoint exception when attempting to create a producer with an invalid endpoint.Uses the Processor when preparing the org.apache.camel.Exchange to be sent.onPrepareProcessor
(String onPrepareProcessor) Uses the Processor when preparing the org.apache.camel.Exchange to be sent.onPrepareProcessor
(org.apache.camel.Processor onPrepareProcessor) Uses the Processor when preparing the org.apache.camel.Exchange to be sent.parallelAggregate
(boolean parallelAggregate) If enabled then the aggregate method on AggregationStrategy can be called concurrently.parallelAggregate
(String parallelAggregate) If enabled then the aggregate method on AggregationStrategy can be called concurrently.parallelProcessing
(boolean parallelProcessing) If enabled, then sending via multicast occurs concurrently.parallelProcessing
(String parallelProcessing) If enabled, then sending via multicast occurs concurrently.recipientMode
(String recipientMode) Recipient mode: firstMatch or allMatch.shareUnitOfWork
(boolean shareUnitOfWork) Shares the org.apache.camel.spi.UnitOfWork with the parent and each of the sub messages.shareUnitOfWork
(String shareUnitOfWork) Shares the org.apache.camel.spi.UnitOfWork with the parent and each of the sub messages.stopOnException
(boolean stopOnException) Will stop further processing if an exception or failure occurred during processing of an org.apache.camel.Exchange and the caused exception will be thrown.stopOnException
(String stopOnException) Will stop further processing if an exception or failure occurred during processing of an org.apache.camel.Exchange and the caused exception will be thrown.streaming
(boolean streaming) If enabled, then Camel will process replies out-of-order (e.g., in the order they come back).If enabled, then Camel will process replies out-of-order (e.g., in the order they come back).synchronous
(boolean synchronous) Sets whether synchronous processing should be strictly used.synchronous
(String synchronous) Sets whether synchronous processing should be strictly used.timeout
(long timeout) Sets a total timeout specified in milliseconds, when using parallel processing.Sets a total timeout specified in milliseconds, when using parallel processing.warnDroppedMessage
(boolean warnDroppedMessage) Flag to log a warning if no predicates match for an exchange.warnDroppedMessage
(String warnDroppedMessage) Flag to log a warning if no predicates match for an exchange.Methods inherited from interface org.apache.camel.builder.EndpointProducerBuilder
doSetMultiValueProperties, doSetMultiValueProperty, doSetProperty, expr, getRawUri, getUri
Methods inherited from interface org.apache.camel.EndpointProducerResolver
resolve, resolve
-
Method Details
-
advanced
-
aggregationStrategy
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder aggregationStrategy(String aggregationStrategy) Refers to an AggregationStrategy to be used to assemble the replies from the multicasts, into a single outgoing message from the Multicast. By default, Camel will use the last reply as the outgoing message. You can also use a POJO as the AggregationStrategy. The option is a:java.lang.String
type. Group: common- Parameters:
aggregationStrategy
- the value to set- Returns:
- the dsl builder
-
aggregationStrategyBean
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder aggregationStrategyBean(org.apache.camel.AggregationStrategy aggregationStrategyBean) Refers to an AggregationStrategy to be used to assemble the replies from the multicasts, into a single outgoing message from the Multicast. By default, Camel will use the last reply as the outgoing message. You can also use a POJO as the AggregationStrategy. The option is a:org.apache.camel.AggregationStrategy
type. Group: common- Parameters:
aggregationStrategyBean
- the value to set- Returns:
- the dsl builder
-
aggregationStrategyBean
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder aggregationStrategyBean(String aggregationStrategyBean) Refers to an AggregationStrategy to be used to assemble the replies from the multicasts, into a single outgoing message from the Multicast. By default, Camel will use the last reply as the outgoing message. You can also use a POJO as the AggregationStrategy. The option will be converted to aorg.apache.camel.AggregationStrategy
type. Group: common- Parameters:
aggregationStrategyBean
- the value to set- Returns:
- the dsl builder
-
aggregationStrategyMethodAllowNull
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder aggregationStrategyMethodAllowNull(boolean aggregationStrategyMethodAllowNull) If this option is false then the aggregate method is not used if there was no data to enrich. If this option is true then null values is used as the oldExchange (when no data to enrich), when using POJOs as the AggregationStrategy. The option is a:boolean
type. Default: false Group: common- Parameters:
aggregationStrategyMethodAllowNull
- the value to set- Returns:
- the dsl builder
-
aggregationStrategyMethodAllowNull
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder aggregationStrategyMethodAllowNull(String aggregationStrategyMethodAllowNull) If this option is false then the aggregate method is not used if there was no data to enrich. If this option is true then null values is used as the oldExchange (when no data to enrich), when using POJOs as the AggregationStrategy. The option will be converted to aboolean
type. Default: false Group: common- Parameters:
aggregationStrategyMethodAllowNull
- the value to set- Returns:
- the dsl builder
-
aggregationStrategyMethodName
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder aggregationStrategyMethodName(String aggregationStrategyMethodName) You can use a POJO as the AggregationStrategy. This refers to the name of the method that aggregates the exchanges. The option is a:java.lang.String
type. Group: common- Parameters:
aggregationStrategyMethodName
- the value to set- Returns:
- the dsl builder
-
cacheSize
When caching producer endpoints, this is the size of the cache. Default is 100. The option is a:int
type. Default: 100 Group: common- Parameters:
cacheSize
- the value to set- Returns:
- the dsl builder
-
cacheSize
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder cacheSize(String cacheSize) When caching producer endpoints, this is the size of the cache. Default is 100. The option will be converted to aint
type. Default: 100 Group: common- Parameters:
cacheSize
- the value to set- Returns:
- the dsl builder
-
executorService
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder executorService(String executorService) Refers to a custom Thread Pool to be used for parallel processing. Notice that, if you set this option, then parallel processing is automatically implied, and you do not have to enable that option in addition to this one. The option is a:java.lang.String
type. Group: common- Parameters:
executorService
- the value to set- Returns:
- the dsl builder
-
executorServiceBean
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder executorServiceBean(ExecutorService executorServiceBean) Refers to a custom Thread Pool to be used for parallel processing. Notice that, if you set this option, then parallel processing is automatically implied, and you do not have to enable that option in addition to this one. The option is a:java.util.concurrent.ExecutorService
type. Group: common- Parameters:
executorServiceBean
- the value to set- Returns:
- the dsl builder
-
executorServiceBean
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder executorServiceBean(String executorServiceBean) Refers to a custom Thread Pool to be used for parallel processing. Notice that, if you set this option, then parallel processing is automatically implied, and you do not have to enable that option in addition to this one. The option will be converted to ajava.util.concurrent.ExecutorService
type. Group: common- Parameters:
executorServiceBean
- the value to set- Returns:
- the dsl builder
-
ignoreInvalidEndpoints
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder ignoreInvalidEndpoints(boolean ignoreInvalidEndpoints) Ignore the invalid endpoint exception when attempting to create a producer with an invalid endpoint. The option is a:boolean
type. Default: false Group: common- Parameters:
ignoreInvalidEndpoints
- the value to set- Returns:
- the dsl builder
-
ignoreInvalidEndpoints
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder ignoreInvalidEndpoints(String ignoreInvalidEndpoints) Ignore the invalid endpoint exception when attempting to create a producer with an invalid endpoint. The option will be converted to aboolean
type. Default: false Group: common- Parameters:
ignoreInvalidEndpoints
- the value to set- Returns:
- the dsl builder
-
onPrepare
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder onPrepare(String onPrepare) Uses the Processor when preparing the org.apache.camel.Exchange to be sent. This can be used to deep-clone messages that should be sent, or to provide any custom logic that is needed before the exchange is sent. This is the name of a bean in the registry. The option is a:java.lang.String
type. Group: common- Parameters:
onPrepare
- the value to set- Returns:
- the dsl builder
-
onPrepareProcessor
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder onPrepareProcessor(org.apache.camel.Processor onPrepareProcessor) Uses the Processor when preparing the org.apache.camel.Exchange to be sent. This can be used to deep-clone messages that should be sent, or to provide any custom logic that is needed before the exchange is sent. This is a Processor instance. The option is a:org.apache.camel.Processor
type. Group: common- Parameters:
onPrepareProcessor
- the value to set- Returns:
- the dsl builder
-
onPrepareProcessor
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder onPrepareProcessor(String onPrepareProcessor) Uses the Processor when preparing the org.apache.camel.Exchange to be sent. This can be used to deep-clone messages that should be sent, or to provide any custom logic that is needed before the exchange is sent. This is a Processor instance. The option will be converted to aorg.apache.camel.Processor
type. Group: common- Parameters:
onPrepareProcessor
- the value to set- Returns:
- the dsl builder
-
parallelAggregate
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder parallelAggregate(boolean parallelAggregate) If enabled then the aggregate method on AggregationStrategy can be called concurrently. Notice that this would require the implementation of AggregationStrategy to be implemented as thread-safe. By default, this is false, meaning that Camel synchronizes the call to the aggregate method. Though, in some use-cases, this can be used to archive higher performance when the AggregationStrategy is implemented as thread-safe. The option is a:boolean
type. Default: false Group: common- Parameters:
parallelAggregate
- the value to set- Returns:
- the dsl builder
-
parallelAggregate
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder parallelAggregate(String parallelAggregate) If enabled then the aggregate method on AggregationStrategy can be called concurrently. Notice that this would require the implementation of AggregationStrategy to be implemented as thread-safe. By default, this is false, meaning that Camel synchronizes the call to the aggregate method. Though, in some use-cases, this can be used to archive higher performance when the AggregationStrategy is implemented as thread-safe. The option will be converted to aboolean
type. Default: false Group: common- Parameters:
parallelAggregate
- the value to set- Returns:
- the dsl builder
-
parallelProcessing
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder parallelProcessing(boolean parallelProcessing) If enabled, then sending via multicast occurs concurrently. Note that the caller thread will still wait until all messages have been fully processed before it continues. It is only the sending and processing of the replies from the multicast recipients that happens concurrently. When parallel processing is enabled, then the Camel routing engine will continue processing using the last used thread from the parallel thread pool. However, if you want to use the original thread that called the multicast, then make sure to enable the synchronous option as well. The option is a:boolean
type. Default: false Group: common- Parameters:
parallelProcessing
- the value to set- Returns:
- the dsl builder
-
parallelProcessing
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder parallelProcessing(String parallelProcessing) If enabled, then sending via multicast occurs concurrently. Note that the caller thread will still wait until all messages have been fully processed before it continues. It is only the sending and processing of the replies from the multicast recipients that happens concurrently. When parallel processing is enabled, then the Camel routing engine will continue processing using the last used thread from the parallel thread pool. However, if you want to use the original thread that called the multicast, then make sure to enable the synchronous option as well. The option will be converted to aboolean
type. Default: false Group: common- Parameters:
parallelProcessing
- the value to set- Returns:
- the dsl builder
-
recipientMode
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder recipientMode(String recipientMode) Recipient mode: firstMatch or allMatch. The option is a:java.lang.String
type. Default: firstMatch Group: common- Parameters:
recipientMode
- the value to set- Returns:
- the dsl builder
-
stopOnException
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder stopOnException(boolean stopOnException) Will stop further processing if an exception or failure occurred during processing of an org.apache.camel.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 the pipeline that is used by the routing engine. The default behavior is to not stop, but to continue processing until the end. The option is a:boolean
type. Default: false Group: common- Parameters:
stopOnException
- the value to set- Returns:
- the dsl builder
-
stopOnException
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder stopOnException(String stopOnException) Will stop further processing if an exception or failure occurred during processing of an org.apache.camel.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 the pipeline that is used by the routing engine. The default behavior is to not stop, but to continue processing until the end. The option will be converted to aboolean
type. Default: false Group: common- Parameters:
stopOnException
- the value to set- Returns:
- the dsl builder
-
streaming
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder streaming(boolean streaming) If enabled, then Camel will process replies out-of-order (e.g., in the order they come back). If disabled, Camel will process replies in the same order as defined by the multicast. The option is a:boolean
type. Default: false Group: common- Parameters:
streaming
- the value to set- Returns:
- the dsl builder
-
streaming
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder streaming(String streaming) If enabled, then Camel will process replies out-of-order (e.g., in the order they come back). If disabled, Camel will process replies in the same order as defined by the multicast. The option will be converted to aboolean
type. Default: false Group: common- Parameters:
streaming
- the value to set- Returns:
- the dsl builder
-
synchronous
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder synchronous(boolean synchronous) Sets whether synchronous processing should be strictly used. When enabled then the same thread is used to continue routing after the multicast is complete, even if parallel processing is enabled. The option is a:boolean
type. Default: false Group: common- Parameters:
synchronous
- the value to set- Returns:
- the dsl builder
-
synchronous
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder synchronous(String synchronous) Sets whether synchronous processing should be strictly used. When enabled then the same thread is used to continue routing after the multicast is complete, even if parallel processing is enabled. The option will be converted to aboolean
type. Default: false Group: common- Parameters:
synchronous
- the value to set- Returns:
- the dsl builder
-
timeout
Sets a total timeout specified in milliseconds, when using parallel processing. If the Multicast has not been able to send and process all replies within the given timeframe, then the timeout triggers and the Multicast breaks out and continues. Notice that, if you provide a TimeoutAwareAggregationStrategy, then the timeout method is invoked before breaking out. If the timeout is reached with running tasks still remaining, certain tasks (for which it is difficult for Camel to shut down in a graceful manner) may continue to run. So use this option with a bit of care. The option is a:long
type. Default: -1 Group: common- Parameters:
timeout
- the value to set- Returns:
- the dsl builder
-
timeout
Sets a total timeout specified in milliseconds, when using parallel processing. If the Multicast has not been able to send and process all replies within the given timeframe, then the timeout triggers and the Multicast breaks out and continues. Notice that, if you provide a TimeoutAwareAggregationStrategy, then the timeout method is invoked before breaking out. If the timeout is reached with running tasks still remaining, certain tasks (for which it is difficult for Camel to shut down in a graceful manner) may continue to run. So use this option with a bit of care. The option will be converted to along
type. Default: -1 Group: common- Parameters:
timeout
- the value to set- Returns:
- the dsl builder
-
warnDroppedMessage
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder warnDroppedMessage(boolean warnDroppedMessage) Flag to log a warning if no predicates match for an exchange. The option is a:boolean
type. Default: false Group: common- Parameters:
warnDroppedMessage
- the value to set- Returns:
- the dsl builder
-
warnDroppedMessage
default DynamicRouterEndpointBuilderFactory.DynamicRouterEndpointBuilder warnDroppedMessage(String warnDroppedMessage) Flag to log a warning if no predicates match for an exchange. The option will be converted to aboolean
type. Default: false Group: common- Parameters:
warnDroppedMessage
- the value to set- Returns:
- the dsl builder
-