[User] Provide a JSON object that satisfies the schema "camelYamlDsl". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.

Id

The id of this node

Aggregate

Aggregates many messages into a single message

Aggregate Controller

To use a org.apache.camel.processor.aggregate.AggregateController to allow external sources to control this aggregator.

Aggregation Repository

The AggregationRepository to use. Sets the custom aggregate repository to use. Will by default use org.apache.camel.processor.aggregate.MemoryAggregationRepository

Aggregation Strategy

The AggregationStrategy to use. For example to lookup a bean with the name foo, the value is simply just #bean:foo. Configuring an AggregationStrategy is required, and is used to merge the incoming Exchange with the existing already merged exchanges. At first call the oldExchange parameter is null. On subsequent invocations the oldExchange contains the merged exchanges and newExchange is of course the new incoming Exchange.

Aggregation Strategy Method Allow Null

If this option is false then the aggregate method is not used for the very first aggregation. If this option is true then null values is used as the oldExchange (at the very first aggregation), when using beans as the AggregationStrategy.

Aggregation Strategy Method Name

This option can be used to explicit declare the method name to use, when using beans as the AggregationStrategy.

Close Correlation Key On Completion

Closes a correlation key when its complete. Any late received exchanges which has a correlation key that has been closed, it will be defined and a ClosedCorrelationKeyException is thrown.

Complete All On Stop

Indicates to wait to complete all current and partial (pending) aggregated exchanges when the context is stopped. This also means that we will wait for all pending exchanges which are stored in the aggregation repository to complete so the repository is empty before we can stop. You may want to enable this when using the memory based aggregation repository that is memory based only, and do not store data on disk. When this option is enabled, then the aggregator is waiting to complete all those exchanges before its stopped, when stopping CamelContext or the route using it.

Completion From Batch Consumer

Enables the batch completion mode where we aggregate from a org.apache.camel.BatchConsumer and aggregate the total number of exchanges the org.apache.camel.BatchConsumer has reported as total by checking the exchange property org.apache.camel.Exchange#BATCH_COMPLETE when its complete. This option cannot be used together with discardOnAggregationFailure.

Completion Interval

A repeating period in millis by which the aggregator will complete all current aggregated exchanges. Camel has a background task which is triggered every period. You cannot use this option together with completionTimeout, only one of them can be used.

Completion On New Correlation Group

Enables completion on all previous groups when a new incoming correlation group. This can for example be used to complete groups with same correlation keys when they are in consecutive order. Notice when this is enabled then only 1 correlation group can be in progress as when a new correlation group starts, then the previous groups is forced completed.

Completion Predicate

A Predicate to indicate when an aggregated exchange is complete. If this is not specified and the AggregationStrategy object implements Predicate, the aggregationStrategy object will be used as the completionPredicate.

Completion Size

Number of messages aggregated before the aggregation is complete. This option can be set as either a fixed value or using an Expression which allows you to evaluate a size dynamically - will use Integer as result. If both are set Camel will fallback to use the fixed value if the Expression result was null or 0.

Completion Size Expression

Completion Timeout

Time in millis that an aggregated exchange should be inactive before its complete (timeout). This option can be set as either a fixed value or using an Expression which allows you to evaluate a timeout dynamically - will use Long as result. If both are set Camel will fallback to use the fixed value if the Expression result was null or 0. You cannot use this option together with completionInterval, only one of the two can be used. By default the timeout checker runs every second, you can use the completionTimeoutCheckerInterval option to configure how frequently to run the checker. The timeout is an approximation and there is no guarantee that the a timeout is triggered exactly after the timeout value. It is not recommended to use very low timeout values or checker intervals.

Completion Timeout Checker Interval

Interval in millis that is used by the background task that checks for timeouts ( org.apache.camel.TimeoutMap ). By default the timeout checker runs every second. The timeout is an approximation and there is no guarantee that the a timeout is triggered exactly after the timeout value. It is not recommended to use very low timeout values or checker intervals.

Completion Timeout Expression

Correlation Expression

The expression used to calculate the correlation key to use for aggregation. The Exchange which has the same correlation key is aggregated together. If the correlation key could not be evaluated an Exception is thrown. You can disable this by using the ignoreBadCorrelationKeys option.

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Discard On Aggregation Failure

Discards the aggregated message when aggregation failed (an exception was thrown from AggregationStrategy . This means the partly aggregated message is dropped and not sent out of the aggregator. This option cannot be used together with completionFromBatchConsumer.

Discard On Completion Timeout

Discards the aggregated message on completion timeout. This means on timeout the aggregated message is dropped and not sent out of the aggregator.

Eager Check Completion

Use eager completion checking which means that the completionPredicate will use the incoming Exchange. As opposed to without eager completion checking the completionPredicate will use the aggregated Exchange.

Executor Service

If using parallelProcessing you can specify a custom thread pool to be used. In fact also if you are not using parallelProcessing this custom thread pool is used to send out aggregated exchanges as well.

Force Completion On Stop

Indicates to complete all current aggregated exchanges when the context is stopped

Id

Sets the id of this node

Ignore Invalid Correlation Keys

If a correlation key cannot be successfully evaluated it will be ignored by logging a DEBUG and then just ignore the incoming Exchange.

Optimistic Lock Retry Policy

Allows to configure retry settings when using optimistic locking.

Optimistic Locking

Turns on using optimistic locking, which requires the aggregationRepository being used, is supporting this by implementing org.apache.camel.spi.OptimisticLockingAggregationRepository .

Parallel Processing

When aggregated are completed they are being send out of the aggregator. This option indicates whether or not Camel should use a thread pool with multiple threads for concurrency. If no custom thread pool has been specified then Camel creates a default pool with 10 concurrent threads.

Timeout Checker Executor Service

If using either of the completionTimeout, completionTimeoutExpression, or completionInterval options a background thread is created to check for the completion for every aggregator. Set this option to provide a custom thread pool to be used rather than creating a new thread for every aggregator.

Bean

Calls a Java bean

Bean Type

Sets the class name (fully qualified) of the bean to use

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Method

Sets the method name on the bean to use

Ref

Sets a reference to an existing bean to use, which is looked up from the registry

Scope

Scope of bean. When using singleton scope (default) the bean is created or looked up only once and reused for the lifetime of the endpoint. The bean should be thread-safe in case concurrent threads is calling the bean at the same time. When using request scope the bean is created or looked up once per request (exchange). This can be used if you want to store state on a bean while processing a request and you want to call the same bean instance multiple times while processing the request. The bean does not have to be thread-safe as the instance is only called from the same request. When using prototype scope, then the bean will be looked up or created per call. However in case of lookup then this is delegated to the bean registry such as Spring or CDI (if in use), which depends on their configuration can act as either singleton or prototype scope. So when using prototype scope then this depends on the bean registry implementation.

Bean Factory

Define custom beans that can be used in your Camel routes and in general.

Builder Class

Fully qualified class name of builder class to use for creating and configuring the bean. The builder will use the properties values to configure the bean.

Builder Method

Name of method when using builder class. This method is invoked after configuring to create the actual bean. This method is often named build (used by default).

Constructors

Optional constructor arguments for creating the bean. Arguments correspond to specific index of the constructor argument list, starting from zero.

Destroy Method

The name of the custom destroy method to invoke on bean shutdown, such as when Camel is shutting down. The method must have no arguments, but may throw any exception.

Factory Bean

Name of factory bean (bean id) to use for creating the bean.

Factory Method

Name of method to invoke when creating the bean via a factory bean.

Init Method

The name of the custom initialization method to invoke after setting bean properties. The method must have no arguments, but may throw any exception.

Name

The name of the bean (bean id)

Properties

Optional properties to set on the created bean.

Script

The script to execute that creates the bean when using scripting languages. If the script use the prefix resource: such as resource:classpath:com/foo/myscript.groovy, resource:file:/var/myscript.groovy, then its loaded from the external resource.

Script Language

The script language to use when using inlined script for creating the bean, such as groovy, java, javascript etc.

Script Property Placeholders

Whether the script should support using Camel property placeholder syntax {{ }}.

Type

The class name (fully qualified) of the bean

Do Catch

Catches exceptions as part of a try, catch, finally block

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Exception

The exception(s) to catch.

Id

Sets the id of this node

On When

Used for triggering doCatch in specific situations

Choice

Route messages based on a series of predicates

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Otherwise

Sets the otherwise node

Precondition

Indicates whether this Choice EIP is in precondition mode or not. If so its branches (when/otherwise) are evaluated during startup to keep at runtime only the branch that matched.

When

Sets the when nodes

Circuit Breaker

Route messages in a fault tolerance way using Circuit Breaker

Configuration

Refers to a circuit breaker configuration (such as resillience4j, or microprofile-fault-tolerance) to use for configuring the circuit breaker EIP.

Description

Sets the description of this node

Disabled

Fault Tolerance Configuration

Configures the circuit breaker to use MicroProfile Fault Tolerance with the given configuration.

Id

Sets the id of this node

On Fallback

The fallback route path to execute that does not go over the network. This should be a static or cached result that can immediately be returned upon failure. If the fallback requires network connection then use onFallbackViaNetwork() .

Resilience4j Configuration

Configures the circuit breaker to use Resilience4j with the given configuration.

Claim Check

The Claim Check EIP allows you to replace message content with a claim check (a unique key), which can be used to retrieve the message content at a later time.

Aggregation Strategy

To use a custom AggregationStrategy instead of the default implementation. Notice you cannot use both custom aggregation strategy and configure data at the same time.

Aggregation Strategy Method Name

This option can be used to explicit declare the method name to use, when using POJOs as the AggregationStrategy.

Description

Sets the description of this node

Disabled

Filter

Specify a filter to control what data gets merged data back from the claim check repository. The following syntax is supported: body - to aggregate the message body attachments - to aggregate all the message attachments headers - to aggregate all the message headers header:pattern - to aggregate all the message headers that matches the pattern. The following pattern rules are applied in this order: exact match, returns true wildcard match (pattern ends with a and the name starts with the pattern), returns true regular expression match, returns true otherwise returns false You can specify multiple rules separated by comma. For example, the following includes the message body and all headers starting with foo: body,header:foo. The syntax supports the following prefixes which can be used to specify include,exclude, or remove - to include (which is the default mode) - - to exclude (exclude takes precedence over include) -- - to remove (remove takes precedence) For example to exclude a header name foo, and remove all headers starting with bar, -header:foo,--headers:bar Note you cannot have both include and exclude header:pattern at the same time.

Id

Sets the id of this node

Key

To use a specific key for claim check id (for dynamic keys use simple language syntax as the key).

Operation

The claim check operation to use. The following operations are supported: Get - Gets (does not remove) the claim check by the given key. GetAndRemove - Gets and removes the claim check by the given key. Set - Sets a new (will override if key already exists) claim check with the given key. Push - Sets a new claim check on the stack (does not use key). Pop - Gets the latest claim check from the stack (does not use key).

Context Scan

Scans for Java org.apache.camel.builder.RouteBuilder instances in the context org.apache.camel.spi.Registry .

Excludes

Exclude finding route builder from these java package names.

Include Non Singletons

Whether to include non-singleton beans (prototypes) By default only singleton beans is included in the context scan

Includes

Include finding route builder from these java package names.

Convert Body To

Converts the message body to another type

Charset

To use a specific charset when converting

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Mandatory

When mandatory then the conversion must return a value (cannot be null), if this is not possible then NoTypeConversionAvailableException is thrown. Setting this to false could mean conversion is not possible and the value is null.

Type

The java type to convert to

Convert Header To

Converts the message header to another type

Charset

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Mandatory

Name

Name of message header to convert its value The simple language can be used to define a dynamic evaluated header name to be used. Otherwise a constant name will be used.

To Name

To use another header to store the result. By default, the result is stored in the same header. This option allows to use another header. The simple language can be used to define a dynamic evaluated header name to be used. Otherwise a constant name will be used.

Type

The java type to convert to

Convert Variable To

Converts the variable to another type

Charset

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Mandatory

Name

Name of variable to convert its value The simple language can be used to define a dynamic evaluated header name to be used. Otherwise a constant name will be used.

To Name

To use another variable to store the result. By default, the result is stored in the same variable. This option allows to use another variable. The simple language can be used to define a dynamic evaluated variable name to be used. Otherwise a constant name will be used.

Type

The java type to convert to

Delay

Delays processing for a specified length of time

Expression

Expression to define how long time to wait (in millis)

Async Delayed

Enables asynchronous delay which means the thread will not block while delaying.

Caller Runs When Rejected

Whether or not the caller should run the task when it was rejected by the thread pool. Is by default true

Description

Sets the description of this node

Disabled

Executor Service

To use a custom Thread Pool if asyncDelay has been enabled.

Id

Sets the id of this node

Dynamic Router

Route messages based on dynamic rules

Expression

Expression to call that returns the endpoint(s) to route to in the dynamic routing. Important: The expression will be called in a while loop fashion, until the expression returns null which means the dynamic router is finished.

Cache Size

Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is used to cache and reuse producers when using this dynamic router, when uris are reused. Beware that when using dynamic endpoints then it affects how well the cache can be utilized. If each dynamic endpoint is unique then its best to turn off caching by setting this to -1, which allows Camel to not cache both the producers and endpoints; they are regarded as prototype scoped and will be stopped and discarded after use. This reduces memory usage as otherwise producers/endpoints are stored in memory in the caches. However if there are a high degree of dynamic endpoints that have been used before, then it can benefit to use the cache to reuse both producers and endpoints and therefore the cache size can be set accordingly or rely on the default size (1000). If there is a mix of unique and used before dynamic endpoints, then setting a reasonable cache size can help reduce memory usage to avoid storing too many non frequent used producers.

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Ignore Invalid Endpoints

Ignore the invalidate endpoint exception when try to create a producer with that endpoint

Uri Delimiter

Sets the uri delimiter to use

Enrich

Enriches a message with data from a secondary resource

Expression

Expression that computes the endpoint uri to use as the resource endpoint to enrich from

Aggregate On Exception

If this option is false then the aggregate method is not used if there was an exception thrown while trying to retrieve the data to enrich from the resource. Setting this option to true allows end users to control what to do if there was an exception in the aggregate method. For example to suppress the exception or set a custom message body etc.

Aggregation Strategy

Sets the AggregationStrategy to be used to merge the reply from the external service, into a single outgoing message. By default Camel will use the reply from the external service as outgoing message.

Aggregation Strategy Method Allow Null

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.

Aggregation Strategy Method Name

This option can be used to explicit declare the method name to use, when using POJOs as the AggregationStrategy.

Allow Optimised Components

Whether to allow components to optimise enricher if they are org.apache.camel.spi.SendDynamicAware

Auto Start Components

Whether to auto startup components when enricher is starting up.

Cache Size

Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is used to cache and reuse producer when uris are reused. Beware that when using dynamic endpoints then it affects how well the cache can be utilized. If each dynamic endpoint is unique then its best to turn off caching by setting this to -1, which allows Camel to not cache both the producers and endpoints; they are regarded as prototype scoped and will be stopped and discarded after use. This reduces memory usage as otherwise producers/endpoints are stored in memory in the caches. However if there are a high degree of dynamic endpoints that have been used before, then it can benefit to use the cache to reuse both producers and endpoints and therefore the cache size can be set accordingly or rely on the default size (1000). If there is a mix of unique and used before dynamic endpoints, then setting a reasonable cache size can help reduce memory usage to avoid storing too many non frequent used producers.

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Ignore Invalid Endpoint

Share Unit Of Work

Shares the org.apache.camel.spi.UnitOfWork with the parent and the resource exchange. Enrich will by default not share unit of work between the parent exchange and the resource exchange. This means the resource exchange has its own individual unit of work.

Variable Receive

To use a variable as the source for the message body to send. This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using send variable then the message body is taken from this variable instead of the current message, however the headers from the message will still be used as well. In other words, the variable is used instead of the message body, but everything else is as usual.

Variable Send

To use a variable to store the received message body (only body, not headers). This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using receive variable then the received body is stored only in this variable and not on the current message.

Error Handler

Camel error handling.

Id

The id of this node

Fault Tolerance Configuration

MicroProfile Fault Tolerance Circuit Breaker EIP configuration

Bulkhead Enabled

Whether bulkhead is enabled or not on the circuit breaker. Default is false.

Bulkhead Max Concurrent Calls

Configures the max amount of concurrent calls the bulkhead will support.

Bulkhead Waiting Task Queue

Configures the task queue size for holding waiting tasks to be processed by the bulkhead.

Delay

Control how long the circuit breaker stays open. The default is 5 seconds.

Failure Ratio

Configures the failure rate threshold in percentage. If the failure rate is equal or greater than the threshold the CircuitBreaker transitions to open and starts short-circuiting calls. The threshold must be greater than 0 and not greater than 100. Default value is 50 percentage.

Id

The id of this node

Request Volume Threshold

Controls the size of the rolling window used when the circuit breaker is closed

Success Threshold

Controls the number of trial calls which are allowed when the circuit breaker is half-open

Thread Offload Executor Service

References a custom thread pool to use when offloading a guarded action to another thread.

Timeout Duration

Configures the thread execution timeout. Default value is 1 second.

Timeout Enabled

Whether timeout is enabled or not on the circuit breaker. Default is false.

Timeout Pool Size

Configures the pool size of the thread pool when timeout is enabled. Default value is 10.

Typed Guard

Refers to an existing io.smallrye.faulttolerance.api.TypedGuard instance to lookup and use from the registry. When using this, then any other TypedGuard circuit breaker options are not in use.

Filter

Filter out messages based using a predicate

Expression

Expression to determine if the message should be filtered or not. If the expression returns an empty value or false then the message is filtered (dropped), otherwise the message is continued being routed.

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Status Property Name

Name of exchange property to use for storing the status of the filtering. Setting this allows to know if the filter predicate evaluated as true or false.

Do Finally

Path traversed when a try, catch, finally block exits

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Global Option

Models a string key/value pair for configuring some global options on a Camel context such as max debug log length.

Key

Global option key

Value

Global option value

Global Options

Models a series of string key/value pairs for configuring some global options on a Camel context such as max debug log length.

Global Option

A series of global options as key value pairs

Idempotent Consumer

Filters out duplicate messages

Expression

Expression used to calculate the correlation key to use for duplicate check. The Exchange which has the same correlation key is regarded as a duplicate and will be rejected.

Completion Eager

Sets whether to complete the idempotent consumer eager or when the exchange is done. If this option is true to complete eager, then the idempotent consumer will trigger its completion when the exchange reached the end of the block of the idempotent consumer pattern. So if the exchange is continued routed after the block ends, then whatever happens there does not affect the state. If this option is false (default) to not complete eager, then the idempotent consumer will complete when the exchange is done being routed. So if the exchange is continued routed after the block ends, then whatever happens there also affect the state. For example if the exchange failed due to an exception, then the state of the idempotent consumer will be a rollback.

Description

Sets the description of this node

Disabled

Eager

Sets whether to eagerly add the key to the idempotent repository or wait until the exchange is complete. Eager is default enabled.

Id

Sets the id of this node

Idempotent Repository

Sets the reference name of the message id repository

Remove On Failure

Sets whether to remove or keep the key on failure. The default behavior is to remove the key on failure.

Skip Duplicate

Sets whether to skip duplicates or not. The default behavior is to skip duplicates. A duplicate message would have the Exchange property org.apache.camel.Exchange#DUPLICATE_MESSAGE set to a Boolean#TRUE value. A none duplicate message will not have this property set.

Input Type

Set the expected data type of the input message. If the actual message type is different at runtime, camel look for a required Transformer and apply if exists. If validate attribute is true then camel applies Validator as well. Type name consists of two parts, 'scheme' and 'name' connected with ':'. For Java type 'name' is a fully qualified class name. For example {code java:java.lang.String} , {code json:ABCOrder} . It's also possible to specify only scheme part, so that it works like a wildcard. If only 'xml' is specified, all the XML message matches. It's handy to add only one transformer/validator for all the transformation from/to XML.

Description

Sets the description of this node

Id

Sets the id of this node

Urn

The input type URN.

Validate

Whether if validation is required for this input type.

Intercept

Intercepts a message at each step in the route

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

On When

To use an expression to only trigger intercepting in specific situations

Intercept From

Intercepts incoming messages

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

On When

Uri

Intercept incoming messages from the uri or uri pattern. If this option is not configured, then all incoming messages is intercepted.

Intercept Send To Endpoint

Intercepts messages being sent to an endpoint

After Uri

After sending to the endpoint then send the message to this uri which allows to process its result.

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

On When

To use an expression to only trigger intercepting sending to an endpoint in specific situations

Skip Send To Original Endpoint

If set to true then the message is not sent to the original endpoint. By default (false) the message is both intercepted and then sent to the original endpoint.

Uri

Intercept sending to the uri or uri pattern.

Load Balance

Balances message processing among a number of nodes

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Logger

Used for printing custom messages to the logger.

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Log Language

To configure the language to use. By default, the simple language is used. However, Camel also supports other languages such as groovy.

Log Name

Sets the name of the logger. The name is default the routeId or the source:line if source location is enabled. You can also specify the name using tokens: ${class} - the logger class name (org.apache.camel.processor.LogProcessor) ${contextId} - the camel context id ${routeId} - the route id ${groupId} - the route group id ${nodeId} - the node id ${nodePrefixId} - the node prefix id ${source} - the source:line (source location must be enabled) ${source.name} - the source filename (source location must be enabled) ${source.line} - the source line number (source location must be enabled) For example to use the route and node id you can specify the name as: ${routeId}/${nodeId}

Logger

To refer to a custom logger instance to lookup from the registry.

Logging Level

Sets the logging level. The default value is INFO

Marker

To use slf4j marker

Message

Sets the log message (uses simple language)

Loop

Processes a message multiple times

Expression

Expression to define how many times we should loop. Notice the expression is only evaluated once, and should return a number as how many times to loop. A value of zero or negative means no looping. The loop is like a for-loop fashion, if you want a while loop, then the dynamic router may be a better choice.

Break On Shutdown

If the breakOnShutdown attribute is true, then the loop will not iterate until it reaches the end when Camel is shut down.

Copy

If the copy attribute is true, a copy of the input Exchange is used for each iteration. That means each iteration will start from a copy of the same message. By default loop will loop the same exchange all over, so each iteration may have different message content.

Description

Sets the description of this node

Disabled

Do While

Enables the while loop that loops until the predicate evaluates to false or null.

Id

Sets the id of this node

On Prepare

Uses the Processor when preparing the org.apache.camel.Exchange for each loop iteration. This can be used to deep-clone messages, or any custom logic needed before the looping executes.

Marshal

Marshals data into a specified format for transmission over a transport or component

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Variable Receive

To use a variable to store the received message body (only body, not headers). This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using receive variable then the received body is stored only in this variable and not on the current message.

Variable Send

To use a variable as the source for the message body to send. This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using send variable then the message body is taken from this variable instead of the current message, however the headers from the message will still be used as well. In other words, the variable is used instead of the message body, but everything else is as usual.

Multicast

Routes the same message to multiple paths either sequentially or in parallel.

Aggregation Strategy

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

Aggregation Strategy Method Allow Null

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

Aggregation Strategy Method Name

This option can be used to explicit declare the method name to use, when using POJOs as the AggregationStrategy.

Description

Sets the description of this node

Disabled

Executor Service

Refers to a custom Thread Pool to be used for parallel processing. Notice if you set this option, then parallel processing is automatic implied, and you do not have to enable that option as well.

Id

Sets the id of this node

On Prepare

Uses the Processor when preparing the org.apache.camel.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.

Parallel Aggregate

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.

Parallel Processing

If enabled then sending messages to the multicasts occurs concurrently. Note the caller thread will still wait until all messages has been fully processed, before it continues. Its only the sending and processing the replies from the multicasts which happens concurrently. When parallel processing is enabled, then the Camel routing engin will continue processing using 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. In parallel processing mode, you may want to also synchronous = true to force this EIP to process the sub-tasks using the upper bounds of the thread-pool. If using synchronous = false then Camel will allow its reactive routing engine to use as many threads as possible, which may be available due to sub-tasks using other thread-pools such as CompletableFuture.runAsync or others.

Share Unit Of Work

Shares the org.apache.camel.spi.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.

Stop On Exception

Will now 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 pipeline, which is used by the routing engine. The default behavior is to not stop but continue processing till the end

Streaming

If enabled then Camel will process replies out-of-order, eg in the order they come back. If disabled, Camel will process replies in the same order as defined by the multicast.

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.

Timeout

Sets a total timeout specified in millis, when using parallel processing. If the Multicast hasn't been able to send and process all replies within the given timeframe, then the timeout triggers and the Multicast breaks out and continues. Notice 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.

On Completion

Route to be executed when normal route processing completes

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Executor Service

To use a custom Thread Pool to be used for parallel processing. Notice if you set this option, then parallel processing is automatic implied, and you do not have to enable that option as well.

Id

Sets the id of this node

Mode

Sets the on completion mode. The default value is AfterConsumer

On Complete Only

Will only synchronize when the org.apache.camel.Exchange completed successfully (no errors).

On Failure Only

Will only synchronize when the org.apache.camel.Exchange ended with failure (exception or FAULT message).

On When

To use an expression to only trigger routing this completion steps in specific situations

Parallel Processing

If enabled then the on completion process will run asynchronously by a separate thread from a thread pool. By default this is false, meaning the on completion process will run synchronously using the same caller thread as from the route.

Use Original Message

Will use the original input message body when an org.apache.camel.Exchange for this on completion. The original input message is defensively copied, and the copied message body is converted to org.apache.camel.StreamCache if possible (stream caching is enabled, can be disabled globally or on the original route), to ensure the body can be read when the original message is being used later. If the body is converted to org.apache.camel.StreamCache then the message body on the current org.apache.camel.Exchange is replaced with the org.apache.camel.StreamCache body. If the body is not converted to org.apache.camel.StreamCache then the body will not be able to re-read when accessed later. Important: The original input means the input message that are bounded by the current org.apache.camel.spi.UnitOfWork . An unit of work typically spans one route, or multiple routes if they are connected using internal endpoints such as direct or seda. When messages is passed via external endpoints such as JMS or HTTP then the consumer will create a new unit of work, with the message it received as input as the original input. Also some EIP patterns such as splitter, multicast, will create a new unit of work boundary for the messages in their sub-route (eg the split message); however these EIPs have an option named shareUnitOfWork which allows to combine with the parent unit of work in regard to error handling and therefore use the parent original message. By default this feature is off.

On Exception

Route to be executed when an exception is thrown

Continued

Sets whether the exchange should handle and continue routing from the point of failure. If this option is enabled then its considered handled as well.

Description

Sets the description of this node

Disabled

Exception

A set of exceptions to react upon.

Handled

Sets whether the exchange should be marked as handled or not.

Id

Sets the id of this node

On Exception Occurred Ref

Sets a reference to a processor that should be processed just after an exception occurred. Can be used to perform custom logging about the occurred exception at the exact time it happened. Important: Any exception thrown from this processor will be ignored.

On Redelivery Ref

Sets a reference to a processor that should be processed before a redelivery attempt. Can be used to change the org.apache.camel.Exchange before its being redelivered.

On When

To use an expression to only trigger this in specific situations

Redelivery Policy

Used for configuring redelivery options

Redelivery Policy Ref

Sets a reference to a redelivery policy to lookup in the org.apache.camel.spi.Registry to be used.

Retry While

Sets the retry while predicate. Will continue retrying until predicate returns false.

Use Original Body

Will use the original input org.apache.camel.Message body (original body only) when an org.apache.camel.Exchange is moved to the dead letter queue. Notice: this only applies when all redeliveries attempt have failed and the org.apache.camel.Exchange is doomed for failure. Instead of using the current inprogress org.apache.camel.Exchange IN message we use the original IN message instead. This allows you to store the original input in the dead letter queue instead of the inprogress snapshot of the IN message. For instance if you route transform the IN body during routing and then failed. With the original exchange store in the dead letter queue it might be easier to manually re submit the org.apache.camel.Exchange again as the IN message is the same as when Camel received it. So you should be able to send the org.apache.camel.Exchange to the same input. The difference between useOriginalMessage and useOriginalBody is that the former includes both the original body and headers, where as the latter only includes the original body. You can use the latter to enrich the message with custom headers and include the original message body. The former wont let you do this, as its using the original message body and headers as they are. You cannot enable both useOriginalMessage and useOriginalBody. The original input message is defensively copied, and the copied message body is converted to org.apache.camel.StreamCache if possible (stream caching is enabled, can be disabled globally or on the original route), to ensure the body can be read when the original message is being used later. If the body is converted to org.apache.camel.StreamCache then the message body on the current org.apache.camel.Exchange is replaced with the org.apache.camel.StreamCache body. If the body is not converted to org.apache.camel.StreamCache then the body will not be able to re-read when accessed later. Important: The original input means the input message that are bounded by the current org.apache.camel.spi.UnitOfWork . An unit of work typically spans one route, or multiple routes if they are connected using internal endpoints such as direct or seda. When messages is passed via external endpoints such as JMS or HTTP then the consumer will create a new unit of work, with the message it received as input as the original input. Also some EIP patterns such as splitter, multicast, will create a new unit of work boundary for the messages in their sub-route (eg the split message); however these EIPs have an option named shareUnitOfWork which allows to combine with the parent unit of work in regard to error handling and therefore use the parent original message. By default this feature is off.

Use Original Message

Will use the original input org.apache.camel.Message (original body and headers) when an org.apache.camel.Exchange is moved to the dead letter queue. Notice: this only applies when all redeliveries attempt have failed and the org.apache.camel.Exchange is doomed for failure. Instead of using the current inprogress org.apache.camel.Exchange IN message we use the original IN message instead. This allows you to store the original input in the dead letter queue instead of the inprogress snapshot of the IN message. For instance if you route transform the IN body during routing and then failed. With the original exchange store in the dead letter queue it might be easier to manually re submit the org.apache.camel.Exchange again as the IN message is the same as when Camel received it. So you should be able to send the org.apache.camel.Exchange to the same input. The difference between useOriginalMessage and useOriginalBody is that the former includes both the original body and headers, where as the latter only includes the original body. You can use the latter to enrich the message with custom headers and include the original message body. The former wont let you do this, as its using the original message body and headers as they are. You cannot enable both useOriginalMessage and useOriginalBody. The original input message is defensively copied, and the copied message body is converted to org.apache.camel.StreamCache if possible (stream caching is enabled, can be disabled globally or on the original route), to ensure the body can be read when the original message is being used later. If the body is converted to org.apache.camel.StreamCache then the message body on the current org.apache.camel.Exchange is replaced with the org.apache.camel.StreamCache body. If the body is not converted to org.apache.camel.StreamCache then the body will not be able to re-read when accessed later. Important: The original input means the input message that are bounded by the current org.apache.camel.spi.UnitOfWork . An unit of work typically spans one route, or multiple routes if they are connected using internal endpoints such as direct or seda. When messages is passed via external endpoints such as JMS or HTTP then the consumer will create a new unit of work, with the message it received as input as the original input. Also some EIP patterns such as splitter, multicast, will create a new unit of work boundary for the messages in their sub-route (eg the split message); however these EIPs have an option named shareUnitOfWork which allows to combine with the parent unit of work in regard to error handling and therefore use the parent original message. By default this feature is off.

On Fallback

Route to be executed when Circuit Breaker EIP executes fallback

Description

Sets the description of this node

Fallback Via Network

Whether the fallback goes over the network. If the fallback will go over the network it is another possible point of failure. It is important to execute the fallback command on a separate thread-pool, otherwise if the main command were to become latent and fill the thread-pool this would prevent the fallback from running if the two commands share the same pool.

Id

Sets the id of this node

On When

To use a predicate to determine when to trigger this.

Expression

Description

Sets the description of this node

Id

Sets the id of this node

Optimistic Lock Retry Policy

To configure optimistic locking

Exponential Back Off

Enable exponential backoff

Maximum Retries

Sets the maximum number of retries

Maximum Retry Delay

Sets the upper value of retry in millis between retries, when using exponential or random backoff

Random Back Off

Enables random backoff

Retry Delay

Sets the delay in millis between retries

Otherwise

Route to be executed when all other choices evaluate to false

Description

Sets the description of this node

Disabled

Disables this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled late at runtime.

Id

Sets the id of this node

Output Type

Set the expected data type of the output message. If the actual message type is different at runtime, camel look for a required Transformer and apply if exists. If validate attribute is true then camel applies Validator as well. Type name consists of two parts, 'scheme' and 'name' connected with ':'. For Java type 'name' is a fully qualified class name. For example {code java:java.lang.String} , {code json:ABCOrder} . It's also possible to specify only scheme part, so that it works like a wildcard. If only 'xml' is specified, all the XML message matches. It's handy to add only one transformer/validator for all the XML-Java transformation.

Description

Sets the description of this node

Id

Sets the id of this node

Urn

Set output type URN.

Validate

Whether if validation is required for this output type.

Package Scan

Scans for Java org.apache.camel.builder.RouteBuilder classes in java packages

Excludes

Exclude finding route builder from these java package names.

Includes

Include finding route builder from these java package names.

Package

Sets the java package names to use for scanning for route builder classes

Pausable

Pausable EIP to support resuming processing from last known offset.

Consumer Listener

Sets the consumer listener to use

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Until Check

References to a java.util.function.Predicate to use for until checks. The predicate is responsible for evaluating whether the processing can resume or not. Such predicate should return true if the consumption can resume, or false otherwise. The exact point of when the predicate is called is dependent on the component, and it may be called on either one of the available events. Implementations should not assume the predicate to be called at any specific point.

Pipeline

Routes the message to a sequence of processors.

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Policy

Defines a policy the route will use

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Ref

Sets a reference to use for lookup the policy in the registry.

Poll

Polls a message from a static endpoint

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Timeout

Timeout in millis when polling from the external service. The timeout has influence about the poll enrich behavior. It basically operations in three different modes: negative value - Waits until a message is available and then returns it. Warning that this method could block indefinitely if no messages are available. 0 - Attempts to receive a message exchange immediately without waiting and returning null if a message exchange is not available yet. positive value - Attempts to receive a message exchange, waiting up to the given timeout to expire if a message is not yet available. Returns null if timed out The default value is 20000 (20 seconds).

Uri

Sets the uri of the endpoint to poll from.

Variable Receive

To use a variable to store the received message body (only body, not headers). This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using receive variable then the received body is stored only in this variable and not on the current message.

Poll Enrich

Enriches messages with data polled from a secondary resource

Expression

Expression that computes the endpoint uri to use as the resource endpoint to enrich from

Aggregate On Exception

If this option is false then the aggregate method is not used if there was an exception thrown while trying to retrieve the data to enrich from the resource. Setting this option to true allows end users to control what to do if there was an exception in the aggregate method. For example to suppress the exception or set a custom message body etc.

Aggregation Strategy

Sets the AggregationStrategy to be used to merge the reply from the external service, into a single outgoing message. By default Camel will use the reply from the external service as outgoing message.

Aggregation Strategy Method Allow Null

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.

Aggregation Strategy Method Name

This option can be used to explicit declare the method name to use, when using POJOs as the AggregationStrategy.

Allow Optimised Components

Whether to allow components to optimise if they are org.apache.camel.spi.PollDynamicAware

Auto Start Components

Whether to auto startup components when poll enricher is starting up.

Cache Size

Sets the maximum size used by the org.apache.camel.spi.ConsumerCache which is used to cache and reuse consumers when uris are reused. Beware that when using dynamic endpoints then it affects how well the cache can be utilized. If each dynamic endpoint is unique then its best to turn off caching by setting this to -1, which allows Camel to not cache both the consumers and endpoints; they are regarded as prototype scoped and will be stopped and discarded after use. This reduces memory usage as otherwise consumers/endpoints are stored in memory in the caches. However, if there are a high degree of dynamic endpoints that have been used before, then it can benefit to use the cache to reuse both consumers and endpoints and therefore the cache size can be set accordingly or rely on the default size (1000). If there is a mix of unique and used before dynamic endpoints, then setting a reasonable cache size can help reduce memory usage to avoid storing too many non-frequent used consumers.

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Ignore Invalid Endpoint

Ignore the invalidate endpoint exception when try to create a consumer with that endpoint

Timeout

Timeout in millis when polling from the external service. The timeout has influence about the poll enrich behavior. It basically operations in three different modes: negative value - Waits until a message is available and then returns it. Warning that this method could block indefinitely if no messages are available. 0 - Attempts to receive a message exchange immediately without waiting and returning null if a message exchange is not available yet. positive value - Attempts to receive a message exchange, waiting up to the given timeout to expire if a message is not yet available. Returns null if timed out The default value is -1 and therefore the method could block indefinitely, and therefore its recommended to use a timeout value

Variable Receive

Process

Calls a Camel processor

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Ref

Reference to the Processor to lookup in the registry to use. A Processor is a class of type org.apache.camel.Processor, which can are to be called by this EIP. In this processor you have custom Java code, that can work with the message, such as to do custom business logic, special message manipulations and so on. By default, the ref, will lookup the bean in the Camel registry. The ref can use prefix that controls how the processor is obtained. You can use #bean:myBean where myBean is the id of the Camel processor (lookup). Can also be used for creating new beans by their class name by prefixing with #class, eg #class:com.foo.MyClassType. And it is also possible to refer to singleton beans by their type in the registry by prefixing with #type: syntax, eg #type:com.foo.MyClassType

Property

A key value pair where the value is a literal value

Key

The name of the property

Value

The property value.

Property Expression

A key value pair where the value is an expression.

Expression

Property values as an expression

Key

Property key

Recipient List

Route messages to a number of dynamically specified recipients

Expression

Expression that returns which endpoints (url) to send the message to (the recipients). If the expression return an empty value then the message is not sent to any recipients.

Aggregation Strategy

Sets the AggregationStrategy to be used to assemble the replies from the recipients, into a single outgoing message from the RecipientList. By default Camel will use the last reply as the outgoing message. You can also use a POJO as the AggregationStrategy

Aggregation Strategy Method Allow Null

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

Aggregation Strategy Method Name

Cache Size

Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is used to cache and reuse producers when using this recipient list, when uris are reused. Beware that when using dynamic endpoints then it affects how well the cache can be utilized. If each dynamic endpoint is unique then its best to turn off caching by setting this to -1, which allows Camel to not cache both the producers and endpoints; they are regarded as prototype scoped and will be stopped and discarded after use. This reduces memory usage as otherwise producers/endpoints are stored in memory in the caches. However if there are a high degree of dynamic endpoints that have been used before, then it can benefit to use the cache to reuse both producers and endpoints and therefore the cache size can be set accordingly or rely on the default size (1000). If there is a mix of unique and used before dynamic endpoints, then setting a reasonable cache size can help reduce memory usage to avoid storing too many non frequent used producers.

Delimiter

Delimiter used if the Expression returned multiple endpoints. Can be turned off using the value false. The default value is ,

Description

Sets the description of this node

Disabled

Executor Service

To use a custom Thread Pool to be used for parallel processing. Notice if you set this option, then parallel processing is automatic implied, and you do not have to enable that option as well.

Id

Sets the id of this node

Ignore Invalid Endpoints

Ignore the invalidate endpoint exception when try to create a producer with that endpoint

On Prepare

Uses the Processor when preparing the org.apache.camel.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.

Parallel Aggregate

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.

Parallel Processing

If enabled then sending messages to the recipients occurs concurrently. Note the caller thread will still wait until all messages has been fully processed, before it continues. Its only the sending and processing the replies from the recipients which happens concurrently. When parallel processing is enabled, then the Camel routing engin will continue processing using last used thread from the parallel thread pool. However, if you want to use the original thread that called the recipient list, then make sure to enable the synchronous option as well. In parallel processing mode, you may want to also synchronous = true to force this EIP to process the sub-tasks using the upper bounds of the thread-pool. If using synchronous = false then Camel will allow its reactive routing engine to use as many threads as possible, which may be available due to sub-tasks using other thread-pools such as CompletableFuture.runAsync or others.

Share Unit Of Work

Shares the org.apache.camel.spi.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.

Stop On Exception

Will now 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 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 end

Streaming

If enabled then Camel will process replies out-of-order, eg in the order they come back. If disabled, Camel will process replies in the same order as defined by the recipient list.

Synchronous

Sets whether synchronous processing should be strictly used. When enabled then the same thread is used to continue routing after the recipient list is complete, even if parallel processing is enabled.

Timeout

Sets a total timeout specified in millis, when using parallel processing. If the Recipient List hasn't been able to send and process all replies within the given timeframe, then the timeout triggers and the Recipient List breaks out and continues. Notice 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.

Redelivery Policy

To configure re-delivery for error handling

Allow Redelivery While Stopping

Controls whether to allow redelivery while stopping/shutting down a route that uses error handling.

Async Delayed Redelivery

Allow asynchronous delayed redelivery. The route, in particular the consumer's component, must support the Asynchronous Routing Engine (e.g. seda).

Back Off Multiplier

Sets the back off multiplier

Collision Avoidance Factor

Sets the collision avoidance factor

Delay Pattern

Sets the delay pattern with delay intervals.

Disable Redelivery

Disables redelivery (same as setting maximum redeliveries to 0)

Exchange Formatter Ref

Sets the reference of the instance of org.apache.camel.spi.ExchangeFormatter to generate the log message from exchange.

Id

The id of this node

Log Continued

Sets whether continued exceptions should be logged or not. Can be used to include or reduce verbose.

Log Exhausted

Sets whether exhausted exceptions should be logged or not. Can be used to include or reduce verbose.

Log Exhausted Message Body

Sets whether exhausted message body should be logged including message history or not (supports property placeholders). Can be used to include or reduce verbose. Requires logExhaustedMessageHistory to be enabled.

Log Exhausted Message History

Sets whether exhausted exceptions should be logged including message history or not (supports property placeholders). Can be used to include or reduce verbose.

Log Handled

Sets whether handled exceptions should be logged or not. Can be used to include or reduce verbose.

Log New Exception

Sets whether new exceptions should be logged or not. Can be used to include or reduce verbose. A new exception is an exception that was thrown while handling a previous exception.

Log Retry Attempted

Sets whether retry attempts should be logged or not. Can be used to include or reduce verbose.

Log Retry Stack Trace

Sets whether stack traces should be logged when an retry attempt failed. Can be used to include or reduce verbose.

Log Stack Trace

Sets whether stack traces should be logged. Can be used to include or reduce verbose.

Maximum Redeliveries

Sets the maximum redeliveries x = redeliver at most x times 0 = no redeliveries -1 = redeliver forever

Maximum Redelivery Delay

Sets the maximum delay between redelivery

Redelivery Delay

Sets the initial redelivery delay

Retries Exhausted Log Level

Sets the logging level to use when retries have been exhausted

Retry Attempted Log Interval

Sets the interval to use for logging retry attempts

Retry Attempted Log Level

Sets the logging level to use for logging retry attempts

Use Collision Avoidance

Turn on collision avoidance.

Use Exponential Back Off

Turn on exponential back off

Remove Header

Removes a named header from the message

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Name

Name of header to remove

Remove Headers

Removes message headers whose name matches a specified pattern

Description

Sets the description of this node

Disabled

Exclude Pattern

Name or patter of headers to not remove. The pattern is matched in the following order: 1 = exact match 2 = wildcard (pattern ends with a and the name starts with the pattern) 3 = regular expression (all of above is case in-sensitive).

Id

Sets the id of this node

Pattern

Name or pattern of headers to remove. The pattern is matched in the following order: 1 = exact match 2 = wildcard (pattern ends with a and the name starts with the pattern) 3 = regular expression (all of above is case in-sensitive).

Remove Properties

Removes message exchange properties whose name matches a specified pattern

Description

Sets the description of this node

Disabled

Exclude Pattern

Name or pattern of properties to not remove. The pattern is matched in the following order: 1 = exact match 2 = wildcard (pattern ends with a and the name starts with the pattern) 3 = regular expression (all of above is case in-sensitive).

Id

Sets the id of this node

Pattern

Name or pattern of properties to remove. The pattern is matched in the following order: 1 = exact match 2 = wildcard (pattern ends with a and the name starts with the pattern) 3 = regular expression (all of above is case in-sensitive).

Remove Property

Removes a named property from the message exchange

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Name

Name of property to remove.

Remove Variable

Removes a named variable

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Name

Name of variable to remove.

Resequence

Resequences (re-order) messages based on an expression

Expression

Expression to use for re-ordering the messages, such as a header with a sequence number

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Resilience4j Configuration

Resilience4j Circuit Breaker EIP configuration

Automatic Transition From Open To Half Open Enabled

Enables automatic transition from OPEN to HALF_OPEN state once the waitDurationInOpenState has passed.

Bulkhead Enabled

Whether bulkhead is enabled or not on the circuit breaker. Default is false.

Bulkhead Max Concurrent Calls

Configures the max amount of concurrent calls the bulkhead will support.

Bulkhead Max Wait Duration

Configures a maximum amount of time which the calling thread will wait to enter the bulkhead. If bulkhead has space available, entry is guaranteed and immediate. If bulkhead is full, calling threads will contest for space, if it becomes available. maxWaitDuration can be set to 0. Note: for threads running on an event-loop or equivalent (rx computation pool, etc), setting maxWaitDuration to 0 is highly recommended. Blocking an event-loop thread will most likely have a negative effect on application throughput.

Circuit Breaker

Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreaker instance to lookup and use from the registry. When using this, then any other circuit breaker options are not in use.

Config

Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreakerConfig instance to lookup and use from the registry.

Failure Rate Threshold

Configures the failure rate threshold in percentage. If the failure rate is equal or greater than the threshold the CircuitBreaker transitions to open and starts short-circuiting calls. The threshold must be greater than 0 and not greater than 100. Default value is 50 percentage.

Id

The id of this node

Ignore Exception

Configure a list of exceptions that are ignored and neither count as a failure nor success. Any exception matching or inheriting from one of the list will not count as a failure nor success, even if the exceptions is part of recordExceptions.

Minimum Number Of Calls

Configures the minimum number of calls which are required (per sliding window period) before the CircuitBreaker can calculate the error rate. For example, if minimumNumberOfCalls is 10, then at least 10 calls must be recorded, before the failure rate can be calculated. If only 9 calls have been recorded the CircuitBreaker will not transition to open even if all 9 calls have failed. Default minimumNumberOfCalls is 100

Permitted Number Of Calls In Half Open State

Configures the number of permitted calls when the CircuitBreaker is half open. The size must be greater than 0. Default size is 10.

Record Exception

Configure a list of exceptions that are recorded as a failure and thus increase the failure rate. Any exception matching or inheriting from one of the list counts as a failure, unless explicitly ignored via ignoreExceptions.

Sliding Window Size

Configures the size of the sliding window which is used to record the outcome of calls when the CircuitBreaker is closed. slidingWindowSize configures the size of the sliding window. Sliding window can either be count-based or time-based. If slidingWindowType is COUNT_BASED, the last slidingWindowSize calls are recorded and aggregated. If slidingWindowType is TIME_BASED, the calls of the last slidingWindowSize seconds are recorded and aggregated. The slidingWindowSize must be greater than 0. The minimumNumberOfCalls must be greater than 0. If the slidingWindowType is COUNT_BASED, the minimumNumberOfCalls cannot be greater than slidingWindowSize . If the slidingWindowType is TIME_BASED, you can pick whatever you want. Default slidingWindowSize is 100.

Sliding Window Type

Configures the type of the sliding window which is used to record the outcome of calls when the CircuitBreaker is closed. Sliding window can either be count-based or time-based. If slidingWindowType is COUNT_BASED, the last slidingWindowSize calls are recorded and aggregated. If slidingWindowType is TIME_BASED, the calls of the last slidingWindowSize seconds are recorded and aggregated. Default slidingWindowType is COUNT_BASED.

Slow Call Duration Threshold

Configures the duration threshold (seconds) above which calls are considered as slow and increase the slow calls percentage. Default value is 60 seconds.

Slow Call Rate Threshold

Configures a threshold in percentage. The CircuitBreaker considers a call as slow when the call duration is greater than slowCallDurationThreshold Duration. When the percentage of slow calls is equal or greater the threshold, the CircuitBreaker transitions to open and starts short-circuiting calls. The threshold must be greater than 0 and not greater than 100. Default value is 100 percentage which means that all recorded calls must be slower than slowCallDurationThreshold.

Throw Exception When Half Open Or Open State

Whether to throw io.github.resilience4j.circuitbreaker.CallNotPermittedException when the call is rejected due circuit breaker is half open (and was not attempted but rejected immediately) or open (always rejected). This option is only in use when there is NOT a fallback configured on the circuit breaker. When there is a fallback then the fallback is always executed and CallNotPermittedException is not thrown.

Timeout Cancel Running Future

Configures whether cancel is called on the running future. Defaults to true.

Timeout Duration

Configures the thread execution timeout. Default value is 1 second.

Timeout Enabled

Whether timeout is enabled or not on the circuit breaker. Default is false.

Timeout Executor Service

References to a custom thread pool to use when timeout is enabled (uses ForkJoinPool#commonPool() by default)

Wait Duration In Open State

Configures the wait duration (in seconds) which specifies how long the CircuitBreaker should stay open, before it switches to half open. Default value is 60 seconds.

Writable Stack Trace Enabled

Enables writable stack traces. When set to false, Exception.getStackTrace returns a zero length array. This may be used to reduce log spam when the circuit breaker is open as the cause of the exceptions is already known (the circuit breaker is short-circuiting calls).

Rest Context Ref

To refer to an XML file with rest services defined using the rest-dsl

Ref

Reference to the rest-dsl

Resumable

Resume EIP to support resuming processing from last known offset.

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Intermittent

Sets whether the offsets will be intermittently present or whether they must be present in every exchange

Logging Level

The logging level to use in case of failures.

Resume Strategy

Sets the resume strategy to use

Rollback

Forces a rollback by stopping routing the message

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Mark Rollback Only

Mark the transaction for rollback only (cannot be overruled to commit)

Mark Rollback Only Last

Mark only last sub transaction for rollback only. When using sub transactions (if the transaction manager support this)

Message

Message to use in rollback exception

Route Builder

To refer to a Java org.apache.camel.builder.RouteBuilder instance to use.

Id

The id of this node

Ref

Reference to the route builder instance

Route Configuration Context Ref

To refer to an XML file with route configuration defined using the xml-dsl

Ref

Reference to the route templates in the xml dsl

Route Context Ref

To refer to an XML file with routes defined using the xml-dsl

Ref

Reference to the routes in the xml dsl

To control how to shut down the route.

To control how to shut down the route.

Template Parameter

A route template parameter

Default Value

Default value of the parameter. If a default value is provided then the parameter is implied not to be required.

Description

Description of the parameter

Name

The name of the parameter

Required

Whether the parameter is required or not. A parameter is required unless this option is set to false or a default value has been configured.

Routing Slip

Routes a message through a series of steps that are pre-determined (the slip)

Expression

Expression to define the routing slip, which defines which endpoints to route the message in a pipeline style. Notice the expression is evaluated once, if you want a more dynamic style, then the dynamic router eip is a better choice.

Cache Size

Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is used to cache and reuse producers when using this routing slip, when uris are reused. Beware that when using dynamic endpoints then it affects how well the cache can be utilized. If each dynamic endpoint is unique then its best to turn off caching by setting this to -1, which allows Camel to not cache both the producers and endpoints; they are regarded as prototype scoped and will be stopped and discarded after use. This reduces memory usage as otherwise producers/endpoints are stored in memory in the caches. However if there are a high degree of dynamic endpoints that have been used before, then it can benefit to use the cache to reuse both producers and endpoints and therefore the cache size can be set accordingly or rely on the default size (1000). If there is a mix of unique and used before dynamic endpoints, then setting a reasonable cache size can help reduce memory usage to avoid storing too many non frequent used producers.

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Ignore Invalid Endpoints

Ignore the invalidate endpoint exception when try to create a producer with that endpoint

Uri Delimiter

Sets the uri delimiter to use

Saga

Enables Sagas on the route

Compensation

The compensation endpoint URI that must be called to compensate all changes done in the route. The route corresponding to the compensation URI must perform compensation and complete without error. If errors occur during compensation, the saga service may call again the compensation URI to retry.

Completion

The completion endpoint URI that will be called when the Saga is completed successfully. The route corresponding to the completion URI must perform completion tasks and terminate without error. If errors occur during completion, the saga service may call again the completion URI to retry.

Completion Mode

Determine how the saga should be considered complete. When set to AUTO, the saga is completed when the exchange that initiates the saga is processed successfully, or compensated when it completes exceptionally. When set to MANUAL, the user must complete or compensate the saga using the saga:complete or saga:compensate endpoints.

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Option

Allows to save properties of the current exchange in order to re-use them in a compensation/completion callback route. Options are usually helpful e.g. to store and retrieve identifiers of objects that should be deleted in compensating actions. Option values will be transformed into input headers of the compensation/completion exchange.

Propagation

Set the Saga propagation mode (REQUIRED, REQUIRES_NEW, MANDATORY, SUPPORTS, NOT_SUPPORTED, NEVER).

REQUIRED REQUIRES_NEW MANDATORY SUPPORTS NOT_SUPPORTED NEVER

Saga Service

Refers to the id to lookup in the registry for the specific CamelSagaService to use.

Timeout

Set the maximum amount of time for the Saga. After the timeout is expired, the saga will be compensated automatically (unless a different decision has been taken in the meantime).

Sample

Extract a sample of the messages passing through a route

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Message Frequency

Sets the sample message count which only a single Exchange will pass through after this many received.

Sample Period

Sets the sample period during which only a single Exchange will pass through.

Script

Executes a script from a language which does not change the message body.

Expression

Script to be executed.

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Set Body

Sets the contents of the message body

Expression

Expression that returns the new body to use

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Set Exchange Pattern

Sets the exchange pattern on the message exchange

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Pattern

Sets the new exchange pattern of the Exchange to be used from this point forward

Set Header

Sets the value of a message header

Expression

Expression to return the value of the header

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Name

Name of message header to set a new value The simple language can be used to define a dynamic evaluated header name to be used. Otherwise a constant name will be used.

Set Headers

Allows setting multiple headers on the message at the same time.

Description

Sets the description of this node

Disabled

Headers

Contains the headers to be set

Id

Sets the id of this node

Set Property

Sets a named property on the message exchange

Expression

Expression to return the value of the message exchange property

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Name

Name of exchange property to set a new value. The simple language can be used to define a dynamic evaluated exchange property name to be used. Otherwise a constant name will be used.

Set Variable

Sets the value of a variable

Expression

Expression to return the value of the variable

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Name

Name of variable to set a new value The simple language can be used to define a dynamic evaluated variable name to be used. Otherwise a constant name will be used.

Set Variables

Allows setting multiple variables at the same time.

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Variables

Contains the variables to be set

Sort

Sorts the contents of the message

Expression

Optional expression to sort by something else than the message body

Comparator

Sets the comparator to use for sorting

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Split

Splits a single message into many sub-messages.

Expression

Expression of how to split the message body, such as as-is, using a tokenizer, or using a xpath.

Aggregation Strategy

Sets a reference to the AggregationStrategy to be used to assemble the replies from the split messages, into a single outgoing message from the Splitter. By default Camel will use the original incoming message to the splitter (leave it unchanged). You can also use a POJO as the AggregationStrategy

Aggregation Strategy Method Allow Null

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

Aggregation Strategy Method Name

This option can be used to explicit declare the method name to use, when using POJOs as the AggregationStrategy.

Delimiter

Delimiter used in splitting messages. Can be turned off using the value false. To force not splitting then the delimiter can be set to single to use the value as a single list, this can be needed in some special situations. The default value is comma.

Description

Sets the description of this node

Disabled

Executor Service

To use a custom Thread Pool to be used for parallel processing. Notice if you set this option, then parallel processing is automatically implied, and you do not have to enable that option as well.

Id

Sets the id of this node

On Prepare

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 any custom logic needed before the exchange is sent.

Parallel Aggregate

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.

Parallel Processing

If enabled then processing each split messages occurs concurrently. Note the caller thread will still wait until all messages has been fully processed, before it continues. It's only processing the sub messages from the splitter which happens concurrently. When parallel processing is enabled, then the Camel routing engin will continue processing using last used thread from the parallel thread pool. However, if you want to use the original thread that called the splitter, then make sure to enable the synchronous option as well. In parallel processing mode, you may want to also synchronous = true to force this EIP to process the sub-tasks using the upper bounds of the thread-pool. If using synchronous = false then Camel will allow its reactive routing engine to use as many threads as possible, which may be available due to sub-tasks using other thread-pools such as CompletableFuture.runAsync or others.

Share Unit Of Work

Shares the org.apache.camel.spi.UnitOfWork with the parent and each of the sub messages. Splitter will by default not share unit of work between the parent exchange and each split exchange. This means each split exchange has its own individual unit of work.

Stop On Exception

Will now 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 splitter 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 end

Streaming

When in streaming mode, then the splitter splits the original message on-demand, and each split message is processed one by one. This reduces memory usage as the splitter do not split all the messages first, but then we do not know the total size, and therefore the org.apache.camel.Exchange#SPLIT_SIZE is empty. In non-streaming mode (default) the splitter will split each message first, to know the total size, and then process each message one by one. This requires to keep all the split messages in memory and therefore requires more memory. The total size is provided in the org.apache.camel.Exchange#SPLIT_SIZE header. The streaming mode also affects the aggregation behavior. 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 the messages was split.

Synchronous

Sets whether synchronous processing should be strictly used. When enabled then the same thread is used to continue routing after the split is complete, even if parallel processing is enabled.

Timeout

Sets a total timeout specified in millis, when using parallel processing. If the Splitter hasn't been able to split and process all the sub messages within the given timeframe, then the timeout triggers and the Splitter breaks out and continues. Notice 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.

Step

Routes the message to a sequence of processors which is grouped together as one logical name

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Stop

Stops the processing of the current message

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Templated Route Parameter

An input parameter of a route template.

Name

The name of the parameter

Value

The value of the parameter.

Thread Pool Profile

To configure thread pools

Allow Core Thread Time Out

Whether idle core threads is allowed to timeout and therefore can shrink the pool size below the core pool size Is by default true

Default Profile

Whether this profile is the default thread pool profile

Description

Sets the description of this node

Id

Sets the id of this node

Keep Alive Time

Sets the keep alive time for idle threads in the pool

Max Pool Size

Sets the maximum pool size

Max Queue Size

Sets the maximum number of tasks in the work queue. Use -1 or Integer.MAX_VALUE for an unbounded queue

Pool Size

Sets the core pool size

Rejected Policy

Sets the handler for tasks which cannot be executed by the thread pool.

Time Unit

Sets the time unit to use for keep alive time By default SECONDS is used.

NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS

Threads

Specifies that all steps after this node are processed asynchronously

Allow Core Thread Time Out

Whether idle core threads are allowed to timeout and therefore can shrink the pool size below the core pool size Is by default false

Caller Runs When Rejected

Whether or not to use as caller runs as fallback when a task is rejected being added to the thread pool (when its full). This is only used as fallback if no rejectedPolicy has been configured, or the thread pool has no configured rejection handler. Is by default true

Description

Sets the description of this node

Disabled

Executor Service

To use a custom thread pool

Id

Sets the id of this node

Keep Alive Time

Sets the keep alive time for idle threads

Max Pool Size

Sets the maximum pool size

Max Queue Size

Pool Size

Sets the core pool size

Rejected Policy

Thread Name

Sets the thread name to use.

Time Unit

Sets the keep alive time unit. By default SECONDS is used.

Throttle

Controls the rate at which messages are passed to the next node in the route

Expression

Expression to configure the maximum number of messages to throttle per request

Async Delayed

Enables asynchronous delay which means the thread will not block while delaying.

Caller Runs When Rejected

Whether or not the caller should run the task when it was rejected by the thread pool. Is by default true

Correlation Expression

The expression used to calculate the correlation key to use for throttle grouping. The Exchange which has the same correlation key is throttled together.

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Executor Service

To use a custom thread pool (ScheduledExecutorService) by the throttler.

Id

Sets the id of this node

Mode

Sets the throttling mode to one of the available modes enumerated in ThrottlingMode

Reject Execution

Whether or not throttler throws the ThrottlerRejectedExecutionException when the exchange exceeds the request limit Is by default false

Time Period Millis

Sets the time period during which the maximum request count is valid for

Throw Exception

Throws an exception

Description

Sets the description of this node

Disabled

Exception Type

The class of the exception to create using the message.

Id

Sets the id of this node

Message

To create a new exception instance and use the given message as caused message (supports simple language)

Ref

Reference to the exception instance to lookup from the registry to throw

To

Sends the message to a static endpoint

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Pattern

Sets the optional ExchangePattern used to invoke this endpoint

Uri

Sets the uri of the endpoint to send to.

Variable Receive

To use a variable to store the received message body (only body, not headers). This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using receive variable then the received body is stored only in this variable and not on the current message.

Variable Send

To use a variable as the source for the message body to send. This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using send variable then the message body is taken from this variable instead of the current message, however the headers from the message will still be used as well. In other words, the variable is used instead of the message body, but everything else is as usual.

To D

Sends the message to a dynamic endpoint

Allow Optimised Components

Whether to allow components to optimise toD if they are org.apache.camel.spi.SendDynamicAware .

Auto Start Components

Whether to auto startup components when toD is starting up.

Cache Size

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Ignore Invalid Endpoint

Whether to ignore invalid endpoint URIs and skip sending the message.

Pattern

Uri

The uri of the endpoint to send to. The uri can be dynamic computed using the org.apache.camel.language.simple.SimpleLanguage expression.

Variable Receive

To use a variable as the source for the message body to send. This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using send variable then the message body is taken from this variable instead of the current Message , however the headers from the Message will still be used as well. In other words, the variable is used instead of the message body, but everything else is as usual.

Variable Send

Specialized tokenizer for AI applications

Represents a Camel tokenizer for AI.

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Transacted

Enables transaction on the route

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Ref

Sets a reference to use for lookup the policy in the registry.

Transform

Transforms the message body based on an expression

Expression

Expression to return the transformed message body (the new message body to use)

Description

Sets the description of this node

Disabled

From Type

From type used in data type transformation.

Id

Sets the id of this node

To Type

To type used as a target data type in the transformation.

Do Try

Marks the beginning of a try, catch, finally block

Description

Sets the description of this node

Disabled

Do Catch

Catches exceptions as part of a try, catch, finally block

Do Finally

Path traversed when a try, catch, finally block exits

Id

Sets the id of this node

Unmarshal

Converts the message data received from the wire into a format that Apache Camel processors can consume

Allow Null Body

Indicates whether null is allowed as value of a body to unmarshall.

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Variable Receive

To use a variable to store the received message body (only body, not headers). This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using receive variable then the received body is stored only in this variable and not on the current message.

Variable Send

To use a variable as the source for the message body to send. This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using send variable then the message body is taken from this variable instead of the current message, however the headers from the message will still be used as well. In other words, the variable is used instead of the message body, but everything else is as usual.

Validate

Validates a message based on an expression

Expression

Expression to use for validation as a predicate. The expression should return either true or false. If returning false the message is invalid and an exception is thrown.

Description

Sets the description of this node

Disabled

Id

Sets the id of this node

Predicate Exception Factory

The bean id of custom PredicateExceptionFactory to use for creating the exception when the validation fails. By default, Camel will throw PredicateValidationException. By using a custom factory you can control which exception to throw instead.

Value

A single value

Value

Property value

When

Triggers a route when the expression evaluates to true

Expression

Expression used as the predicate to evaluate whether this when should trigger and route the message or not.

Description

Sets the description of this node

Disabled

Disables this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled late at runtime.

Id

Sets the id of this node

Wire Tap

Routes a copy of a message (or creates a new message) to a secondary destination while continue routing the original message.

Allow Optimised Components

Whether to allow components to optimise toD if they are org.apache.camel.spi.SendDynamicAware .

Auto Start Components

Whether to auto startup components when toD is starting up.

Cache Size

Copy

Uses a copy of the original exchange

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Dynamic Uri

Whether the uri is dynamic or static. If the uri is dynamic then the simple language is used to evaluate a dynamic uri to use as the wire-tap destination, for each incoming message. This works similar to how the toD EIP pattern works. If static then the uri is used as-is as the wire-tap destination.

Executor Service

Uses a custom thread pool

Id

Sets the id of this node

Ignore Invalid Endpoint

Whether to ignore invalid endpoint URIs and skip sending the message.

On Prepare

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 any custom logic needed before the exchange is sent.

Pattern

Sets the optional ExchangePattern used to invoke this endpoint

Uri

The uri of the endpoint to send to. The uri can be dynamic computed using the org.apache.camel.language.simple.SimpleLanguage expression.

Variable Receive

To use a variable as the source for the message body to send. This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using send variable then the message body is taken from this variable instead of the current Message , however the headers from the Message will still be used as well. In other words, the variable is used instead of the message body, but everything else is as usual.

Variable Send

To use a variable as the source for the message body to send. This makes it handy to use variables for user data and to easily control what data to use for sending and receiving. Important: When using send variable then the message body is taken from this variable instead of the current message, however the headers from the message will still be used as well. In other words, the variable is used instead of the message body, but everything else is as usual.

Blacklist Service Filter

Id

The id of this node

Properties

Set client properties to use. These properties are specific to what service call implementation are in use. For example if using a different one, then the client properties are defined according to the specific service in use.

Servers

Sets the server blacklist. Each entry can be a list of servers separated by comma in the format: servicehost:port,servicehost2:port,servicehost3:port

Caching Service Discovery

Id

The id of this node

Properties

Timeout

Set the time the services will be retained.

Units

Set the time unit for the timeout.

Combined Service Discovery

Id

The id of this node

Properties

Combined Service Filter

Id

The id of this node

Properties

Consul Service Discovery

Acl Token

Sets the ACL token to be used with Consul

Block Seconds

The seconds to wait for a watch event, default 10 seconds

Connect Timeout Millis

Connect timeout for OkHttpClient

Datacenter

The data center

Id

The id of this node

Password

Sets the password to be used for basic authentication

Properties

Read Timeout Millis

Read timeout for OkHttpClient

Url

The Consul agent URL

User Name

Sets the username to be used for basic authentication

Write Timeout Millis

Write timeout for OkHttpClient

Custom Service Filter

Id

The id of this node

Properties

Ref

Reference of a ServiceFilter

Default Load Balancer

Id

The id of this node

Properties

Dns Service Discovery

Domain

The domain name;

Id

The id of this node

Properties

Proto

The transport protocol of the desired service.

Healthy Service Filter

Id

The id of this node

Properties

Kubernetes Service Discovery

Api Version

Sets the API version when using client lookup

Ca Cert Data

Sets the Certificate Authority data when using client lookup

Ca Cert File

Sets the Certificate Authority data that are loaded from the file when using client lookup

Client Cert Data

Sets the Client Certificate data when using client lookup

Client Cert File

Sets the Client Certificate data that are loaded from the file when using client lookup

Client Key Algo

Sets the Client Keystore algorithm, such as RSA when using client lookup

Client Key Data

Sets the Client Keystore data when using client lookup

Client Key File

Sets the Client Keystore data that are loaded from the file when using client lookup

Client Key Passphrase

Sets the Client Keystore passphrase when using client lookup

Dns Domain

Sets the DNS domain to use for DNS lookup.

Id

The id of this node

Lookup

How to perform service lookup. Possible values: client, dns, environment. When using client, then the client queries the kubernetes master to obtain a list of active pods that provides the service, and then random (or round robin) select a pod. When using dns the service name is resolved as name.namespace.svc.dnsDomain. When using dnssrv the service name is resolved with SRV query for _._...svc... When using environment then environment variables are used to lookup the service. By default environment is used.

Master Url

Sets the URL to the master when using client lookup

Namespace

Sets the namespace to use. Will by default use namespace from the ENV variable KUBERNETES_MASTER.

Oauth Token

Sets the OAUTH token for authentication (instead of username/password) when using client lookup

Password

Sets the password for authentication when using client lookup

Port Name

Sets the Port Name to use for DNS/DNSSRV lookup.

Port Protocol

Sets the Port Protocol to use for DNS/DNSSRV lookup.

Properties

Set client properties to use. These properties are specific to what service call implementation are in use. For example if using a different one, then the client properties are defined according to the specific service in use.

Trust Certs

Sets whether to turn on trust certificate check when using client lookup

Username

Sets the username for authentication when using client lookup

Pass Through Service Filter

Id

The id of this node

Properties

Service Call Configuration

Remote service call configuration

Expression

Configures the Expression using the given configuration.

Component

The component to use.

Expression Ref

Set a reference to a custom Expression to use.

Id

The id of this node

Load Balancer Ref

Sets a reference to a custom ServiceLoadBalancer to use.

Pattern

Sets the optional ExchangePattern used to invoke this endpoint

Service Chooser Ref

Sets a reference to a custom ServiceChooser to use.

Service Discovery Ref

Sets a reference to a custom ServiceDiscovery to use.

Service Filter Ref

Sets a reference to a custom ServiceFilter to use.

Uri

The uri of the endpoint to send to. The uri can be dynamic computed using the simple language expression.

Service Call

To call remote services

Expression

Component

The component to use.

Configuration Ref

Refers to a ServiceCall configuration to use

Description

Sets the description of this node

Disabled

Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime.

Expression Ref

Id

Sets the id of this node

Load Balancer Ref

Name

Sets the name of the service to use

Pattern

Service Chooser Ref

Service Discovery Ref

Service Filter Ref

Uri

The uri of the endpoint to send to. The uri can be dynamic computed using the org.apache.camel.language.simple.SimpleLanguage expression.

Service Expression

Host Header

The header that holds the service host information, default ServiceCallConstants.SERVICE_HOST

Id

The id of this node

Port Header

The header that holds the service port information, default ServiceCallConstants.SERVICE_PORT

Properties

Service Chooser Configuration

Id

The id of this node

Properties

Service Discovery Configuration

Id

The id of this node

Properties

Service Filter Configuration

Id

The id of this node

Properties

Load Balancer Configuration

Id

The id of this node

Properties

Static Service Discovery

Id

The id of this node

Properties

Servers

Sets the server list. Each entry can be a list of servers separated by comma in the format: servicehost:port,servicehost2:port,servicehost3:port

Zookeeper Service Discovery

Base Path

Set the base path to store in ZK

Connection Timeout

Connection timeout.

Id

The id of this node

Namespace

As ZooKeeper is a shared space, users of a given cluster should stay within a pre-defined namespace. If a namespace is set here, all paths will get pre-pended with the namespace

Nodes

A comma separate list of servers to connect to in the form host:port

Properties

Set client properties to use. These properties are specific to what service call implementation are in use. For example if using a different one, then the client properties are defined according to the specific service in use.

Reconnect Base Sleep Time

Initial amount of time to wait between retries.

Reconnect Max Retries

Max number of times to retry

Reconnect Max Sleep Time

Max time in ms to sleep on each retry

Session Timeout

Session timeout.

Batch Config

Configures batch-processing resequence eip.

Allow Duplicates

Whether to allow duplicates.

Batch Size

Sets the size of the batch to be re-ordered. The default size is 100.

Batch Timeout

Sets the timeout for collecting elements to be re-ordered. The default timeout is 1000 msec.

Ignore Invalid Exchanges

Whether to ignore invalid exchanges

Reverse

Whether to reverse the ordering.

Stream Config

Configures stream-processing resequence eip.

Capacity

Sets the capacity of the resequencer inbound queue.

Comparator

To use a custom comparator as a org.apache.camel.processor.resequencer.ExpressionResultComparator type.

Delivery Attempt Interval

Sets the interval in milliseconds the stream resequencer will at most wait while waiting for condition of being able to deliver.

Ignore Invalid Exchanges

Whether to ignore invalid exchanges

Reject Old

If true, throws an exception when messages older than the last delivered message are processed

Timeout

Sets minimum time (milliseconds) to wait for missing elements (messages).

ASN.1 File

Encode and decode data structures using Abstract Syntax Notation One (ASN.1).

Id

The id of this node

Unmarshal Type

Class to use when unmarshalling.

Using Iterator

If the asn1 file has more than one entry, the setting this option to true, allows working with the splitter EIP, to split the data using an iterator in a streaming mode.

Avro

Serialize and deserialize messages using Apache Avro binary data format.

Allow Jms Type

Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to.

Allow Unmarshall Type

If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used.

Auto Discover Object Mapper

If set to true then Jackson will lookup for an objectMapper into the registry

Auto Discover Schema Resolver

When not disabled, the SchemaResolver will be looked up into the registry

Collection Type

Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default.

Content Type Header

Whether the data format should set the Content-Type header with the type from the data format. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSON

Disable Features

Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Enable Features

Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Id

The id of this node

Include

If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL

Instance Class Name

Class name to use for marshal and unmarshalling

Json View

When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has JsonView annotations

Library

Which Avro library to use.

Module Class Names

To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma.

Module Refs

To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma.

Object Mapper

Lookup and use the existing ObjectMapper with the given id when using Jackson.

Schema Resolver

Optional schema resolver used to lookup schemas for the data in transit.

Timezone

If set then Jackson will use the Timezone when marshalling/unmarshalling.

Unmarshal Type

Class name of the java type to use when unmarshalling

Use Default Object Mapper

Whether to lookup and use default Jackson ObjectMapper from the registry.

Use List

To unmarshal to a List of Map or a List of Pojo.

Barcode

Transform strings to various 1D/2D barcode bitmap formats and back.

Barcode Format

Barcode format such as QR-Code

Height

Height of the barcode

Id

The id of this node

Image Type

Image type of the barcode such as png

Width

Width of the barcode

Base64

Encode and decode data using Base64.

Id

The id of this node

Line Length

To specific a maximum line length for the encoded data. By default 76 is used.

Line Separator

The line separators to use. Uses new line characters (CRLF) by default.

Url Safe

Instead of emitting '' and '/' we emit '-' and '_' respectively. urlSafe is only applied to encode operations. Decoding seamlessly handles both modes. Is by default false.

BeanIO

Marshal and unmarshal Java beans to and from flat files (such as CSV, delimited, or fixed length formats).

Bean Reader Error Handler Type

To use a custom org.apache.camel.dataformat.beanio.BeanIOErrorHandler as error handler while parsing. Configure the fully qualified class name of the error handler. Notice the options ignoreUnidentifiedRecords, ignoreUnexpectedRecords, and ignoreInvalidRecords may not be in use when you use a custom error handler.

Encoding

The charset to use. Is by default the JVM platform default charset.

Id

The id of this node

Ignore Invalid Records

Whether to ignore invalid records.

Ignore Unexpected Records

Whether to ignore unexpected records.

Ignore Unidentified Records

Whether to ignore unidentified records.

Mapping

The BeanIO mapping file. Is by default loaded from the classpath. You can prefix with file:, http:, or classpath: to denote from where to load the mapping file.

Stream Name

The name of the stream to use.

Unmarshal Single Object

This options controls whether to unmarshal as a list of objects or as a single object only. The former is the default mode, and the latter is only intended in special use-cases where beanio maps the Camel message to a single POJO bean.

Bindy

Marshal and unmarshal Java beans from and to flat payloads (such as CSV, delimited, fixed length formats, or FIX messages).

Allow Empty Stream

Whether to allow empty streams in the unmarshal process. If true, no exception will be thrown when a body without records is provided.

Class Type

Name of model class to use.

Id

The id of this node

Locale

To configure a default locale to use, such as us for united states. To use the JVM platform default locale then use the name default

Type

Whether to use Csv, Fixed, or KeyValue.

Unwrap Single Instance

When unmarshalling should a single instance be unwrapped and returned instead of wrapped in a java.util.List.

CBOR

Unmarshal a CBOR payload to POJO and back.

Allow Jms Type

Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to.

Allow Unmarshall Type

If enabled then Jackson CBOR is allowed to attempt to use the CamelCBORUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used.

Collection Type

Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default.

Disable Features

Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Enable Features

Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Id

The id of this node

Object Mapper

Lookup and use the existing CBOR ObjectMapper with the given id when using Jackson.

Pretty Print

To enable pretty printing output nicely formatted. Is by default false.

Unmarshal Type

Class name of the java type to use when unmarshalling

Use Default Object Mapper

Whether to lookup and use default Jackson CBOR ObjectMapper from the registry.

Use List

To unmarshal to a List of Map or a List of Pojo.

Crypto (Java Cryptographic Extension)

Encrypt and decrypt messages using Java Cryptography Extension (JCE).

Algorithm

The JCE algorithm name indicating the cryptographic algorithm that will be used.

Algorithm Parameter Ref

A JCE AlgorithmParameterSpec used to initialize the Cipher. Will lookup the type using the given name as a java.security.spec.AlgorithmParameterSpec type.

Buffer Size

The size of the buffer used in the signature process.

Crypto Provider

The name of the JCE Security Provider that should be used.

Id

The id of this node

Init Vector Ref

Refers to a byte array containing the Initialization Vector that will be used to initialize the Cipher.

Inline

Flag indicating that the configured IV should be inlined into the encrypted data stream. Is by default false.

Key Ref

Refers to the secret key to lookup from the register to use.

Mac Algorithm

The JCE algorithm name indicating the Message Authentication algorithm.

Should Append HMAC

Flag indicating that a Message Authentication Code should be calculated and appended to the encrypted data.

CSV

Handle CSV (Comma Separated Values) payloads.

Allow Missing Column Names

Whether to allow missing column names.

Capture Header Record

Whether the unmarshalling should capture the header record and store it in the message header

Comment Marker

Sets the comment marker of the reference format.

Comment Marker Disabled

Disables the comment marker of the reference format.

Delimiter

Sets the delimiter to use. The default value is , (comma)

Escape

Sets the escape character to use

Escape Disabled

Use for disabling using escape character

Format Name

The name of the format to use, the default value is CSVFormat.DEFAULT

Format Ref

The reference format to use, it will be updated with the other format options, the default value is CSVFormat.DEFAULT

Header

To configure the CSV headers

Header Disabled

Use for disabling headers

Id

The id of this node

Ignore Empty Lines

Whether to ignore empty lines.

Ignore Header Case

Sets whether or not to ignore case when accessing header names.

Ignore Surrounding Spaces

Whether to ignore surrounding spaces

Lazy Load

Whether the unmarshalling should produce an iterator that reads the lines on the fly or if all the lines must be read at one.

Marshaller Factory Ref

Sets the implementation of the CsvMarshallerFactory interface which is able to customize marshalling/unmarshalling behavior by extending CsvMarshaller or creating it from scratch.

Null String

Sets the null string

Null String Disabled

Used to disable null strings

Quote

Sets the quote to use which by default is double-quote character

Quote Disabled

Used to disable quotes

Quote Mode

Sets the quote mode

Record Converter Ref

Refers to a custom CsvRecordConverter to lookup from the registry to use.

Record Separator

Sets the record separator (aka new line) which by default is new line characters (CRLF)

Record Separator Disabled

Used for disabling record separator

Skip Header Record

Whether to skip the header record in the output

Trailing Delimiter

Sets whether or not to add a trailing delimiter.

Trim

Sets whether or not to trim leading and trailing blanks.

Use Maps

Whether the unmarshalling should produce maps (HashMap)for the lines values instead of lists. It requires to have header (either defined or collected).

Use Ordered Maps

Whether the unmarshalling should produce ordered maps (LinkedHashMap) for the lines values instead of lists. It requires to have header (either defined or collected).

Custom

Delegate to a custom org.apache.camel.spi.DataFormat implementation via Camel registry.

Id

The id of this node

Ref

Reference to the custom org.apache.camel.spi.DataFormat to lookup from the Camel registry.

Data formats

Configure data formats.

DFDL

Transforms fixed format data such as EDI message from/to XML using a Data Format Description Language (DFDL).

Id

The id of this node

Root Element

The root element name of the schema to use. If not specified, the first root element in the schema will be used.

Root Namespace

The root namespace of the schema to use.

Schema Uri

The path to the DFDL schema file.

FHIR JSon

Marshall and unmarshall FHIR objects to/from JSON.

Content Type Header

Whether the data format should set the Content-Type header with the type from the data format. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSON

Dont Encode Elements

If provided, specifies the elements which should NOT be encoded. Multiple elements can be separated by comma when using String parameter. Valid values for this field would include: Patient - Don't encode patient and all its children Patient.name - Don't encode the patient's name Patient.name.family - Don't encode the patient's family name .text - Don't encode the text element on any resource (only the very first position may contain a wildcard) DSTU2 note: Note that values including meta, such as Patient.meta will work for DSTU2 parsers, but values with subelements on meta such as Patient.meta.lastUpdated will only work in DSTU3 mode.

Dont Strip Versions From References At Paths

If supplied value(s), any resource references at the specified paths will have their resource versions encoded instead of being automatically stripped during the encoding process. This setting has no effect on the parsing process. Multiple elements can be separated by comma when using String parameter. This method provides a finer-grained level of control than setStripVersionsFromReferences(String) and any paths specified by this method will be encoded even if setStripVersionsFromReferences(String) has been set to true (which is the default)

Encode Elements

If provided, specifies the elements which should be encoded, to the exclusion of all others. Multiple elements can be separated by comma when using String parameter. Valid values for this field would include: Patient - Encode patient and all its children Patient.name - Encode only the patient's name Patient.name.family - Encode only the patient's family name .text - Encode the text element on any resource (only the very first position may contain a wildcard) .(mandatory) - This is a special case which causes any mandatory fields (min 0) to be encoded

Encode Elements Applies To Child Resources Only

If set to true (default is false), the values supplied to setEncodeElements(Set) will not be applied to the root resource (typically a Bundle), but will be applied to any sub-resources contained within it (i.e. search result resources in that bundle)

Fhir Context

To use a custom fhir context. Reference to object of type ca.uhn.fhir.context.FhirContext

Fhir Version

The version of FHIR to use. Possible values are: DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4,R5

Force Resource Id

When encoding, force this resource ID to be encoded as the resource ID. Reference to object of type org.hl7.fhir.instance.model.api.IIdType

Id

The id of this node

Omit Resource Id

If set to true (default is false) the ID of any resources being encoded will not be included in the output. Note that this does not apply to contained resources, only to root resources. In other words, if this is set to true, contained resources will still have local IDs but the outer/containing ID will not have an ID.

Override Resource Id With Bundle Entry Full Url

If set to true (which is the default), the Bundle.entry.fullUrl will override the Bundle.entry.resource's resource id if the fullUrl is defined. This behavior happens when parsing the source data into a Bundle object. Set this to false if this is not the desired behavior (e.g. the client code wishes to perform additional validation checks between the fullUrl and the resource id).

Parser Error Handler

Registers an error handler which will be invoked when any parse errors are found. Reference to object of type ca.uhn.fhir.parser.IParserErrorHandler

Parser Options

Sets the parser options object which will be used to supply default options to newly created parsers. Reference to object of type ca.uhn.fhir.context.ParserOptions.

Prefer Types

If set (FQN class names), when parsing resources the parser will try to use the given types when possible, in the order that they are provided (from highest to lowest priority). For example, if a custom type which declares to implement the Patient resource is passed in here, and the parser is parsing a Bundle containing a Patient resource, the parser will use the given custom type. Multiple class names can be separated by comma.

Pretty Print

Sets the pretty print flag, meaning that the parser will encode resources with human-readable spacing and newlines between elements instead of condensing output as much as possible.

Server Base Url

Sets the server's base URL used by this parser. If a value is set, resource references will be turned into relative references if they are provided as absolute URLs but have a base matching the given base.

Strip Versions From References

If set to true (which is the default), resource references containing a version will have the version removed when the resource is encoded. This is generally good behaviour because in most situations, references from one resource to another should be to the resource by ID, not by ID and version. In some cases though, it may be desirable to preserve the version in resource links. In that case, this value should be set to false. This method provides the ability to globally disable reference encoding. If finer-grained control is needed, use setDontStripVersionsFromReferencesAtPaths(List)

Summary Mode

If set to true (default is false) only elements marked by the FHIR specification as being summary elements will be included.

Suppress Narratives

If set to true (default is false), narratives will not be included in the encoded values.

FHIR XML

Marshall and unmarshall FHIR objects to/from XML.

Content Type Header

Whether the data format should set the Content-Type header with the type from the data format. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSON

Dont Encode Elements

Encode Elements

If set to true (default is false), the values supplied to setEncodeElements(Set) will not be applied to the root resource (typically a Bundle), but will be applied to any sub-resources contained within it (i.e. search result resources in that bundle)

Fhir Context

To use a custom fhir context. Reference to object of type ca.uhn.fhir.context.FhirContext

Fhir Version

The version of FHIR to use. Possible values are: DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4,R5

Force Resource Id

When encoding, force this resource ID to be encoded as the resource ID. Reference to object of type org.hl7.fhir.instance.model.api.IIdType

Id

The id of this node

Omit Resource Id

If set to true (default is false) the ID of any resources being encoded will not be included in the output. Note that this does not apply to contained resources, only to root resources. In other words, if this is set to true, contained resources will still have local IDs but the outer/containing ID will not have an ID.

If set to true (which is the default), the Bundle.entry.fullUrl will override the Bundle.entry.resource's resource id if the fullUrl is defined. This behavior happens when parsing the source data into a Bundle object. Set this to false if this is not the desired behavior (e.g. the client code wishes to perform additional validation checks between the fullUrl and the resource id).

Parser Error Handler

Registers an error handler which will be invoked when any parse errors are found. Reference to object of type ca.uhn.fhir.parser.IParserErrorHandler

Parser Options

Sets the parser options object which will be used to supply default options to newly created parsers. Reference to object of type ca.uhn.fhir.context.ParserOptions.

Prefer Types

If set (FQN class names), when parsing resources the parser will try to use the given types when possible, in the order that they are provided (from highest to lowest priority). For example, if a custom type which declares to implement the Patient resource is passed in here, and the parser is parsing a Bundle containing a Patient resource, the parser will use the given custom type. Multiple class names can be separated by comma.

Pretty Print

Sets the pretty print flag, meaning that the parser will encode resources with human-readable spacing and newlines between elements instead of condensing output as much as possible.

Server Base Url

Sets the server's base URL used by this parser. If a value is set, resource references will be turned into relative references if they are provided as absolute URLs but have a base matching the given base.

Strip Versions From References

Summary Mode

If set to true (default is false) only elements marked by the FHIR specification as being summary elements will be included.

Suppress Narratives

If set to true (default is false), narratives will not be included in the encoded values.

Flatpack

Marshal and unmarshal Java lists and maps to/from flat files (such as CSV, delimited, or fixed length formats) using Flatpack library.

Allow Short Lines

Allows for lines to be shorter than expected and ignores the extra characters

Definition

The flatpack pzmap configuration file. Can be omitted in simpler situations, but its preferred to use the pzmap.

Delimiter

The delimiter char (could be ; , or similar)

Fixed

Delimited or fixed. Is by default false = delimited

Id

The id of this node

Ignore Extra Columns

Allows for lines to be longer than expected and ignores the extra characters.

Ignore First Record

Whether the first line is ignored for delimited files (for the column headers). Is by default true.

Parser Factory Ref

References to a custom parser factory to lookup in the registry

Text Qualifier

If the text is qualified with a character. Uses quote character by default.

Fory

Serialize and deserialize messages using Apache Fory

Allow Auto Wired Fory

Whether to auto-discover Fory from the registry

Id

The id of this node

Require Class Registration

Whether to require register classes

Thread Safe

Whether to use the threadsafe Fory

Unmarshal Type

Class of the java type to use when unmarshalling

Grok

Unmarshal unstructured data to objects using Logstash based Grok patterns.

Allow Multiple Matches Per Line

If false, every line of input is matched for pattern only once. Otherwise the line can be scanned multiple times when non-terminal pattern is used.

Flattened

Turns on flattened mode. In flattened mode the exception is thrown when there are multiple pattern matches with same key.

Id

The id of this node

Named Only

Whether to capture named expressions only or not (i.e. %{IP:ip} but not ${IP})

Pattern

The grok pattern to match lines of input

GZip Deflater

Compress and decompress messages using java.util.zip.GZIPStream.

Id

The id of this node

HL7

Marshal and unmarshal HL7 (Health Care) model objects using the HL7 MLLP codec.

Id

The id of this node

Validate

Whether to validate the HL7 message Is by default true.

iCal

Marshal and unmarshal iCal (.ics) documents to/from model objects.

Id

The id of this node

Validating

Whether to validate.

Jackson XML

Unmarshal an XML payloads to POJOs and back using XMLMapper extension of Jackson.

Allow Jms Type

Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to.

Allow Unmarshall Type

If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used.

Collection Type

Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default.

Content Type Header

Whether the data format should set the Content-Type header with the type from the data format. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSON

Disable Features

Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Enable Features

Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Enable Jaxb Annotation Module

Whether to enable the JAXB annotations module when using jackson. When enabled then JAXB annotations can be used by Jackson.

Id

The id of this node

Include

If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL

Json View

When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has JsonView annotations

Module Class Names

To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma.

Module Refs

To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma.

Pretty Print

To enable pretty printing output nicely formatted. Is by default false.

Timezone

If set then Jackson will use the Timezone when marshalling/unmarshalling.

Unmarshal Type

Class name of the java type to use when unmarshalling

Use List

To unmarshal to a List of Map or a List of Pojo.

Xml Mapper

Lookup and use the existing XmlMapper with the given id.

JAXB

Unmarshal XML payloads to POJOs and back using JAXB2 XML marshalling standard.

Access External Schema Protocols

Only in use if schema validation has been enabled. Restrict access to the protocols specified for external reference set by the schemaLocation attribute, Import and Include element. Examples of protocols are file, http, jar:file. false or none to deny all access to external references; a specific protocol, such as file, to give permission to only the protocol; the keyword all to grant permission to all protocols.

Content Type Header

Context Path

Package name where your JAXB classes are located.

Context Path Is Class Name

This can be set to true to mark that the contextPath is referring to a classname and not a package name.

Encoding

To overrule and use a specific encoding

Filter Non Xml Chars

To ignore non xml characheters and replace them with an empty space.

Fragment

To turn on marshalling XML fragment trees. By default JAXB looks for XmlRootElement annotation on given class to operate on whole XML tree. This is useful but not always - sometimes generated code does not have XmlRootElement annotation, sometimes you need unmarshall only part of tree. In that case you can use partial unmarshalling. To enable this behaviours you need set property partClass. Camel will pass this class to JAXB's unmarshaler.

Id

The id of this node

Ignore JAXBElement

Whether to ignore JAXBElement elements - only needed to be set to false in very special use-cases.

Jaxb Provider Properties

Refers to a custom java.util.Map to lookup in the registry containing custom JAXB provider properties to be used with the JAXB marshaller.

Must Be JAXBElement

Whether marhsalling must be java objects with JAXB annotations. And if not then it fails. This option can be set to false to relax that, such as when the data is already in XML format.

Namespace Prefix Ref

When marshalling using JAXB or SOAP then the JAXB implementation will automatic assign namespace prefixes, such as ns2, ns3, ns4 etc. To control this mapping, Camel allows you to refer to a map which contains the desired mapping.

No Namespace Schema Location

To define the location of the namespaceless schema

Object Factory

Whether to allow using ObjectFactory classes to create the POJO classes during marshalling. This only applies to POJO classes that has not been annotated with JAXB and providing jaxb.index descriptor files.

Part Class

Name of class used for fragment parsing. See more details at the fragment option.

Part Namespace

XML namespace to use for fragment parsing. See more details at the fragment option.

Pretty Print

To enable pretty printing output nicely formatted. Is by default false.

Schema

To validate against an existing schema. Your can use the prefix classpath:, file: or http: to specify how the resource should be resolved. You can separate multiple schema files by using the ',' character.

Schema Location

To define the location of the schema

Schema Severity Level

Sets the schema severity level to use when validating against a schema. This level determines the minimum severity error that triggers JAXB to stop continue parsing. The default value of 0 (warning) means that any error (warning, error or fatal error) will trigger JAXB to stop. There are the following three levels: 0=warning, 1=error, 2=fatal error.

Xml Stream Writer Wrapper

To use a custom xml stream writer.

JSonApi

Marshal and unmarshal JSON:API resources using JSONAPI-Converter library.

Data Format Types

The classes to take into account for the marshalling. Multiple classes can be separated by comma.

Id

The id of this node

Main Format Type

The class to take into account while unmarshalling.

JSon

Marshal POJOs to JSON and back.

Allow Jms Type

Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to.

Allow Unmarshall Type

If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used.

Auto Discover Object Mapper

If set to true then Jackson will look for an objectMapper to use from the registry

Auto Discover Schema Resolver

When not disabled, the SchemaResolver will be looked up into the registry

Collection Type

Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows using different collection types than java.util.Collection based as default.

Combine Unicode Surrogates

Force generator that outputs JSON content to combine surrogate pairs (if any) into 4-byte characters. This should be preferred when using 4-byte characters such as Japanese.

Content Type Header

Whether the data format should set the Content-Type header with the type from the data format. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSON

Date Format Pattern

To configure the date format while marshall or unmarshall Date fields in JSON using Gson

Disable Features

Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Enable Features

Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Id

The id of this node

Include

If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL

Json View

When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has JsonView annotations

Library

Which json library to use.

Module Class Names

To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma.

Module Refs

To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma.

Naming Strategy

If set then Jackson will use the the defined Property Naming Strategy.Possible values are: LOWER_CAMEL_CASE, LOWER_DOT_CASE, LOWER_CASE, KEBAB_CASE, SNAKE_CASE and UPPER_CAMEL_CASE

Object Mapper

Lookup and use the existing ObjectMapper with the given id when using Jackson.

Pretty Print

To enable pretty printing output nicely formatted. Is by default false.

Schema Resolver

Optional schema resolver used to lookup schemas for the data in transit.

Timezone

If set then Jackson will use the Timezone when marshalling/unmarshalling. This option will have no effect on the others Json DataFormat, like gson and fastjson.

Unmarshal Type

Class name of the java type to use when unmarshalling

Use Default Object Mapper

Whether to lookup and use default Jackson ObjectMapper from the registry.

Use List

To unmarshal to a List of Map or a List of Pojo.

LZF Deflate Compression

Compress and decompress streams using LZF deflate algorithm.

Id

The id of this node

Using Parallel Compression

Enable encoding (compress) using multiple processing cores.

MIME Multipart

Marshal Camel messages with attachments into MIME-Multipart messages and back.

Binary Content

Defines whether the content of binary parts in the MIME multipart is binary (true) or Base-64 encoded (false) Default is false.

Headers Inline

Defines whether the MIME-Multipart headers are part of the message body (true) or are set as Camel headers (false). Default is false.

Id

The id of this node

Include Headers

A regex that defines which Camel headers are also included as MIME headers into the MIME multipart. This will only work if headersInline is set to true. Default is to include no headers

Multipart Sub Type

Specify the subtype of the MIME Multipart. Default is mixed.

Multipart Without Attachment

Defines whether a message without attachment is also marshaled into a MIME Multipart (with only one body part). Default is false.

PGP

Encrypt and decrypt messages using Java Cryptographic Extension (JCE) and PGP.

Algorithm

Symmetric key encryption algorithm; possible values are defined in org.bouncycastle.bcpg.SymmetricKeyAlgorithmTags; for example 2 (= TRIPLE DES), 3 (= CAST5), 4 (= BLOWFISH), 6 (= DES), 7 (= AES_128). Only relevant for encrypting.

Armored

This option will cause PGP to base64 encode the encrypted text, making it available for copy/paste, etc.

Compression Algorithm

Compression algorithm; possible values are defined in org.bouncycastle.bcpg.CompressionAlgorithmTags; for example 0 (= UNCOMPRESSED), 1 (= ZIP), 2 (= ZLIB), 3 (= BZIP2). Only relevant for encrypting.

Hash Algorithm

Signature hash algorithm; possible values are defined in org.bouncycastle.bcpg.HashAlgorithmTags; for example 2 (= SHA1), 8 (= SHA256), 9 (= SHA384), 10 (= SHA512), 11 (=SHA224). Only relevant for signing.

Id

The id of this node

Integrity

Adds an integrity check/sign into the encryption file. The default value is true.

Key File Name

Filename of the keyring; must be accessible as a classpath resource (but you can specify a location in the file system by using the file: prefix).

Key Userid

The user ID of the key in the PGP keyring used during encryption. Can also be only a part of a user ID. For example, if the user ID is Test User then you can use the part Test User or to address the user ID.

Password

Password used when opening the private key (not used for encryption).

Provider

Java Cryptography Extension (JCE) provider, default is Bouncy Castle (BC). Alternatively you can use, for example, the IAIK JCE provider; in this case the provider must be registered beforehand and the Bouncy Castle provider must not be registered beforehand. The Sun JCE provider does not work.

Signature Key File Name

Filename of the keyring to use for signing (during encryption) or for signature verification (during decryption); must be accessible as a classpath resource (but you can specify a location in the file system by using the file: prefix).

Signature Key Ring

Keyring used for signing/verifying as byte array. You can not set the signatureKeyFileName and signatureKeyRing at the same time.

Signature Key Userid

User ID of the key in the PGP keyring used for signing (during encryption) or signature verification (during decryption). During the signature verification process the specified User ID restricts the public keys from the public keyring which can be used for the verification. If no User ID is specified for the signature verficiation then any public key in the public keyring can be used for the verification. Can also be only a part of a user ID. For example, if the user ID is Test User then you can use the part Test User or to address the User ID.

Signature Password

Password used when opening the private key used for signing (during encryption).

Signature Verification Option

Controls the behavior for verifying the signature during unmarshaling. There are 4 values possible: optional: The PGP message may or may not contain signatures; if it does contain signatures, then a signature verification is executed. required: The PGP message must contain at least one signature; if this is not the case an exception (PGPException) is thrown. A signature verification is executed. ignore: Contained signatures in the PGP message are ignored; no signature verification is executed. no_signature_allowed: The PGP message must not contain a signature; otherwise an exception (PGPException) is thrown.

Parquet File

Parquet Avro serialization and de-serialization.

Compression Codec Name

Compression codec to use when marshalling.

UNCOMPRESSED SNAPPY GZIP LZO BROTLI LZ4 ZSTD LZ4_RAW

Id

The id of this node

Lazy Load

Whether the unmarshalling should produce an iterator of records or read all the records at once.

Unmarshal Type

Class to use when (un)marshalling. If omitted, parquet files are converted into Avro's GenericRecords for unmarshalling and input objects are assumed as GenericRecords for marshalling.

Protobuf

Serialize and deserialize Java objects using Google's Protocol buffers.

Allow Jms Type

Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to.

Allow Unmarshall Type

If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used.

Auto Discover Object Mapper

If set to true then Jackson will lookup for an objectMapper into the registry

Auto Discover Schema Resolver

When not disabled, the SchemaResolver will be looked up into the registry

Collection Type

Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default.

Content Type Format

Defines a content type format in which protobuf message will be serialized/deserialized from(to) the Java been. The format can either be native or json for either native protobuf or json fields representation. The default value is native.

Content Type Header

Whether the data format should set the Content-Type header with the type from the data format. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSON

Disable Features

Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Enable Features

Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma

Id

The id of this node

Include

If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL

Instance Class

Name of class to use when unmarshalling

Json View

When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has JsonView annotations

Library

Which Protobuf library to use.

Module Class Names

To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma.

Module Refs

To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma.

Object Mapper

Lookup and use the existing ObjectMapper with the given id when using Jackson.

Schema Resolver

Optional schema resolver used to lookup schemas for the data in transit.

Timezone

If set then Jackson will use the Timezone when marshalling/unmarshalling.

Unmarshal Type

Class name of the java type to use when unmarshalling

Use Default Object Mapper

Whether to lookup and use default Jackson ObjectMapper from the registry.

Use List

To unmarshal to a List of Map or a List of Pojo.

RSS

Transform from ROME SyndFeed Java Objects to XML and vice-versa.

Id

The id of this node

Smooks

Transform and bind XML as well as non-XML data, including EDI, CSV, JSON, and YAML using Smooks.

Id

The id of this node

Smooks Config

Path to the Smooks configuration file.

SOAP

Marshal Java objects to SOAP messages and back.

Context Path

Package name where your JAXB classes are located.

Element Name Strategy Ref

Refers to an element strategy to lookup from the registry. An element name strategy is used for two purposes. The first is to find a xml element name for a given object and soap action when marshaling the object into a SOAP message. The second is to find an Exception class for a given soap fault name. The following three element strategy class name is provided out of the box. QNameStrategy - Uses a fixed qName that is configured on instantiation. Exception lookup is not supported TypeNameStrategy - Uses the name and namespace from the XMLType annotation of the given type. If no namespace is set then package-info is used. Exception lookup is not supported ServiceInterfaceStrategy - Uses information from a webservice interface to determine the type name and to find the exception class for a SOAP fault All three classes is located in the package name org.apache.camel.dataformat.soap.name If you have generated the web service stub code with cxf-codegen or a similar tool then you probably will want to use the ServiceInterfaceStrategy. In the case you have no annotated service interface you should use QNameStrategy or TypeNameStrategy.

Encoding

To overrule and use a specific encoding

Id

The id of this node

Namespace Prefix Ref

When marshalling using JAXB or SOAP then the JAXB implementation will automatic assign namespace prefixes, such as ns2, ns3, ns4 etc. To control this mapping, Camel allows you to refer to a map which contains the desired mapping.

Schema

To validate against an existing schema. Your can use the prefix classpath:, file: or http: to specify how the resource should be resolved. You can separate multiple schema files by using the ',' character.

Version

SOAP version should either be 1.1 or 1.2. Is by default 1.1

SWIFT MT

Encode and decode SWIFT MT messages.

Id

The id of this node

Write In Json

The flag indicating that messages must be marshalled in a JSON format.

SWIFT MX

Encode and decode SWIFT MX messages.

Id

The id of this node

Read Config Ref

Refers to a specific configuration to use when unmarshalling an input stream to lookup from the registry.

Read Message Id

The type of MX message to produce when unmarshalling an input stream. If not set, it will be automatically detected from the namespace used.

Write Config Ref

Refers to a specific configuration to use when marshalling a message to lookup from the registry.

Write In Json

Syslog

Marshall SyslogMessages to RFC3164 and RFC5424 messages and back.

Id

The id of this node

Tar File

Archive files into tarballs or extract files from tarballs.

Allow Empty Directory

If the tar file has more than one entry, setting this option to true, allows to get the iterator even if the directory is empty

Id

The id of this node

Max Decompressed Size

Set the maximum decompressed size of a tar file (in bytes). The default value if not specified corresponds to 1 gigabyte. An IOException will be thrown if the decompressed size exceeds this amount. Set to -1 to disable setting a maximum decompressed size.

Preserve Path Elements

If the file name contains path elements, setting this option to true, allows the path to be maintained in the tar file.

Using Iterator

If the tar file has more than one entry, the setting this option to true, allows working with the splitter EIP, to split the data using an iterator in a streaming mode.

Thrift

Serialize and deserialize messages using Apache Thrift binary data format.

Content Type Format

Defines a content type format in which thrift message will be serialized/deserialized from(to) the Java been. The format can either be native or json for either native binary thrift, json or simple json fields representation. The default value is binary.

Content Type Header

Whether the data format should set the Content-Type header with the type from the data format. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSON

Id

The id of this node

Instance Class

Name of class to use when unmarshalling

TidyMarkup

Parse (potentially invalid) HTML into valid HTML or DOM.

Data Object Type

What data type to unmarshal as, can either be org.w3c.dom.Node or java.lang.String. Is by default org.w3c.dom.Node

Id

The id of this node

Omit Xml Declaration

When returning a String, do we omit the XML declaration in the top.

uniVocity CSV

Marshal and unmarshal Java objects from and to CSV (Comma Separated Values) using UniVocity Parsers.

As Map

Whether the unmarshalling should produce maps for the lines values instead of lists. It requires to have header (either defined or collected). The default value is false

Comment

The comment symbol. The default value is #

Delimiter

The delimiter of values

Empty Value

The String representation of an empty value.

Header Extraction Enabled

Whether or not the header must be read in the first line of the test document. The default value is false

Headers Disabled

Whether or not the headers are disabled. When defined, this option explicitly sets the headers as null which indicates that there is no header. The default value is false

Id

The id of this node

Ignore Leading Whitespaces

Whether or not the leading white spaces must be ignored. The default value is true

Ignore Trailing Whitespaces

Whether or not the trailing white spaces must be ignored. The default value is true

Lazy Load

Whether the unmarshalling should produce an iterator that reads the lines on the fly or if all the lines must be read at once. The default value is false

Line Separator

The line separator of the files. The default value is to use the JVM platform line separator

Normalized Line Separator

The normalized line separator of the files. The default value is a new line character.

Null Value

The string representation of a null value. The default value is null

Number Of Records To Read

The maximum number of record to read.

Quote

The quote symbol.

Quote All Fields

Whether or not all values must be quoted when writing them.

Quote Escape

The quote escape symbol

Skip Empty Lines

Whether or not the empty lines must be ignored. The default value is true

uniVocity Fixed Length

Marshal and unmarshal Java objects from and to fixed length records using UniVocity Parsers.

As Map

Comment

Empty Value

Header Extraction Enabled

Headers Disabled

Id

The id of this node

Ignore Leading Whitespaces

Ignore Trailing Whitespaces

Lazy Load

Line Separator

Normalized Line Separator

Null Value

Number Of Records To Read

The maximum number of record to read.

Padding

The padding character. The default value is a space

Record Ends On Newline

Whether or not the record ends on new line. The default value is false

Skip Empty Lines

Skip Trailing Chars Until Newline

Whether or not the trailing characters until new line must be ignored. The default value is false

uniVocity Header

To configure headers for UniVocity data formats.

Length

Header length

Name

Header name

uniVocity TSV

Marshal and unmarshal Java objects from and to TSV (Tab-Separated Values) records using UniVocity Parsers.

As Map

Whether the unmarshalling should produce maps for the lines values instead of lists. It requires to have header (either defined or collected). The default value is false

Comment

The comment symbol. The default value is #

Empty Value

The String representation of an empty value.

Escape Char

The escape character.

Header Extraction Enabled

Whether or not the header must be read in the first line of the test document. The default value is false

Headers Disabled

Whether or not the headers are disabled. When defined, this option explicitly sets the headers as null which indicates that there is no header. The default value is false

Id

The id of this node

Ignore Leading Whitespaces

Whether or not the leading white spaces must be ignored. The default value is true

Ignore Trailing Whitespaces

Whether or not the trailing white spaces must be ignored. The default value is true

Lazy Load

Whether the unmarshalling should produce an iterator that reads the lines on the fly or if all the lines must be read at once. The default value is false

Line Separator

The line separator of the files. The default value is to use the JVM platform line separator

Normalized Line Separator

The normalized line separator of the files. The default value is a new line character.

Null Value

The string representation of a null value. The default value is null

Number Of Records To Read

The maximum number of record to read.

Skip Empty Lines

Whether or not the empty lines must be ignored. The default value is true

XML Security

Encrypt and decrypt XML payloads using Apache Santuario.

Add Key Value For Encrypted Key

Whether to add the public key used to encrypt the session key as a KeyValue in the EncryptedKey structure or not.

Digest Algorithm

The digest algorithm to use with the RSA OAEP algorithm. The available choices are: XMLCipher.SHA1 XMLCipher.SHA256 XMLCipher.SHA512 The default value is XMLCipher.SHA1

Id

The id of this node

Key Cipher Algorithm

The cipher algorithm to be used for encryption/decryption of the asymmetric key. The available choices are: XMLCipher.RSA_v1dot5 XMLCipher.RSA_OAEP XMLCipher.RSA_OAEP_11 The default value is XMLCipher.RSA_OAEP

Key Or Trust Store Parameters Ref

Refers to a KeyStore instance to lookup in the registry, which is used for configuration options for creating and loading a KeyStore instance that represents the sender's trustStore or recipient's keyStore.

Key Password

The password to be used for retrieving the private key from the KeyStore. This key is used for asymmetric decryption.

Mgf Algorithm

The MGF Algorithm to use with the RSA OAEP algorithm. The available choices are: EncryptionConstants.MGF1_SHA1 EncryptionConstants.MGF1_SHA256 EncryptionConstants.MGF1_SHA512 The default value is EncryptionConstants.MGF1_SHA1

Pass Phrase

A String used as passPhrase to encrypt/decrypt content. The passPhrase has to be provided. The passPhrase needs to be put together in conjunction with the appropriate encryption algorithm. For example using TRIPLEDES the passPhase can be a Only another 24 Byte key

Pass Phrase Byte

A byte used as passPhrase to encrypt/decrypt content. The passPhrase has to be provided. The passPhrase needs to be put together in conjunction with the appropriate encryption algorithm. For example using TRIPLEDES the passPhase can be a Only another 24 Byte key

Recipient Key Alias

The key alias to be used when retrieving the recipient's public or private key from a KeyStore when performing asymmetric key encryption or decryption.

Secure Tag

The XPath reference to the XML Element selected for encryption/decryption. If no tag is specified, the entire payload is encrypted/decrypted.

Secure Tag Contents

A boolean value to specify whether the XML Element is to be encrypted or the contents of the XML Element. false = Element Level. true = Element Content Level.

Xml Cipher Algorithm

The cipher algorithm to be used for encryption/decryption of the XML message content. The available choices are: XMLCipher.TRIPLEDES XMLCipher.AES_128 XMLCipher.AES_128_GCM XMLCipher.AES_192 XMLCipher.AES_192_GCM XMLCipher.AES_256 XMLCipher.AES_256_GCM XMLCipher.SEED_128 XMLCipher.CAMELLIA_128 XMLCipher.CAMELLIA_192 XMLCipher.CAMELLIA_256 The default value is XMLCipher.AES_256_GCM

YAML

Marshal and unmarshal Java objects to and from YAML.

Allow Any Type

Allow any class to be un-marshaled

Allow Recursive Keys

Set whether recursive keys are allowed.

Constructor

BaseConstructor to construct incoming documents.

Dumper Options

DumperOptions to configure outgoing objects.

Id

The id of this node

Library

Which yaml library to use. By default it is SnakeYAML

Max Aliases For Collections

Set the maximum amount of aliases allowed for collections.

Pretty Flow

Force the emitter to produce a pretty YAML document when using the flow style.

Representer

Representer to emit outgoing objects.

Resolver

Resolver to detect implicit type

Type Filter

Set the types SnakeYAML is allowed to un-marshall

Unmarshal Type

Class name of the java type to use when unmarshalling

Use Application Context Class Loader

Use ApplicationContextClassLoader as custom ClassLoader

YAML Type Filter

Type

Whether to filter by class type or regular expression

Value

Value of type such as class name or regular expression

Zip Deflater

Compress and decompress streams using java.util.zip.Deflater and java.util.zip.Inflater.

Compression Level

To specify a specific compression between 0-9. -1 is default compression, 0 is no compression, and 9 is the best compression.

Id

The id of this node

Zip File

Compression and decompress streams using java.util.zip.ZipStream.

Allow Empty Directory

If the zip file has more than one entry, setting this option to true, allows to get the iterator even if the directory is empty

Id

The id of this node

Max Decompressed Size

Set the maximum decompressed size of a zip file (in bytes). The default value if not specified corresponds to 1 gigabyte. An IOException will be thrown if the decompressed size exceeds this amount. Set to -1 to disable setting a maximum decompressed size.

Preserve Path Elements

If the file name contains path elements, setting this option to true, allows the path to be maintained in the zip file.

Using Iterator

If the zip file has more than one entry, the setting this option to true, allows working with the splitter EIP, to split the data using an iterator in a streaming mode.

Dead Letter Channel

Error handler with dead letter queue.

Dead Letter Handle New Exception

Whether the dead letter channel should handle (and ignore) any new exception that may been thrown during sending the message to the dead letter endpoint. The default value is true which means any such kind of exception is handled and ignored. Set this to false to let the exception be propagated back on the org.apache.camel.Exchange . This can be used in situations where you use transactions, and want to use Camel's dead letter channel to deal with exceptions during routing, but if the dead letter channel itself fails because of a new exception being thrown, then by setting this to false the new exceptions is propagated back and set on the org.apache.camel.Exchange , which allows the transaction to detect the exception, and rollback.

Dead Letter Uri

The dead letter endpoint uri for the Dead Letter error handler.

Executor Service Ref

Sets a reference to a thread pool to be used by the error handler

Id

The id of this node

Level

Logging level to use by error handler

Log Name

Name of the logger to use by the error handler

Logger Ref

References to a logger to use as logger for the error handler

On Exception Occurred Ref

Sets a reference to a processor that should be processed just after an exception occurred. Can be used to perform custom logging about the occurred exception at the exact time it happened. Important: Any exception thrown from this processor will be ignored.

On Prepare Failure Ref

Sets a reference to a processor to prepare the org.apache.camel.Exchange before handled by the failure processor / dead letter channel. This allows for example to enrich the message before sending to a dead letter queue.

On Redelivery Ref

Sets a reference to a processor that should be processed before a redelivery attempt. Can be used to change the org.apache.camel.Exchange before its being redelivered.

Redelivery Policy

Sets the redelivery settings

Redelivery Policy Ref

Sets a reference to a RedeliveryPolicy to be used for redelivery settings.

Retry While Ref

Sets a retry while predicate. Will continue retrying until the predicate evaluates to false.

Use Original Body

Will use the original input org.apache.camel.Message body (original body only) when an org.apache.camel.Exchange is moved to the dead letter queue. Notice: this only applies when all redeliveries attempt have failed and the org.apache.camel.Exchange is doomed for failure. Instead of using the current inprogress org.apache.camel.Exchange IN message we use the original IN message instead. This allows you to store the original input in the dead letter queue instead of the inprogress snapshot of the IN message. For instance if you route transform the IN body during routing and then failed. With the original exchange store in the dead letter queue it might be easier to manually re submit the org.apache.camel.Exchange again as the IN message is the same as when Camel received it. So you should be able to send the org.apache.camel.Exchange to the same input. The difference between useOriginalMessage and useOriginalBody is that the former includes both the original body and headers, where as the latter only includes the original body. You can use the latter to enrich the message with custom headers and include the original message body. The former wont let you do this, as its using the original message body and headers as they are. You cannot enable both useOriginalMessage and useOriginalBody. The original input message is defensively copied, and the copied message body is converted to org.apache.camel.StreamCache if possible (stream caching is enabled, can be disabled globally or on the original route), to ensure the body can be read when the original message is being used later. If the body is converted to org.apache.camel.StreamCache then the message body on the current org.apache.camel.Exchange is replaced with the org.apache.camel.StreamCache body. If the body is not converted to org.apache.camel.StreamCache then the body will not be able to re-read when accessed later. Important: The original input means the input message that are bounded by the current org.apache.camel.spi.UnitOfWork . An unit of work typically spans one route, or multiple routes if they are connected using internal endpoints such as direct or seda. When messages is passed via external endpoints such as JMS or HTTP then the consumer will create a new unit of work, with the message it received as input as the original input. Also some EIP patterns such as splitter, multicast, will create a new unit of work boundary for the messages in their sub-route (eg the splitted message); however these EIPs have an option named shareUnitOfWork which allows to combine with the parent unit of work in regard to error handling and therefore use the parent original message. By default this feature is off.

Use Original Message

Will use the original input org.apache.camel.Message (original body and headers) when an org.apache.camel.Exchange is moved to the dead letter queue. Notice: this only applies when all redeliveries attempt have failed and the org.apache.camel.Exchange is doomed for failure. Instead of using the current inprogress org.apache.camel.Exchange IN message we use the original IN message instead. This allows you to store the original input in the dead letter queue instead of the inprogress snapshot of the IN message. For instance if you route transform the IN body during routing and then failed. With the original exchange store in the dead letter queue it might be easier to manually re submit the org.apache.camel.Exchange again as the IN message is the same as when Camel received it. So you should be able to send the org.apache.camel.Exchange to the same input. The difference between useOriginalMessage and useOriginalBody is that the former includes both the original body and headers, where as the latter only includes the original body. You can use the latter to enrich the message with custom headers and include the original message body. The former wont let you do this, as its using the original message body and headers as they are. You cannot enable both useOriginalMessage and useOriginalBody. The original input message is defensively copied, and the copied message body is converted to org.apache.camel.StreamCache if possible (stream caching is enabled, can be disabled globally or on the original route), to ensure the body can be read when the original message is being used later. If the body is converted to org.apache.camel.StreamCache then the message body on the current org.apache.camel.Exchange is replaced with the org.apache.camel.StreamCache body. If the body is not converted to org.apache.camel.StreamCache then the body will not be able to re-read when accessed later. Important: The original input means the input message that are bounded by the current org.apache.camel.spi.UnitOfWork . An unit of work typically spans one route, or multiple routes if they are connected using internal endpoints such as direct or seda. When messages is passed via external endpoints such as JMS or HTTP then the consumer will create a new unit of work, with the message it received as input as the original input. Also some EIP patterns such as splitter, multicast, will create a new unit of work boundary for the messages in their sub-route (eg the splitted message); however these EIPs have an option named shareUnitOfWork which allows to combine with the parent unit of work in regard to error handling and therefore use the parent original message. By default this feature is off.

Default Error Handler

The default error handler.

Executor Service Ref

Id

The id of this node

Level

Logging level to use by error handler

Log Name

Logger Ref

On Exception Occurred Ref

On Prepare Failure Ref

On Redelivery Ref

Redelivery Policy

Sets the redelivery settings

Redelivery Policy Ref

Retry While Ref

Use Original Body

Use Original Message

Jta Transaction Error Handler

JTA based transactional error handler (requires camel-jta).

Executor Service Ref

Id

The id of this node

Level

Logging level to use by error handler

Log Name

Logger Ref

On Exception Occurred Ref

On Prepare Failure Ref

On Redelivery Ref

Redelivery Policy

Sets the redelivery settings

Redelivery Policy Ref

Retry While Ref

Rollback Logging Level

Sets the logging level to use for logging transactional rollback. This option is default WARN.

Transacted Policy Ref

The transacted policy to use that is configured for either Spring or JTA based transactions. If no policy has been configured then Camel will attempt to auto-discover.

Use Original Body

Use Original Message

No Error Handler

To not use an error handler.

Id

The id of this node

Ref Error Handler

References to an existing or custom error handler.

Id

The id of this node

Ref

Spring Transaction Error Handler

Spring based transactional error handler (requires camel-spring).

Executor Service Ref

Id

The id of this node

Level

Logging level to use by error handler

Log Name

Logger Ref

On Exception Occurred Ref

On Prepare Failure Ref

On Redelivery Ref

Redelivery Policy

Sets the redelivery settings

Redelivery Policy Ref

Retry While Ref

Rollback Logging Level

Transacted Policy Ref

Use Original Body

Use Original Message

CSimple

Evaluate a compiled simple expression.

Expression

The expression value in your chosen language syntax

Id

Sets the id of this node

Result Type

Sets the class of the result type (type from output)

Trim

Whether to trim the value to remove leading and trailing whitespaces and line breaks

Constant

A fixed value set only once during the route startup.

Expression

Id

Sets the id of this node

Result Type

Trim

DataSonnet

To use DataSonnet scripts for message transformations.

Body Media Type

The String representation of the message's body MediaType

Expression

Id

Sets the id of this node

Output Media Type

The String representation of the MediaType to output

Result Type

Source

Source to use, instead of message body. You can prefix with variable:, header:, or property: to specify kind of source. Otherwise, the source is assumed to be a variable. Use empty or null to use default source, which is the message body.

Trim

ExchangeProperty

Gets a property from the Exchange.

Expression

Id

Sets the id of this node

Trim

Groovy

Evaluates a Groovy script.

Expression

Id

Sets the id of this node

Result Type

Trim

Header

Gets a header from the Exchange.

Expression

Id

Sets the id of this node

Trim

HL7 Terser

Get the value of a HL7 message field specified by terse location specification syntax.

Expression

Id

Sets the id of this node

Result Type

Source

Trim

Java

Evaluates a Java (Java compiled once at runtime) expression.

Expression

Id

Sets the id of this node

Pre Compile

Whether the expression should be pre compiled once during initialization phase. If this is turned off, then the expression is reloaded and compiled on each evaluation.

Result Type

Single Quotes

Whether single quotes can be used as replacement for double quotes. This is convenient when you need to work with strings inside strings.

Trim

JavaScript

Evaluates a JavaScript expression.

Expression

Id

Sets the id of this node

Result Type

Trim

jOOR

Evaluates a jOOR (Java compiled once at runtime) expression.

Expression

Id

Sets the id of this node

Pre Compile

Result Type

Single Quotes

Trim

JQ

Evaluates a JQ expression against a JSON message body.

Expression

Id

Sets the id of this node

Result Type

Source

Trim

JSONPath

Evaluates a JSONPath expression against a JSON message body.

Allow Easy Predicate

Whether to allow using the easy predicate parser to pre-parse predicates.

Allow Simple

Whether to allow in inlined Simple exceptions in the JSONPath expression

Expression

The expression value in your chosen language syntax

Id

Sets the id of this node

Option

To configure additional options on JSONPath. Multiple values can be separated by comma.

Result Type

Sets the class of the result type (type from output)

Source

Suppress Exceptions

Whether to suppress exceptions such as PathNotFoundException.

Trim

Whether to trim the value to remove leading and trailing whitespaces and line breaks

Unpack Array

Whether to unpack a single element json-array into an object.

Write As String

Whether to write the output of each row/element as a JSON String value instead of a Map/POJO value.

Language

Evaluates a custom language.

Expression

Id

Sets the id of this node

Language

The name of the language to use

Trim

Bean Method

Calls a Java bean method.

Bean Type

Class name (fully qualified) of the bean to use Will lookup in registry and if there is a single instance of the same type, then the existing bean is used, otherwise a new bean is created (requires a default no-arg constructor).

Id

Sets the id of this node

Method

Name of method to call

Ref

Reference to an existing bean (bean id) to lookup in the registry

Result Type

Scope

Trim

Validate

Whether to validate the bean has the configured method.

MVEL

Evaluates a MVEL template.

Expression

Id

Sets the id of this node

Result Type

Trim

OGNL

Evaluates an OGNL expression (Apache Commons OGNL).

Expression

Id

Sets the id of this node

Result Type

Trim

Python

Evaluates a Python expression.

Expression

Id

Sets the id of this node

Result Type

Trim

Ref

Uses an existing expression from the registry.

Expression

Id

Sets the id of this node

Result Type

Trim

Simple

Evaluates a Camel simple expression.

Expression

Id

Sets the id of this node

Result Type

Trim

SpEL

Evaluates a Spring expression (SpEL).

Expression

Id

Sets the id of this node

Result Type

Trim

Tokenize

Tokenize text payloads using delimiter patterns.

End Token

The end token to use as tokenizer if using start/end token pairs. You can use simple language as the token to support dynamic tokens.

Group

To group N parts together, for example to split big files into chunks of 1000 lines. You can use simple language as the group to support dynamic group sizes.

Group Delimiter

Sets the delimiter to use when grouping. If this has not been set then token will be used as the delimiter.

Id

Sets the id of this node

Include Tokens

Whether to include the tokens in the parts when using pairs. When including tokens then the endToken property must also be configured (to use pair mode). The default value is false

Inherit Namespace Tag Name

To inherit namespaces from a root/parent tag name when using XML You can use simple language as the tag name to support dynamic names.

Regex

If the token is a regular expression pattern. The default value is false

Result Type

Sets the class of the result type (type from output)

Skip First

To skip the very first element

Source

Source to use, instead of message body. You can prefix with variable:, header:, or property: to specify kind of source. Otherwise, the source is assumed to be a variable. Use empty or null to use default source, which is the message body.

Token

The (start) token to use as tokenizer, for example you can use the new line token. You can use simple language as the token to support dynamic tokens.

Trim

Whether to trim the value to remove leading and trailing whitespaces and line breaks

Xml

Whether the input is XML messages. This option must be set to true if working with XML payloads.

Variable

Gets a variable

Expression

The expression value in your chosen language syntax

Id

Sets the id of this node

Trim

Wasm

Call a wasm (web assembly) function.

Expression

Id

Sets the id of this node

Module

Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function.

Result Type

Trim

XML Tokenize

Tokenize XML payloads.

Expression

Group

To group N parts together

Id

Sets the id of this node

Mode

The extraction mode. The available extraction modes are: i - injecting the contextual namespace bindings into the extracted token (default) w - wrapping the extracted token in its ancestor context u - unwrapping the extracted token to its child content t - extracting the text content of the specified element

Namespace

Injects the XML Namespaces of prefix - uri mappings

Result Type

Source

Trim

XPath

Evaluates an XPath expression against an XML payload.

Document Type

Name of class for document type The default value is org.w3c.dom.Document

Expression

Factory Ref

References to a custom XPathFactory to lookup in the registry

Id

Sets the id of this node

Log Namespaces

Whether to log namespaces which can assist during troubleshooting

Namespace

Object Model

The XPath object model to use

Pre Compile

Whether to enable pre-compiling the xpath expression during initialization phase. pre-compile is enabled by default. This can be used to turn off, for example in cases the compilation phase is desired at the starting phase, such as if the application is ahead of time compiled (for example with camel-quarkus) which would then load the xpath factory of the built operating system, and not a JVM runtime.

Result QName

Sets the output type supported by XPath.

Result Type

Saxon

Whether to use Saxon.

Source

Thread Safety

Whether to enable thread-safety for the returned result of the xpath expression. This applies to when using NODESET as the result type, and the returned set has multiple elements. In this situation there can be thread-safety issues if you process the NODESET concurrently such as from a Camel Splitter EIP in parallel processing mode. This option prevents concurrency issues by doing defensive copies of the nodes. It is recommended to turn this option on if you are using camel-saxon or Saxon in your application. Saxon has thread-safety issues which can be prevented by turning this option on.

Trim

XQuery

Evaluates an XQuery expressions against an XML payload.

Configuration Ref

Reference to a saxon configuration instance in the registry to use for xquery (requires camel-saxon). This may be needed to add custom functions to a saxon configuration, so these custom functions can be used in xquery expressions.

Expression

Id

Sets the id of this node

Namespace

Result Type

Sets the class of the result type (type from output)

Source

Source to use, instead of message body. You can prefix with variable:, header:, or property: to specify kind of source. Otherwise, the source is assumed to be a variable. Use empty or null to use default source, which is the message body.

Trim

Whether to trim the value to remove leading and trailing whitespaces and line breaks

Custom Load Balancer

To use a custom load balancer implementation.

Id

The id of this node

Ref

Refers to the custom load balancer to lookup from the registry

Failover Load Balancer

In case of failures the exchange will be tried on the next endpoint.

Exception

A list of class names for specific exceptions to monitor. If no exceptions are configured then all exceptions are monitored

Id

The id of this node

Maximum Failover Attempts

A value to indicate after X failover attempts we should exhaust (give up). Use -1 to indicate never give up and continuously try to failover. Use 0 to never failover. And use e.g. 3 to failover at most 3 times before giving up. This option can be used whether roundRobin is enabled or not.

Round Robin

Whether or not the failover load balancer should operate in round robin mode or not. If not, then it will always start from the first endpoint when a new message is to be processed. In other words it restart from the top for every message. If round robin is enabled, then it keeps state and will continue with the next endpoint in a round robin fashion. You can also enable sticky mode together with round robin, if so then it will pick the last known good endpoint to use when starting the load balancing (instead of using the next when starting).

Sticky

Whether or not the failover load balancer should operate in sticky mode or not. If not, then it will always start from the first endpoint when a new message is to be processed. In other words it restart from the top for every message. If sticky is enabled, then it keeps state and will continue with the last known good endpoint. You can also enable sticky mode together with round robin, if so then it will pick the last known good endpoint to use when starting the load balancing (instead of using the next when starting).

Random Load Balancer

The destination endpoints are selected randomly.

Id

The id of this node

Round Robin Load Balancer

The destination endpoints are selected in a round-robin fashion. This is a well-known and classic policy, which spreads the load evenly.

Id

The id of this node

Sticky Load Balancer

Sticky load balancing using an expression to calculate a correlation key to perform the sticky load balancing.

Correlation Expression

The correlation expression to use to calculate the correlation key

Id

The id of this node

Topic Load Balancer

Topic which sends to all destinations.

Id

The id of this node

Weighted Load Balancer

Uses a weighted load distribution ratio for each server with respect to others.

Distribution Ratio

The distribution ratio is a delimited String consisting on integer weights separated by delimiters for example 2,3,5. The distributionRatio must match the number of endpoints and/or processors specified in the load balancer list.

Distribution Ratio Delimiter

Delimiter used to specify the distribution ratio. The default value is , (comma)

Id

The id of this node

Round Robin

To enable round robin mode. By default the weighted distribution mode is used. The default value is false.

Api Key

Rest security basic auth definition

Description

A short description for security scheme.

In Cookie

To use a cookie as the location of the API key.

In Header

To use header as the location of the API key.

In Query

To use query parameter as the location of the API key.

Key

Key used to refer to this security definition

Name

The name of the header or query parameter to be used.

Basic Auth

Rest security basic auth definition

Description

Key

Bearer Token

Rest security bearer token authentication definition

Description

Format

A hint to the client to identify how the bearer token is formatted.

Key

Delete

Rest DELETE command

Api Docs

Whether to include or exclude this rest operation in API documentation. The default value is true.

Binding Mode

Sets the binding mode to use. This option will override what may be configured on a parent level The default value is off

Client Request Validation

Whether to enable validation of the client request to check: 1) Content-Type header matches what the Rest DSL consumes; returns HTTP Status 415 if validation error. 2) Accept header matches what the Rest DSL produces; returns HTTP Status 406 if validation error. 3) Missing required data (query parameters, HTTP headers, body); returns HTTP Status 400 if validation error. 4) Parsing error of the message body (JSon, XML or Auto binding mode must be enabled); returns HTTP Status 400 if validation error.

Client Response Validation

Whether to check what Camel is returning as response to the client: 1) Status-code and Content-Type matches Rest DSL response messages. 2) Check whether expected headers is included according to the Rest DSL repose message headers. 3) If the response body is JSon then check whether its valid JSon. Returns 500 if validation error detected.

Consumes

To define the content type what the REST service consumes (accept as input), such as application/xml or application/json. This option will override what may be configured on a parent level

Deprecated

Marks this rest operation as deprecated in OpenApi documentation.

Description

Sets the description of this node

Disabled

Whether to disable this REST service from the route during build time. Once an REST service has been disabled then it cannot be enabled later at runtime.

Enable CORS

Whether to enable CORS headers in the HTTP response. This option will override what may be configured on a parent level The default value is false.

Enable No Content Response

Whether to return HTTP 204 with an empty body when a response contains an empty JSON object or XML root object. The default value is false.

Id

Sets the id of this node

Out Type

Sets the class name to use for binding from POJO to output for the outgoing data This option will override what may be configured on a parent level The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Param

Information about parameters for this REST operation

Path

The path mapping URIs of this REST operation such as /{id}.

Produces

To define the content type what the REST service produces (uses for output), such as application/xml or application/json This option will override what may be configured on a parent level

Response Message

Response details for this REST operation

Route Id

Sets the id of the route

Security

Security settings for this REST operation

Skip Binding On Error Code

Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do. This option will override what may be configured on a parent level

Stream Cache

Whether stream caching is enabled on this rest operation.

To

The Camel endpoint this REST service will call, such as a direct endpoint to link to an existing route that handles this REST call.

Type

Sets the class name to use for binding from input to POJO for the incoming data This option will override what may be configured on a parent level. The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Get

Rest GET command

Api Docs

Whether to include or exclude this rest operation in API documentation. The default value is true.

Binding Mode

Sets the binding mode to use. This option will override what may be configured on a parent level The default value is off

Client Request Validation

Client Response Validation

Whether to check what Camel is returning as response to the client: 1) Status-code and Content-Type matches Rest DSL response messages. 2) Check whether expected headers is included according to the Rest DSL repose message headers. 3) If the response body is JSon then check whether its valid JSon. Returns 500 if validation error detected.

Consumes

To define the content type what the REST service consumes (accept as input), such as application/xml or application/json. This option will override what may be configured on a parent level

Deprecated

Marks this rest operation as deprecated in OpenApi documentation.

Description

Sets the description of this node

Disabled

Whether to disable this REST service from the route during build time. Once an REST service has been disabled then it cannot be enabled later at runtime.

Enable CORS

Whether to enable CORS headers in the HTTP response. This option will override what may be configured on a parent level The default value is false.

Enable No Content Response

Whether to return HTTP 204 with an empty body when a response contains an empty JSON object or XML root object. The default value is false.

Id

Sets the id of this node

Out Type

Sets the class name to use for binding from POJO to output for the outgoing data This option will override what may be configured on a parent level The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Param

Information about parameters for this REST operation

Path

The path mapping URIs of this REST operation such as /{id}.

Produces

To define the content type what the REST service produces (uses for output), such as application/xml or application/json This option will override what may be configured on a parent level

Response Message

Response details for this REST operation

Route Id

Sets the id of the route

Security

Security settings for this REST operation

Skip Binding On Error Code

Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do. This option will override what may be configured on a parent level

Stream Cache

Whether stream caching is enabled on this rest operation.

To

The Camel endpoint this REST service will call, such as a direct endpoint to link to an existing route that handles this REST call.

Type

Sets the class name to use for binding from input to POJO for the incoming data This option will override what may be configured on a parent level. The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Head

Rest HEAD command

Api Docs

Whether to include or exclude this rest operation in API documentation. The default value is true.

Binding Mode

Sets the binding mode to use. This option will override what may be configured on a parent level The default value is off

Client Request Validation

Client Response Validation

Whether to check what Camel is returning as response to the client: 1) Status-code and Content-Type matches Rest DSL response messages. 2) Check whether expected headers is included according to the Rest DSL repose message headers. 3) If the response body is JSon then check whether its valid JSon. Returns 500 if validation error detected.

Consumes

To define the content type what the REST service consumes (accept as input), such as application/xml or application/json. This option will override what may be configured on a parent level

Deprecated

Marks this rest operation as deprecated in OpenApi documentation.

Description

Sets the description of this node

Disabled

Whether to disable this REST service from the route during build time. Once an REST service has been disabled then it cannot be enabled later at runtime.

Enable CORS

Whether to enable CORS headers in the HTTP response. This option will override what may be configured on a parent level The default value is false.

Enable No Content Response

Whether to return HTTP 204 with an empty body when a response contains an empty JSON object or XML root object. The default value is false.

Id

Sets the id of this node

Out Type

Sets the class name to use for binding from POJO to output for the outgoing data This option will override what may be configured on a parent level The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Param

Information about parameters for this REST operation

Path

The path mapping URIs of this REST operation such as /{id}.

Produces

To define the content type what the REST service produces (uses for output), such as application/xml or application/json This option will override what may be configured on a parent level

Response Message

Response details for this REST operation

Route Id

Sets the id of the route

Security

Security settings for this REST operation

Skip Binding On Error Code

Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do. This option will override what may be configured on a parent level

Stream Cache

Whether stream caching is enabled on this rest operation.

To

The Camel endpoint this REST service will call, such as a direct endpoint to link to an existing route that handles this REST call.

Type

Sets the class name to use for binding from input to POJO for the incoming data This option will override what may be configured on a parent level. The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Mutual TLS

Rest security mutual TLS authentication definition

Description

A short description for security scheme.

Key

Key used to refer to this security definition

Oauth2

Rest security OAuth2 definition

Authorization Url

The authorization URL to be used for this flow. This SHOULD be in the form of a URL. Required for implicit and access code flows

Description

Flow

The flow used by the OAuth2 security scheme. Valid values are implicit, password, application or accessCode.

implicit password application clientCredentials accessCode authorizationCode

Key

Refresh Url

The URL to be used for obtaining refresh tokens. This MUST be in the form of a URL.

Scopes

The available scopes for an OAuth2 security scheme

Token Url

The token URL to be used for this flow. This SHOULD be in the form of a URL. Required for password, application, and access code flows.

Open Api

To use OpenApi as contract-first with Camel Rest DSL.

Api Context Path

Whether to enable api-doc that exposes the OpenAPI specification file as a REST endpoint. This allows clients to obtain the specification from the running Camel application.

Description

Sets the description of this node

Disabled

Whether to disable all the REST services from the OpenAPI contract from the route during build time. Once an REST service has been disabled then it cannot be enabled later at runtime.

Id

Sets the id of this node

Missing Operation

Whether to fail, ignore or return a mock response for OpenAPI operations that are not mapped to a corresponding route.

Mock Include Pattern

Used for inclusive filtering of mock data from directories. The pattern is using Ant-path style pattern. Multiple patterns can be specified separated by comma.

Route Id

Sets the id of the route

Specification

Path to the OpenApi specification file.

Open Id Connect

Rest security OpenID Connect definition

Description

Key

Url

OpenId Connect URL to discover OAuth2 configuration values.

Param

To specify the rest operation parameters.

Allowable Values

Sets the parameter list of allowable values (enum).

Array Type

Sets the parameter array type. Required if data type is array. Describes the type of items in the array.

Collection Format

Sets the parameter collection format.

Data Format

Sets the parameter data format.

Data Type

Sets the parameter data type.

Default Value

Sets the parameter default value.

Description

Sets the parameter description.

Examples

Sets the parameter examples.

Name

Sets the parameter name.

Required

Sets the parameter required flag.

Type

Sets the parameter type.

Patch

Rest PATCH command

Api Docs

Whether to include or exclude this rest operation in API documentation. The default value is true.

Binding Mode

Sets the binding mode to use. This option will override what may be configured on a parent level The default value is off

Client Request Validation

Client Response Validation

Whether to check what Camel is returning as response to the client: 1) Status-code and Content-Type matches Rest DSL response messages. 2) Check whether expected headers is included according to the Rest DSL repose message headers. 3) If the response body is JSon then check whether its valid JSon. Returns 500 if validation error detected.

Consumes

To define the content type what the REST service consumes (accept as input), such as application/xml or application/json. This option will override what may be configured on a parent level

Deprecated

Marks this rest operation as deprecated in OpenApi documentation.

Description

Sets the description of this node

Disabled

Whether to disable this REST service from the route during build time. Once an REST service has been disabled then it cannot be enabled later at runtime.

Enable CORS

Whether to enable CORS headers in the HTTP response. This option will override what may be configured on a parent level The default value is false.

Enable No Content Response

Whether to return HTTP 204 with an empty body when a response contains an empty JSON object or XML root object. The default value is false.

Id

Sets the id of this node

Out Type

Sets the class name to use for binding from POJO to output for the outgoing data This option will override what may be configured on a parent level The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Param

Information about parameters for this REST operation

Path

The path mapping URIs of this REST operation such as /{id}.

Produces

To define the content type what the REST service produces (uses for output), such as application/xml or application/json This option will override what may be configured on a parent level

Response Message

Response details for this REST operation

Route Id

Sets the id of the route

Security

Security settings for this REST operation

Skip Binding On Error Code

Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do. This option will override what may be configured on a parent level

Stream Cache

Whether stream caching is enabled on this rest operation.

To

The Camel endpoint this REST service will call, such as a direct endpoint to link to an existing route that handles this REST call.

Type

Sets the class name to use for binding from input to POJO for the incoming data This option will override what may be configured on a parent level. The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Post

Rest POST command

Api Docs

Whether to include or exclude this rest operation in API documentation. The default value is true.

Binding Mode

Sets the binding mode to use. This option will override what may be configured on a parent level The default value is off

Client Request Validation

Client Response Validation

Whether to check what Camel is returning as response to the client: 1) Status-code and Content-Type matches Rest DSL response messages. 2) Check whether expected headers is included according to the Rest DSL repose message headers. 3) If the response body is JSon then check whether its valid JSon. Returns 500 if validation error detected.

Consumes

To define the content type what the REST service consumes (accept as input), such as application/xml or application/json. This option will override what may be configured on a parent level

Deprecated

Marks this rest operation as deprecated in OpenApi documentation.

Description

Sets the description of this node

Disabled

Whether to disable this REST service from the route during build time. Once an REST service has been disabled then it cannot be enabled later at runtime.

Enable CORS

Whether to enable CORS headers in the HTTP response. This option will override what may be configured on a parent level The default value is false.

Enable No Content Response

Whether to return HTTP 204 with an empty body when a response contains an empty JSON object or XML root object. The default value is false.

Id

Sets the id of this node

Out Type

Sets the class name to use for binding from POJO to output for the outgoing data This option will override what may be configured on a parent level The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Param

Information about parameters for this REST operation

Path

The path mapping URIs of this REST operation such as /{id}.

Produces

To define the content type what the REST service produces (uses for output), such as application/xml or application/json This option will override what may be configured on a parent level

Response Message

Response details for this REST operation

Route Id

Sets the id of the route

Security

Security settings for this REST operation

Skip Binding On Error Code

Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do. This option will override what may be configured on a parent level

Stream Cache

Whether stream caching is enabled on this rest operation.

To

The Camel endpoint this REST service will call, such as a direct endpoint to link to an existing route that handles this REST call.

Type

Sets the class name to use for binding from input to POJO for the incoming data This option will override what may be configured on a parent level. The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Put

Rest PUT command

Api Docs

Whether to include or exclude this rest operation in API documentation. The default value is true.

Binding Mode

Sets the binding mode to use. This option will override what may be configured on a parent level The default value is off

Client Request Validation

Client Response Validation

Whether to check what Camel is returning as response to the client: 1) Status-code and Content-Type matches Rest DSL response messages. 2) Check whether expected headers is included according to the Rest DSL repose message headers. 3) If the response body is JSon then check whether its valid JSon. Returns 500 if validation error detected.

Consumes

To define the content type what the REST service consumes (accept as input), such as application/xml or application/json. This option will override what may be configured on a parent level

Deprecated

Marks this rest operation as deprecated in OpenApi documentation.

Description

Sets the description of this node

Disabled

Whether to disable this REST service from the route during build time. Once an REST service has been disabled then it cannot be enabled later at runtime.

Enable CORS

Whether to enable CORS headers in the HTTP response. This option will override what may be configured on a parent level The default value is false.

Enable No Content Response

Whether to return HTTP 204 with an empty body when a response contains an empty JSON object or XML root object. The default value is false.

Id

Sets the id of this node

Out Type

Sets the class name to use for binding from POJO to output for the outgoing data This option will override what may be configured on a parent level The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Param

Information about parameters for this REST operation

Path

The path mapping URIs of this REST operation such as /{id}.

Produces

To define the content type what the REST service produces (uses for output), such as application/xml or application/json This option will override what may be configured on a parent level

Response Message

Response details for this REST operation

Route Id

Sets the id of the route

Security

Security settings for this REST operation

Skip Binding On Error Code

Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do. This option will override what may be configured on a parent level

Stream Cache

Whether stream caching is enabled on this rest operation.

To

The Camel endpoint this REST service will call, such as a direct endpoint to link to an existing route that handles this REST call.

Type

Sets the class name to use for binding from input to POJO for the incoming data This option will override what may be configured on a parent level. The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Response Header

To specify the rest operation response headers.

Allowable Values

Sets the parameter list of allowable values.

Array Type

Sets the parameter array type. Required if data type is array. Describes the type of items in the array.

Collection Format

Sets the parameter collection format.

Data Format

Sets the parameter data format.

Data Type

Sets the header data type.

Description

Description of the parameter.

Example

Sets the example

Name

Name of the parameter. This option is mandatory.

Response Message

To specify the rest operation response messages.

Code

The response code such as a HTTP status code

Content Type

The response content-type such as application/json.

Examples

Examples of response messages

Header

Adds a response header

Message

The response message (description)

Response Model

The response model

Rest Binding

To configure rest binding

Binding Mode

Sets the binding mode to use. The default value is off

Client Request Validation

Client Response Validation

Whether to check what Camel is returning as response to the client: 1) Status-code and Content-Type matches Rest DSL response messages. 2) Check whether expected headers is included according to the Rest DSL repose message headers. 3) If the response body is JSon then check whether its valid JSon. Returns 500 if validation error detected.

Component

Sets the component name that this definition will apply to

Consumes

To define the content type what the REST service consumes (accept as input), such as application/xml or application/json

Description

Sets the description of this node

Enable CORS

Whether to enable CORS headers in the HTTP response. The default value is false.

Enable No Content Response

Whether to return HTTP 204 with an empty body when a response contains an empty JSON object or XML root object. The default value is false.

Id

Sets the id of this node

Out Type

Sets the class name to use for binding from POJO to output for the outgoing data The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Produces

To define the content type what the REST service produces (uses for output), such as application/xml or application/json

Skip Binding On Error Code

Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do.

Type

Sets the class name to use for binding from input to POJO for the incoming data The name of the class of the input data. Append a to the end of the name if you want the input to be an array type.

Rest Configuration

To configure rest

Api Component

The name of the Camel component to use as the REST API. If no API Component has been explicit configured, then Camel will lookup if there is a Camel component responsible for servicing and generating the REST API documentation, or if a org.apache.camel.spi.RestApiProcessorFactory is registered in the registry. If either one is found, then that is being used.

Api Context Path

Sets a leading context-path the REST API will be using. This can be used when using components such as camel-servlet where the deployed web application is deployed using a context-path.

Api Context Route Id

Sets the route id to use for the route that services the REST API. The route will by default use an auto assigned route id.

Api Host

To use a specific hostname for the API documentation (such as swagger or openapi) This can be used to override the generated host with this configured hostname

Api Property

Allows to configure as many additional properties for the api documentation. For example set property api.title to my cool stuff

Api Vendor Extension

Whether vendor extension is enabled in the Rest APIs. If enabled then Camel will include additional information as vendor extension (eg keys starting with x-) such as route ids, class names etc. Not all 3rd party API gateways and tools supports vendor-extensions when importing your API docs.

Binding Mode

Sets the binding mode to use. The default value is off

Binding Package Scan

Package name to use as base (offset) for classpath scanning of POJO classes are located when using binding mode is enabled for JSon or XML. Multiple package names can be separated by comma.

Client Request Validation

Client Response Validation

Whether to check what Camel is returning as response to the client: 1) Status-code and Content-Type matches Rest DSL response messages. 2) Check whether expected headers is included according to the Rest DSL repose message headers. 3) If the response body is JSon then check whether its valid JSon. Returns 500 if validation error detected.

Component

The Camel Rest component to use for the REST transport (consumer), such as netty-http, jetty, servlet, undertow. If no component has been explicit configured, then Camel will lookup if there is a Camel component that integrates with the Rest DSL, or if a org.apache.camel.spi.RestConsumerFactory is registered in the registry. If either one is found, then that is being used.

platform-http servlet jetty undertow netty-http coap

Component Property

Allows to configure as many additional properties for the rest component in use.

Consumer Property

Allows to configure as many additional properties for the rest consumer in use.

Context Path

Sets a leading context-path the REST services will be using. This can be used when using components such as camel-servlet where the deployed web application is deployed using a context-path. Or for components such as camel-jetty or camel-netty-http that includes a HTTP server.

Cors Headers

Allows to configure custom CORS headers.

Data Format Property

Allows to configure as many additional properties for the data formats in use. For example set property prettyPrint to true to have json outputted in pretty mode. The properties can be prefixed to denote the option is only for either JSON or XML and for either the IN or the OUT. The prefixes are: json.in. json.out. xml.in. xml.out. For example a key with value xml.out.mustBeJAXBElement is only for the XML data format for the outgoing. A key without a prefix is a common key for all situations.

Enable CORS

Whether to enable CORS headers in the HTTP response. The default value is false.

Enable No Content Response

Whether to return HTTP 204 with an empty body when a response contains an empty JSON object or XML root object. The default value is false.

Endpoint Property

Allows to configure as many additional properties for the rest endpoint in use.

Host

The hostname to use for exposing the REST service.

Host Name Resolver

If no hostname has been explicit configured, then this resolver is used to compute the hostname the REST service will be using.

Inline Routes

Inline routes in rest-dsl which are linked using direct endpoints. Each service in Rest DSL is an individual route, meaning that you would have at least two routes per service (rest-dsl, and the route linked from rest-dsl). By inlining (default) allows Camel to optimize and inline this as a single route, however this requires to use direct endpoints, which must be unique per service. If a route is not using direct endpoint then the rest-dsl is not inlined, and will become an individual route. This option is default true.

Json Data Format

Name of specific json data format to use. By default jackson will be used. Important: This option is only for setting a custom name of the data format, not to refer to an existing data format instance.

Port

The port number to use for exposing the REST service. Notice if you use servlet component then the port number configured here does not apply, as the port number in use is the actual port number the servlet component is using. eg if using Apache Tomcat its the tomcat http port, if using Apache Karaf its the HTTP service in Karaf that uses port 8181 by default etc. Though in those situations setting the port number here, allows tooling and JMX to know the port number, so its recommended to set the port number to the number that the servlet engine uses.

Producer Api Doc

Sets the location of the api document the REST producer will use to validate the REST uri and query parameters are valid accordingly to the api document. The location of the api document is loaded from classpath by default, but you can use file: or http: to refer to resources to load from file or http url.

Producer Component

Sets the name of the Camel component to use as the REST producer

Scheme

The scheme to use for exposing the REST service. Usually http or https is supported. The default value is http

Skip Binding On Error Code

Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do.

Use XForward Headers

Whether to use X-Forward headers to set host etc. for OpenApi. This may be needed in special cases involving reverse-proxy and networking going from HTTP to HTTPS etc. Then the proxy can send X-Forward headers (X-Forwarded-Proto) that influences the host names in the OpenAPI schema that camel-openapi-java generates from Rest DSL routes.

Validation Levels

Allows to configure custom validation levels when using camel-openapi-validator with client request/response validator.

Xml Data Format

Name of specific XML data format to use. By default jaxb will be used. Important: This option is only for setting a custom name of the data format, not to refer to an existing data format instance.

Rest

Defines a rest service using the rest-dsl

Api Docs

Whether to include or exclude this rest operation in API documentation. This option will override what may be configured on a parent level. The default value is true.

Binding Mode

Sets the binding mode to use. This option will override what may be configured on a parent level The default value is auto

Client Request Validation

Client Response Validation

Whether to check what Camel is returning as response to the client: 1) Status-code and Content-Type matches Rest DSL response messages. 2) Check whether expected headers is included according to the Rest DSL repose message headers. 3) If the response body is JSon then check whether its valid JSon. Returns 500 if validation error detected.

Consumes

To define the content type what the REST service consumes (accept as input), such as application/xml or application/json. This option will override what may be configured on a parent level

Description

Sets the description of this node

Disabled

Whether to disable this REST service from the route during build time. Once an REST service has been disabled then it cannot be enabled later at runtime.

Enable CORS

Whether to enable CORS headers in the HTTP response. This option will override what may be configured on a parent level The default value is false.

Enable No Content Response

Whether to return HTTP 204 with an empty body when a response contains an empty JSON object or XML root object. The default value is false.

Id

Sets the id of this node

Open Api

To use an existing OpenAPI specification as contract-first for Camel Rest DSL.

Path

Path of the rest service, such as /foo

Produces

To define the content type what the REST service produces (uses for output), such as application/xml or application/json This option will override what may be configured on a parent level

Security Definitions

Sets the security definitions such as Basic, OAuth2 etc.

Security Requirements

Sets the security requirement(s) for all endpoints.

Skip Binding On Error Code

Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do. This option will override what may be configured on a parent level

Tag

To configure a special tag for the operations within this rest definition.

Rest Property

A key value pair

Key

Property key

Value

Property value

Rest Security Definitions

To configure rest security definitions.

Rests

A series of rest services defined using the rest-dsl

Description

Sets the description of this node

Id

Sets the id of this node

Rest Security

Rest security definition

Key

Key used to refer to this security definition

Scopes

The scopes to allow (separate multiple scopes by comma)

LangChain4J Tokenizer with character splitter

Camel AI: Tokenizer for splitting by character.

Id

The id of this node

Max Overlap

Sets the maximum number of tokens that can overlap in each segment

Max Tokens

Sets the maximum number of tokens on each segment

Model Name

Sets the model name

Tokenizer Type

Sets the tokenizer type

LangChain4J Tokenizer with line splitter

Camel AI: Tokenizer for splitting line by line.

Id

The id of this node

Max Overlap

Max Tokens

Model Name

Sets the model name

Tokenizer Type

Sets the tokenizer type

LangChain4J Tokenizer with paragraph splitter

Camel AI: Tokenizer for splitting by paragraphs.

Id

The id of this node

Max Overlap

Max Tokens

Model Name

Sets the model name

Tokenizer Type

Sets the tokenizer type

LangChain4J Tokenizer with sentence splitter

Camel AI: Tokenizer for splitting by sentences.

Id

The id of this node

Max Overlap

Max Tokens

Model Name

Sets the model name

Tokenizer Type

Sets the tokenizer type

LangChain4J Tokenizer with word splitter

Camel AI: Tokenizer for splitting by word.

Id

The id of this node

Max Overlap

Max Tokens

Model Name

Sets the model name

Tokenizer Type

Sets the tokenizer type

Custom Transformer

To use a custom transformer on a route level.

Class Name

Set a class name of the Transformer

From Type

Set the 'from' data type name. If you specify 'xml:XYZ', the transformer will be picked up if source type is 'xml:XYZ'. If you specify just 'xml', the transformer matches with all of 'xml' source type like 'xml:ABC' or 'xml:DEF'.

Name

Set the transformer name under which the transformer gets referenced when specifying the input/output data type on routes. If you specify a transformer name that matches a data type scheme like 'csv' the transformer will be picked up for all of 'csv:' from/to Java transformation. Note that the scheme matching is performed only when no exactly matched transformer exists.

Ref

Set a bean reference of the Transformer

Scheme

Set a scheme name supported by the transformer. If you specify 'csv', the transformer will be picked up for all of 'csv' from/to Java transformation. Note that the scheme matching is performed only when no exactly matched transformer exists.

To Type

Set the 'to' data type name. If you specify 'json:XYZ', the transformer will be picked up if destination type is 'json:XYZ'. If you specify just 'json', the transformer matches with all of 'json' destination type like 'json:ABC' or 'json:DEF'.

Data Format Transformer

Represents a org.apache.camel.processor.transformer.DataFormatTransformer which leverages org.apache.camel.spi.DataFormat to perform transformation. One of the DataFormat 'ref' or DataFormat 'type' needs to be specified.

From Type

Name

Scheme

To Type

Endpoint Transformer

To use a Camel endpoint to perform transformation on the route level.

From Type

Name

Ref

Set the reference of the Endpoint.

Scheme

To Type

Uri

Set the URI of the Endpoint.

Load Transformer

To load custom transformers from classpath scanning to be used for route level transformations.

Defaults

Enable loading of default transformers.

From Type

Name

Package Scan

Set the classpath location to scan for annotated transformers.

Scheme

To Type

Transformations

To configure transformers.

Custom Validator

To use a custom validator on the route level.

Class Name

Set a class name of the Validator

Ref

Set a bean reference of the Validator

Type

Set the data type name. If you specify 'xml:XYZ', the validator will be picked up if message type is 'xml:XYZ'. If you specify just 'xml', the validator matches with all of 'xml' message type like 'xml:ABC' or 'xml:DEF'.

Endpoint Validator

To use a Camel endpoint to perform validation on the route level.

Ref

Set the reference of the Endpoint.

Type

Uri

Set the URI of the Endpoint.

Predicate Validator

To use a predicate to perform validation on the route level.

Expression

Type

Validations

To configure validators.

Provide a JSON object that satisfies the schema "camelYamlDsl". Here are the required top‑level fields: none (all optional). Return only the valid JSON object.