This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 2d395bd  CAMEL-17701: camel-core-model - Add labels to EIP options
2d395bd is described below

commit 2d395bd8a82535cdf8caa914a47a03d254de0846
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Sun Feb 27 17:06:12 2022 +0100

    CAMEL-17701: camel-core-model - Add labels to EIP options
---
 .../org/apache/camel/catalog/models/aggregate.json | 30 +++++++++++-----------
 .../org/apache/camel/catalog/models/bean.json      |  3 +--
 .../camel/catalog/models/circuitBreaker.json       |  2 +-
 .../apache/camel/catalog/models/contextScan.json   |  2 +-
 .../apache/camel/catalog/models/convertBodyTo.json |  4 +--
 .../org/apache/camel/catalog/models/delay.json     |  4 +--
 .../apache/camel/catalog/models/description.json   |  2 +-
 .../apache/camel/catalog/models/dynamicRouter.json |  4 +--
 .../apache/camel/catalog/models/templateBean.json  |  4 +--
 .../camel/catalog/models/templatedRouteBean.json   |  4 +--
 .../apache/camel/catalog/schemas/camel-spring.xsd  | 23 ++++++-----------
 .../org/apache/camel/model/aggregate.json          | 30 +++++++++++-----------
 .../resources/org/apache/camel/model/bean.json     |  3 +--
 .../org/apache/camel/model/circuitBreaker.json     |  2 +-
 .../org/apache/camel/model/contextScan.json        |  2 +-
 .../org/apache/camel/model/convertBodyTo.json      |  4 +--
 .../resources/org/apache/camel/model/delay.json    |  4 +--
 .../org/apache/camel/model/description.json        |  2 +-
 .../org/apache/camel/model/dynamicRouter.json      |  4 +--
 .../org/apache/camel/model/templateBean.json       |  4 +--
 .../org/apache/camel/model/templatedRouteBean.json |  4 +--
 .../apache/camel/model/AggregateDefinition.java    | 25 ++++++++++--------
 .../org/apache/camel/model/BeanDefinition.java     | 16 +++++-------
 .../apache/camel/model/BeanFactoryDefinition.java  | 14 ++++++----
 .../org/apache/camel/model/CatchDefinition.java    |  6 +++--
 .../org/apache/camel/model/ChoiceDefinition.java   |  5 ++--
 .../camel/model/CircuitBreakerDefinition.java      |  1 +
 .../apache/camel/model/ContextScanDefinition.java  |  3 ++-
 .../apache/camel/model/ConvertBodyDefinition.java  |  9 ++++---
 .../apache/camel/model/DataFormatDefinition.java   |  1 +
 .../camel/model/DataFormatDefinitionAware.java     |  1 +
 .../org/apache/camel/model/DelayDefinition.java    | 10 ++++----
 .../apache/camel/model/DescriptionDefinition.java  |  5 ++++
 .../camel/model/DynamicRouterDefinition.java       |  4 +--
 .../camel/model/OptionalIdentifiedDefinition.java  |  1 +
 .../java/org/apache/camel/xml/in/ModelParser.java  |  1 -
 .../dsl/yaml/deserializers/ModelDeserializers.java |  8 +-----
 .../src/generated/resources/camel-yaml-dsl.json    |  3 ---
 .../src/generated/resources/camelYamlDsl.json      |  3 ---
 39 files changed, 129 insertions(+), 128 deletions(-)

diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/aggregate.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/aggregate.json
index d5c2049..6706227 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/aggregate.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/aggregate.json
@@ -13,10 +13,10 @@
   },
   "properties": {
     "correlationExpression": { "kind": "expression", "displayName": 
"Correlation Expression", "required": true, "type": "object", "javaType": 
"org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": false, "desc [...]
-    "completionPredicate": { "kind": "expression", "displayName": "Completion 
Predicate", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": false, "asPredi [...]
-    "completionTimeoutExpression": { "kind": "expression", "displayName": 
"Completion Timeout Expression", "required": false, "type": "object", 
"javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ 
"constant", "csimple", "datasonnet", "exchangeProperty", "groovy", "header", 
"hl7terser", "joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", 
"simple", "spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": 
false, "autowired": false, "secret" [...]
-    "completionSizeExpression": { "kind": "expression", "displayName": 
"Completion Size Expression", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": fals [...]
-    "optimisticLockRetryPolicy": { "kind": "element", "displayName": 
"Optimistic Lock Retry Policy", "required": false, "type": "object", 
"javaType": "org.apache.camel.model.OptimisticLockRetryPolicyDefinition", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"Allows to configure retry settings when using optimistic locking." },
+    "completionPredicate": { "kind": "expression", "displayName": "Completion 
Predicate", "label": "advanced", "required": false, "type": "object", 
"javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ 
"constant", "csimple", "datasonnet", "exchangeProperty", "groovy", "header", 
"hl7terser", "joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", 
"simple", "spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": 
false, "autowired": false, "sec [...]
+    "completionTimeoutExpression": { "kind": "expression", "displayName": 
"Completion Timeout Expression", "label": "advanced", "required": false, 
"type": "object", "javaType": 
"org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowi [...]
+    "completionSizeExpression": { "kind": "expression", "displayName": 
"Completion Size Expression", "label": "advanced", "required": false, "type": 
"object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", 
"oneOf": [ "constant", "csimple", "datasonnet", "exchangeProperty", "groovy", 
"header", "hl7terser", "joor", "jsonpath", "language", "method", "mvel", 
"ognl", "ref", "simple", "spel", "tokenize", "xpath", "xquery", "xtokenize" ], 
"deprecated": false, "autowired":  [...]
+    "optimisticLockRetryPolicy": { "kind": "element", "displayName": 
"Optimistic Lock Retry Policy", "label": "advanced", "required": false, "type": 
"object", "javaType": 
"org.apache.camel.model.OptimisticLockRetryPolicyDefinition", "deprecated": 
false, "autowired": false, "secret": false, "description": "Allows to configure 
retry settings when using optimistic locking." },
     "parallelProcessing": { "kind": "attribute", "displayName": "Parallel 
Processing", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "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 cr [...]
     "optimisticLocking": { "kind": "attribute", "displayName": "Optimistic 
Locking", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Turns on using optimistic locking, which 
requires the aggregationRepository being used, is supporting this by 
implementing org.apache.camel.spi.OptimisticLockingAggregationRepository ." },
     "executorService": { "kind": "attribute", "displayName": "Executor 
Service", "label": "advanced", "required": false, "type": "object", "javaType": 
"java.util.concurrent.ExecutorService", "deprecated": false, "autowired": 
false, "secret": false, "description": "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." },
@@ -24,21 +24,21 @@
     "aggregateController": { "kind": "attribute", "displayName": "Aggregate 
Controller", "label": "advanced", "required": false, "type": "object", 
"javaType": "org.apache.camel.processor.aggregate.AggregateController", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a org.apache.camel.processor.aggregate.AggregateController to allow 
external sources to control this aggregator." },
     "aggregationRepository": { "kind": "attribute", "displayName": 
"Aggregation Repository", "required": false, "type": "object", "javaType": 
"org.apache.camel.spi.AggregationRepository", "deprecated": false, "autowired": 
false, "secret": false, "description": "The AggregationRepository to use. Sets 
the custom aggregate repository to use. Will by default use 
org.apache.camel.processor.aggregate.MemoryAggregationRepository" },
     "aggregationStrategy": { "kind": "attribute", "displayName": "Aggregation 
Strategy", "required": false, "type": "object", "javaType": 
"org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": 
false, "secret": false, "description": "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  [...]
-    "aggregationStrategyMethodName": { "kind": "attribute", "displayName": 
"Aggregation Strategy Method Name", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "description": "This option can be used to explicit declare 
the method name to use, when using beans as the AggregationStrategy." },
-    "aggregationStrategyMethodAllowNull": { "kind": "attribute", 
"displayName": "Aggregation Strategy Method Allow Null", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": "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 usi [...]
+    "aggregationStrategyMethodName": { "kind": "attribute", "displayName": 
"Aggregation Strategy Method Name", "label": "advanced", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "This option can be used to 
explicit declare the method name to use, when using beans as the 
AggregationStrategy." },
+    "aggregationStrategyMethodAllowNull": { "kind": "attribute", 
"displayName": "Aggregation Strategy Method Allow Null", "label": "advanced", 
"required": false, "type": "boolean", "javaType": "java.lang.Boolean", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 
false, "description": "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 a [...]
     "completionSize": { "kind": "attribute", "displayName": "Completion Size", 
"required": false, "type": "integer", "javaType": "java.lang.Integer", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"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 v [...]
     "completionInterval": { "kind": "attribute", "displayName": "Completion 
Interval", "required": false, "type": "duration", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "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." },
     "completionTimeout": { "kind": "attribute", "displayName": "Completion 
Timeout", "required": false, "type": "duration", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "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 [...]
-    "completionTimeoutCheckerInterval": { "kind": "attribute", "displayName": 
"Completion Timeout Checker Interval", "required": false, "type": "duration", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": "1000", "description": "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 i [...]
-    "completionFromBatchConsumer": { "kind": "attribute", "displayName": 
"Completion From Batch Consumer", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "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  [...]
-    "completionOnNewCorrelationGroup": { "kind": "attribute", "displayName": 
"Completion On New Correlation Group", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "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 [...]
+    "completionTimeoutCheckerInterval": { "kind": "attribute", "displayName": 
"Completion Timeout Checker Interval", "label": "advanced", "required": false, 
"type": "duration", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": "1000", "description": 
"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 appr [...]
+    "completionFromBatchConsumer": { "kind": "attribute", "displayName": 
"Completion From Batch Consumer", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"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 c [...]
+    "completionOnNewCorrelationGroup": { "kind": "attribute", "displayName": 
"Completion On New Correlation Group", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"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 or [...]
     "eagerCheckCompletion": { "kind": "attribute", "displayName": "Eager Check 
Completion", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "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." },
-    "ignoreInvalidCorrelationKeys": { "kind": "attribute", "displayName": 
"Ignore Invalid Correlation Keys", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "If a correlation key 
cannot be successfully evaluated it will be ignored by logging a DEBUG and then 
just ignore the incoming Exchange." },
-    "closeCorrelationKeyOnCompletion": { "kind": "attribute", "displayName": 
"Close Correlation Key On Completion", "required": false, "type": "integer", 
"javaType": "java.lang.Integer", "deprecated": false, "autowired": false, 
"secret": false, "description": "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." },
-    "discardOnCompletionTimeout": { "kind": "attribute", "displayName": 
"Discard On Completion Timeout", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "Discards the aggregated 
message on completion timeout. This means on timeout the aggregated message is 
dropped and not sent out of the aggregator." },
-    "discardOnAggregationFailure": { "kind": "attribute", "displayName": 
"Discard On Aggregation Failure", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "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 [...]
-    "forceCompletionOnStop": { "kind": "attribute", "displayName": "Force 
Completion On Stop", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Indicates to complete all current 
aggregated exchanges when the context is stopped" },
-    "completeAllOnStop": { "kind": "attribute", "displayName": "Complete All 
On Stop", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "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 t [...]
+    "ignoreInvalidCorrelationKeys": { "kind": "attribute", "displayName": 
"Ignore Invalid Correlation Keys", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": "If 
a correlation key cannot be successfully evaluated it will be ignored by 
logging a DEBUG and then just ignore the incoming Exchange." },
+    "closeCorrelationKeyOnCompletion": { "kind": "attribute", "displayName": 
"Close Correlation Key On Completion", "label": "advanced", "required": false, 
"type": "integer", "javaType": "java.lang.Integer", "deprecated": false, 
"autowired": false, "secret": false, "description": "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." },
+    "discardOnCompletionTimeout": { "kind": "attribute", "displayName": 
"Discard On Completion Timeout", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Discards the aggregated message on completion timeout. This means on timeout 
the aggregated message is dropped and not sent out of the aggregator." },
+    "discardOnAggregationFailure": { "kind": "attribute", "displayName": 
"Discard On Aggregation Failure", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"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.  [...]
+    "forceCompletionOnStop": { "kind": "attribute", "displayName": "Force 
Completion On Stop", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "Indicates to complete 
all current aggregated exchanges when the context is stopped" },
+    "completeAllOnStop": { "kind": "attribute", "displayName": "Complete All 
On Stop", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "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 reposi [...]
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/bean.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/bean.json
index 7a258bf..a6af551 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/bean.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/bean.json
@@ -15,8 +15,7 @@
     "ref": { "kind": "attribute", "displayName": "Ref", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets a reference to an 
exiting bean to use, which is looked up from the registry" },
     "method": { "kind": "attribute", "displayName": "Method", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the method name on 
the bean to use" },
     "beanType": { "kind": "attribute", "displayName": "Bean Type", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the class name (fully 
qualified) of the bean to use" },
-    "cache": { "kind": "attribute", "displayName": "Cache", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": true, 
"autowired": false, "secret": false, "defaultValue": true, "description": "Use 
singleton option instead" },
-    "scope": { "kind": "attribute", "displayName": "Scope", "required": false, 
"type": "enum", "javaType": "java.lang.String", "enum": [ "Singleton", 
"Request", "Prototype" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "Singleton", "description": "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  [...]
+    "scope": { "kind": "attribute", "displayName": "Scope", "label": 
"advanced", "required": false, "type": "enum", "javaType": "java.lang.String", 
"enum": [ "Singleton", "Request", "Prototype" ], "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": "Singleton", 
"description": "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 th [...]
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/circuitBreaker.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/circuitBreaker.json
index be6a9df..5405474 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/circuitBreaker.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/circuitBreaker.json
@@ -12,7 +12,7 @@
     "output": false
   },
   "properties": {
-    "hystrixConfiguration": { "kind": "element", "displayName": "Hystrix 
Configuration", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.HystrixConfigurationDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Configures the circuit 
breaker to use Hystrix with the given configuration." },
+    "hystrixConfiguration": { "kind": "element", "displayName": "Hystrix 
Configuration", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.HystrixConfigurationDefinition", "deprecated": true, 
"autowired": false, "secret": false, "description": "Configures the circuit 
breaker to use Hystrix with the given configuration." },
     "resilience4jConfiguration": { "kind": "element", "displayName": 
"Resilience4j Configuration", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.Resilience4jConfigurationDefinition", "deprecated": 
false, "autowired": false, "secret": false, "description": "Configures the 
circuit breaker to use Resilience4j with the given configuration." },
     "faultToleranceConfiguration": { "kind": "element", "displayName": "Fault 
Tolerance Configuration", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.FaultToleranceConfigurationDefinition", "deprecated": 
false, "autowired": false, "secret": false, "description": "Configures the 
circuit breaker to use MicroProfile Fault Tolerance with the given 
configuration." },
     "configuration": { "kind": "attribute", "displayName": "Configuration", 
"required": false, "type": "string", "javaType": "java.lang.String", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"Refers to a circuit breaker configuration (such as hystrix, resillience4j, or 
microprofile-fault-tolerance) to use for configuring the circuit breaker EIP." 
},
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/contextScan.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/contextScan.json
index f6b9285..2da8516 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/contextScan.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/contextScan.json
@@ -12,7 +12,7 @@
     "output": false
   },
   "properties": {
-    "includeNonSingletons": { "kind": "attribute", "displayName": "Include Non 
Singletons", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Whether to include non-singleton beans 
(prototypes) By default only singleton beans is included in the context scan" },
+    "includeNonSingletons": { "kind": "attribute", "displayName": "Include Non 
Singletons", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "Whether to include 
non-singleton beans (prototypes) By default only singleton beans is included in 
the context scan" },
     "excludes": { "kind": "element", "displayName": "Excludes", "required": 
false, "type": "array", "javaType": "java.util.List<java.lang.String>", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"Exclude finding route builder from these java package names." },
     "includes": { "kind": "element", "displayName": "Includes", "required": 
false, "type": "array", "javaType": "java.util.List<java.lang.String>", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"Include finding route builder from these java package names." }
   }
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/convertBodyTo.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/convertBodyTo.json
index 33c5487..373de07 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/convertBodyTo.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/convertBodyTo.json
@@ -13,8 +13,8 @@
   },
   "properties": {
     "type": { "kind": "attribute", "displayName": "Type", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "The java type to convert 
to" },
-    "mandatory": { "kind": "attribute", "displayName": "Mandatory", 
"required": false, "type": "boolean", "javaType": "java.lang.Boolean", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": true, 
"description": "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." },
-    "charset": { "kind": "attribute", "displayName": "Charset", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a specific charset 
when converting" },
+    "mandatory": { "kind": "attribute", "displayName": "Mandatory", "label": 
"advanced", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": true, "description": "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." },
+    "charset": { "kind": "attribute", "displayName": "Charset", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a specific charset when converting" },
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/delay.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/delay.json
index df15c49..fcec0f1 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/delay.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/delay.json
@@ -13,9 +13,9 @@
   },
   "properties": {
     "expression": { "kind": "expression", "displayName": "Expression", 
"required": true, "type": "object", "javaType": 
"org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": false, "description": "Expression to [...]
+    "asyncDelayed": { "kind": "attribute", "displayName": "Async Delayed", 
"label": "advanced", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": true, "description": "Enables asynchronous delay which means 
the thread will not block while delaying." },
+    "callerRunsWhenRejected": { "kind": "attribute", "displayName": "Caller 
Runs When Rejected", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": true, "description": "Whether or not the 
caller should run the task when it was rejected by the thread pool. Is by 
default true" },
     "executorService": { "kind": "attribute", "displayName": "Executor 
Service", "label": "advanced", "required": false, "type": "object", "javaType": 
"java.util.concurrent.ExecutorService", "deprecated": false, "autowired": 
false, "secret": false, "description": "To use a custom Thread Pool if 
asyncDelay has been enabled." },
-    "asyncDelayed": { "kind": "attribute", "displayName": "Async Delayed", 
"required": false, "type": "boolean", "javaType": "java.lang.Boolean", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": true, 
"description": "Enables asynchronous delay which means the thread will not 
block while delaying." },
-    "callerRunsWhenRejected": { "kind": "attribute", "displayName": "Caller 
Runs When Rejected", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": true, "description": "Whether or not the caller should run the 
task when it was rejected by the thread pool. Is by default true" },
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/description.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/description.json
index 59dde0b..a540775 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/description.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/description.json
@@ -12,7 +12,7 @@
     "output": false
   },
   "properties": {
-    "lang": { "kind": "attribute", "displayName": "Lang", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Language, such as en for 
english." },
+    "lang": { "kind": "attribute", "displayName": "Lang", "label": "advanced", 
"required": false, "type": "string", "javaType": "java.lang.String", 
"deprecated": true, "autowired": false, "secret": false, "description": 
"Language, such as en for english." },
     "text": { "kind": "value", "displayName": "Text", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "The description as human 
readable text" }
   }
 }
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/dynamicRouter.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/dynamicRouter.json
index cadccf8..e807b22 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/dynamicRouter.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/dynamicRouter.json
@@ -14,8 +14,8 @@
   "properties": {
     "expression": { "kind": "expression", "displayName": "Expression", 
"required": true, "type": "object", "javaType": 
"org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": false, "description": "Expression to [...]
     "uriDelimiter": { "kind": "attribute", "displayName": "Uri Delimiter", 
"required": false, "type": "string", "javaType": "java.lang.String", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", 
"description": "Sets the uri delimiter to use" },
-    "ignoreInvalidEndpoints": { "kind": "attribute", "displayName": "Ignore 
Invalid Endpoints", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Ignore the invalidate endpoint exception 
when try to create a producer with that endpoint" },
-    "cacheSize": { "kind": "attribute", "displayName": "Cache Size", 
"required": false, "type": "integer", "javaType": "java.lang.Integer", 
"deprecated": false, "autowired": false, "secret": false, "description": "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 end [...]
+    "ignoreInvalidEndpoints": { "kind": "attribute", "displayName": "Ignore 
Invalid Endpoints", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "Ignore the invalidate 
endpoint exception when try to create a producer with that endpoint" },
+    "cacheSize": { "kind": "attribute", "displayName": "Cache Size", "label": 
"advanced", "required": false, "type": "integer", "javaType": 
"java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, 
"description": "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 [...]
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/templateBean.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/templateBean.json
index 319a14d..7d0f9a8 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/templateBean.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/templateBean.json
@@ -14,8 +14,8 @@
   "properties": {
     "name": { "kind": "attribute", "displayName": "Name", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Bean name" },
     "type": { "kind": "attribute", "displayName": "Type", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "What type to use for 
creating the bean. Can be one of: 
#class,#type,bean,groovy,joor,language,mvel,ognl. #class or #type then the bean 
is created via the fully qualified classname, such as #class:com.foo.MyBean The 
others are scripting languages that gives more power to create the bean with  
[...]
-    "beanType": { "kind": "attribute", "displayName": "Bean Type", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "To set the type (fully 
qualified class name) of the returned bean created by the script. Knowing the 
type of the bean can be needed when dependency injection by type is in use, or 
when looking in registry via class type." },
+    "beanType": { "kind": "attribute", "displayName": "Bean Type", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To set the type (fully qualified class name) of the returned 
bean created by the script. Knowing the type of the bean can be needed when 
dependency injection by type is in use, or when looking in registry via class 
type." },
     "property": { "kind": "element", "displayName": "Property", "required": 
false, "type": "array", "javaType": 
"java.util.List<org.apache.camel.model.PropertyDefinition>", "deprecated": 
false, "autowired": false, "secret": false, "description": "Optional properties 
to set on the created local bean" },
-    "script": { "kind": "element", "displayName": "Script", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "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": { "kind": "element", "displayName": "Script", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "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." }
   }
 }
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/templatedRouteBean.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/templatedRouteBean.json
index 45cdf31..2e012cc 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/templatedRouteBean.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/templatedRouteBean.json
@@ -14,8 +14,8 @@
   "properties": {
     "name": { "kind": "attribute", "displayName": "Name", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Bean name" },
     "type": { "kind": "attribute", "displayName": "Type", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "What type to use for 
creating the bean. Can be one of: 
#class,#type,bean,groovy,joor,language,mvel,ognl. #class or #type then the bean 
is created via the fully qualified classname, such as #class:com.foo.MyBean The 
others are scripting languages that gives more power to create the bean with  
[...]
-    "beanType": { "kind": "attribute", "displayName": "Bean Type", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "To set the type (fully 
qualified class name) of the returned bean created by the script. Knowing the 
type of the bean can be needed when dependency injection by type is in use, or 
when looking in registry via class type." },
+    "beanType": { "kind": "attribute", "displayName": "Bean Type", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To set the type (fully qualified class name) of the returned 
bean created by the script. Knowing the type of the bean can be needed when 
dependency injection by type is in use, or when looking in registry via class 
type." },
     "property": { "kind": "element", "displayName": "Property", "required": 
false, "type": "array", "javaType": 
"java.util.List<org.apache.camel.model.PropertyDefinition>", "deprecated": 
false, "autowired": false, "secret": false, "description": "Optional properties 
to set on the created local bean" },
-    "script": { "kind": "element", "displayName": "Script", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "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": { "kind": "element", "displayName": "Script", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "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." }
   }
 }
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
index 45a0d85..44df95f 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
@@ -2939,7 +2939,7 @@ Sets the id of this node.
         <xs:attribute name="lang" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
-Language, such as en for english.
+Deprecated: Language, such as en for english.
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
@@ -3408,13 +3408,6 @@ Sets the class name (fully qualified) of the bean to use.
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
-        <xs:attribute name="cache" type="xs:string">
-          <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
-Deprecated: Use singleton option instead. Default value: true
-            ]]></xs:documentation>
-          </xs:annotation>
-        </xs:attribute>
         <xs:attribute name="scope" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
@@ -4591,13 +4584,6 @@ To use a specific charset when converting.
           <xs:element ref="tns:xpath"/>
           <xs:element ref="tns:xquery"/>
         </xs:choice>
-        <xs:attribute name="executorService" type="xs:string">
-          <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
-To use a custom Thread Pool if asyncDelay has been enabled.
-            ]]></xs:documentation>
-          </xs:annotation>
-        </xs:attribute>
         <xs:attribute name="asyncDelayed" type="xs:string">
           <xs:annotation>
             <xs:documentation xml:lang="en"><![CDATA[
@@ -4614,6 +4600,13 @@ pool. Is by default true. Default value: true
             ]]></xs:documentation>
           </xs:annotation>
         </xs:attribute>
+        <xs:attribute name="executorService" type="xs:string">
+          <xs:annotation>
+            <xs:documentation xml:lang="en"><![CDATA[
+To use a custom Thread Pool if asyncDelay has been enabled.
+            ]]></xs:documentation>
+          </xs:annotation>
+        </xs:attribute>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/aggregate.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/aggregate.json
index d5c2049..6706227 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/aggregate.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/aggregate.json
@@ -13,10 +13,10 @@
   },
   "properties": {
     "correlationExpression": { "kind": "expression", "displayName": 
"Correlation Expression", "required": true, "type": "object", "javaType": 
"org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": false, "desc [...]
-    "completionPredicate": { "kind": "expression", "displayName": "Completion 
Predicate", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": false, "asPredi [...]
-    "completionTimeoutExpression": { "kind": "expression", "displayName": 
"Completion Timeout Expression", "required": false, "type": "object", 
"javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ 
"constant", "csimple", "datasonnet", "exchangeProperty", "groovy", "header", 
"hl7terser", "joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", 
"simple", "spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": 
false, "autowired": false, "secret" [...]
-    "completionSizeExpression": { "kind": "expression", "displayName": 
"Completion Size Expression", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": fals [...]
-    "optimisticLockRetryPolicy": { "kind": "element", "displayName": 
"Optimistic Lock Retry Policy", "required": false, "type": "object", 
"javaType": "org.apache.camel.model.OptimisticLockRetryPolicyDefinition", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"Allows to configure retry settings when using optimistic locking." },
+    "completionPredicate": { "kind": "expression", "displayName": "Completion 
Predicate", "label": "advanced", "required": false, "type": "object", 
"javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ 
"constant", "csimple", "datasonnet", "exchangeProperty", "groovy", "header", 
"hl7terser", "joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", 
"simple", "spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": 
false, "autowired": false, "sec [...]
+    "completionTimeoutExpression": { "kind": "expression", "displayName": 
"Completion Timeout Expression", "label": "advanced", "required": false, 
"type": "object", "javaType": 
"org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowi [...]
+    "completionSizeExpression": { "kind": "expression", "displayName": 
"Completion Size Expression", "label": "advanced", "required": false, "type": 
"object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", 
"oneOf": [ "constant", "csimple", "datasonnet", "exchangeProperty", "groovy", 
"header", "hl7terser", "joor", "jsonpath", "language", "method", "mvel", 
"ognl", "ref", "simple", "spel", "tokenize", "xpath", "xquery", "xtokenize" ], 
"deprecated": false, "autowired":  [...]
+    "optimisticLockRetryPolicy": { "kind": "element", "displayName": 
"Optimistic Lock Retry Policy", "label": "advanced", "required": false, "type": 
"object", "javaType": 
"org.apache.camel.model.OptimisticLockRetryPolicyDefinition", "deprecated": 
false, "autowired": false, "secret": false, "description": "Allows to configure 
retry settings when using optimistic locking." },
     "parallelProcessing": { "kind": "attribute", "displayName": "Parallel 
Processing", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "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 cr [...]
     "optimisticLocking": { "kind": "attribute", "displayName": "Optimistic 
Locking", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Turns on using optimistic locking, which 
requires the aggregationRepository being used, is supporting this by 
implementing org.apache.camel.spi.OptimisticLockingAggregationRepository ." },
     "executorService": { "kind": "attribute", "displayName": "Executor 
Service", "label": "advanced", "required": false, "type": "object", "javaType": 
"java.util.concurrent.ExecutorService", "deprecated": false, "autowired": 
false, "secret": false, "description": "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." },
@@ -24,21 +24,21 @@
     "aggregateController": { "kind": "attribute", "displayName": "Aggregate 
Controller", "label": "advanced", "required": false, "type": "object", 
"javaType": "org.apache.camel.processor.aggregate.AggregateController", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a org.apache.camel.processor.aggregate.AggregateController to allow 
external sources to control this aggregator." },
     "aggregationRepository": { "kind": "attribute", "displayName": 
"Aggregation Repository", "required": false, "type": "object", "javaType": 
"org.apache.camel.spi.AggregationRepository", "deprecated": false, "autowired": 
false, "secret": false, "description": "The AggregationRepository to use. Sets 
the custom aggregate repository to use. Will by default use 
org.apache.camel.processor.aggregate.MemoryAggregationRepository" },
     "aggregationStrategy": { "kind": "attribute", "displayName": "Aggregation 
Strategy", "required": false, "type": "object", "javaType": 
"org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": 
false, "secret": false, "description": "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  [...]
-    "aggregationStrategyMethodName": { "kind": "attribute", "displayName": 
"Aggregation Strategy Method Name", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "description": "This option can be used to explicit declare 
the method name to use, when using beans as the AggregationStrategy." },
-    "aggregationStrategyMethodAllowNull": { "kind": "attribute", 
"displayName": "Aggregation Strategy Method Allow Null", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": "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 usi [...]
+    "aggregationStrategyMethodName": { "kind": "attribute", "displayName": 
"Aggregation Strategy Method Name", "label": "advanced", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "This option can be used to 
explicit declare the method name to use, when using beans as the 
AggregationStrategy." },
+    "aggregationStrategyMethodAllowNull": { "kind": "attribute", 
"displayName": "Aggregation Strategy Method Allow Null", "label": "advanced", 
"required": false, "type": "boolean", "javaType": "java.lang.Boolean", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 
false, "description": "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 a [...]
     "completionSize": { "kind": "attribute", "displayName": "Completion Size", 
"required": false, "type": "integer", "javaType": "java.lang.Integer", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"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 v [...]
     "completionInterval": { "kind": "attribute", "displayName": "Completion 
Interval", "required": false, "type": "duration", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "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." },
     "completionTimeout": { "kind": "attribute", "displayName": "Completion 
Timeout", "required": false, "type": "duration", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "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 [...]
-    "completionTimeoutCheckerInterval": { "kind": "attribute", "displayName": 
"Completion Timeout Checker Interval", "required": false, "type": "duration", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": "1000", "description": "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 i [...]
-    "completionFromBatchConsumer": { "kind": "attribute", "displayName": 
"Completion From Batch Consumer", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "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  [...]
-    "completionOnNewCorrelationGroup": { "kind": "attribute", "displayName": 
"Completion On New Correlation Group", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "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 [...]
+    "completionTimeoutCheckerInterval": { "kind": "attribute", "displayName": 
"Completion Timeout Checker Interval", "label": "advanced", "required": false, 
"type": "duration", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": "1000", "description": 
"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 appr [...]
+    "completionFromBatchConsumer": { "kind": "attribute", "displayName": 
"Completion From Batch Consumer", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"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 c [...]
+    "completionOnNewCorrelationGroup": { "kind": "attribute", "displayName": 
"Completion On New Correlation Group", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"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 or [...]
     "eagerCheckCompletion": { "kind": "attribute", "displayName": "Eager Check 
Completion", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "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." },
-    "ignoreInvalidCorrelationKeys": { "kind": "attribute", "displayName": 
"Ignore Invalid Correlation Keys", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "If a correlation key 
cannot be successfully evaluated it will be ignored by logging a DEBUG and then 
just ignore the incoming Exchange." },
-    "closeCorrelationKeyOnCompletion": { "kind": "attribute", "displayName": 
"Close Correlation Key On Completion", "required": false, "type": "integer", 
"javaType": "java.lang.Integer", "deprecated": false, "autowired": false, 
"secret": false, "description": "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." },
-    "discardOnCompletionTimeout": { "kind": "attribute", "displayName": 
"Discard On Completion Timeout", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "Discards the aggregated 
message on completion timeout. This means on timeout the aggregated message is 
dropped and not sent out of the aggregator." },
-    "discardOnAggregationFailure": { "kind": "attribute", "displayName": 
"Discard On Aggregation Failure", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "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 [...]
-    "forceCompletionOnStop": { "kind": "attribute", "displayName": "Force 
Completion On Stop", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Indicates to complete all current 
aggregated exchanges when the context is stopped" },
-    "completeAllOnStop": { "kind": "attribute", "displayName": "Complete All 
On Stop", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "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 t [...]
+    "ignoreInvalidCorrelationKeys": { "kind": "attribute", "displayName": 
"Ignore Invalid Correlation Keys", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": "If 
a correlation key cannot be successfully evaluated it will be ignored by 
logging a DEBUG and then just ignore the incoming Exchange." },
+    "closeCorrelationKeyOnCompletion": { "kind": "attribute", "displayName": 
"Close Correlation Key On Completion", "label": "advanced", "required": false, 
"type": "integer", "javaType": "java.lang.Integer", "deprecated": false, 
"autowired": false, "secret": false, "description": "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." },
+    "discardOnCompletionTimeout": { "kind": "attribute", "displayName": 
"Discard On Completion Timeout", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Discards the aggregated message on completion timeout. This means on timeout 
the aggregated message is dropped and not sent out of the aggregator." },
+    "discardOnAggregationFailure": { "kind": "attribute", "displayName": 
"Discard On Aggregation Failure", "label": "advanced", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"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.  [...]
+    "forceCompletionOnStop": { "kind": "attribute", "displayName": "Force 
Completion On Stop", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "Indicates to complete 
all current aggregated exchanges when the context is stopped" },
+    "completeAllOnStop": { "kind": "attribute", "displayName": "Complete All 
On Stop", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "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 reposi [...]
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/bean.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/bean.json
index 7a258bf..a6af551 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/bean.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/bean.json
@@ -15,8 +15,7 @@
     "ref": { "kind": "attribute", "displayName": "Ref", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets a reference to an 
exiting bean to use, which is looked up from the registry" },
     "method": { "kind": "attribute", "displayName": "Method", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the method name on 
the bean to use" },
     "beanType": { "kind": "attribute", "displayName": "Bean Type", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the class name (fully 
qualified) of the bean to use" },
-    "cache": { "kind": "attribute", "displayName": "Cache", "required": false, 
"type": "boolean", "javaType": "java.lang.Boolean", "deprecated": true, 
"autowired": false, "secret": false, "defaultValue": true, "description": "Use 
singleton option instead" },
-    "scope": { "kind": "attribute", "displayName": "Scope", "required": false, 
"type": "enum", "javaType": "java.lang.String", "enum": [ "Singleton", 
"Request", "Prototype" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "Singleton", "description": "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  [...]
+    "scope": { "kind": "attribute", "displayName": "Scope", "label": 
"advanced", "required": false, "type": "enum", "javaType": "java.lang.String", 
"enum": [ "Singleton", "Request", "Prototype" ], "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": "Singleton", 
"description": "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 th [...]
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/circuitBreaker.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/circuitBreaker.json
index be6a9df..5405474 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/circuitBreaker.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/circuitBreaker.json
@@ -12,7 +12,7 @@
     "output": false
   },
   "properties": {
-    "hystrixConfiguration": { "kind": "element", "displayName": "Hystrix 
Configuration", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.HystrixConfigurationDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Configures the circuit 
breaker to use Hystrix with the given configuration." },
+    "hystrixConfiguration": { "kind": "element", "displayName": "Hystrix 
Configuration", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.HystrixConfigurationDefinition", "deprecated": true, 
"autowired": false, "secret": false, "description": "Configures the circuit 
breaker to use Hystrix with the given configuration." },
     "resilience4jConfiguration": { "kind": "element", "displayName": 
"Resilience4j Configuration", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.Resilience4jConfigurationDefinition", "deprecated": 
false, "autowired": false, "secret": false, "description": "Configures the 
circuit breaker to use Resilience4j with the given configuration." },
     "faultToleranceConfiguration": { "kind": "element", "displayName": "Fault 
Tolerance Configuration", "required": false, "type": "object", "javaType": 
"org.apache.camel.model.FaultToleranceConfigurationDefinition", "deprecated": 
false, "autowired": false, "secret": false, "description": "Configures the 
circuit breaker to use MicroProfile Fault Tolerance with the given 
configuration." },
     "configuration": { "kind": "attribute", "displayName": "Configuration", 
"required": false, "type": "string", "javaType": "java.lang.String", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"Refers to a circuit breaker configuration (such as hystrix, resillience4j, or 
microprofile-fault-tolerance) to use for configuring the circuit breaker EIP." 
},
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/contextScan.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/contextScan.json
index f6b9285..2da8516 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/contextScan.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/contextScan.json
@@ -12,7 +12,7 @@
     "output": false
   },
   "properties": {
-    "includeNonSingletons": { "kind": "attribute", "displayName": "Include Non 
Singletons", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Whether to include non-singleton beans 
(prototypes) By default only singleton beans is included in the context scan" },
+    "includeNonSingletons": { "kind": "attribute", "displayName": "Include Non 
Singletons", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "Whether to include 
non-singleton beans (prototypes) By default only singleton beans is included in 
the context scan" },
     "excludes": { "kind": "element", "displayName": "Excludes", "required": 
false, "type": "array", "javaType": "java.util.List<java.lang.String>", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"Exclude finding route builder from these java package names." },
     "includes": { "kind": "element", "displayName": "Includes", "required": 
false, "type": "array", "javaType": "java.util.List<java.lang.String>", 
"deprecated": false, "autowired": false, "secret": false, "description": 
"Include finding route builder from these java package names." }
   }
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/convertBodyTo.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/convertBodyTo.json
index 33c5487..373de07 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/convertBodyTo.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/convertBodyTo.json
@@ -13,8 +13,8 @@
   },
   "properties": {
     "type": { "kind": "attribute", "displayName": "Type", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "The java type to convert 
to" },
-    "mandatory": { "kind": "attribute", "displayName": "Mandatory", 
"required": false, "type": "boolean", "javaType": "java.lang.Boolean", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": true, 
"description": "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." },
-    "charset": { "kind": "attribute", "displayName": "Charset", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a specific charset 
when converting" },
+    "mandatory": { "kind": "attribute", "displayName": "Mandatory", "label": 
"advanced", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": true, "description": "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." },
+    "charset": { "kind": "attribute", "displayName": "Charset", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a specific charset when converting" },
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/delay.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/delay.json
index df15c49..fcec0f1 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/delay.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/delay.json
@@ -13,9 +13,9 @@
   },
   "properties": {
     "expression": { "kind": "expression", "displayName": "Expression", 
"required": true, "type": "object", "javaType": 
"org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": false, "description": "Expression to [...]
+    "asyncDelayed": { "kind": "attribute", "displayName": "Async Delayed", 
"label": "advanced", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": true, "description": "Enables asynchronous delay which means 
the thread will not block while delaying." },
+    "callerRunsWhenRejected": { "kind": "attribute", "displayName": "Caller 
Runs When Rejected", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": true, "description": "Whether or not the 
caller should run the task when it was rejected by the thread pool. Is by 
default true" },
     "executorService": { "kind": "attribute", "displayName": "Executor 
Service", "label": "advanced", "required": false, "type": "object", "javaType": 
"java.util.concurrent.ExecutorService", "deprecated": false, "autowired": 
false, "secret": false, "description": "To use a custom Thread Pool if 
asyncDelay has been enabled." },
-    "asyncDelayed": { "kind": "attribute", "displayName": "Async Delayed", 
"required": false, "type": "boolean", "javaType": "java.lang.Boolean", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": true, 
"description": "Enables asynchronous delay which means the thread will not 
block while delaying." },
-    "callerRunsWhenRejected": { "kind": "attribute", "displayName": "Caller 
Runs When Rejected", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": true, "description": "Whether or not the caller should run the 
task when it was rejected by the thread pool. Is by default true" },
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/description.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/description.json
index 59dde0b..a540775 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/description.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/description.json
@@ -12,7 +12,7 @@
     "output": false
   },
   "properties": {
-    "lang": { "kind": "attribute", "displayName": "Lang", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Language, such as en for 
english." },
+    "lang": { "kind": "attribute", "displayName": "Lang", "label": "advanced", 
"required": false, "type": "string", "javaType": "java.lang.String", 
"deprecated": true, "autowired": false, "secret": false, "description": 
"Language, such as en for english." },
     "text": { "kind": "value", "displayName": "Text", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "The description as human 
readable text" }
   }
 }
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/dynamicRouter.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/dynamicRouter.json
index cadccf8..e807b22 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/dynamicRouter.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/dynamicRouter.json
@@ -14,8 +14,8 @@
   "properties": {
     "expression": { "kind": "expression", "displayName": "Expression", 
"required": true, "type": "object", "javaType": 
"org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", 
"csimple", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", 
"joor", "jsonpath", "language", "method", "mvel", "ognl", "ref", "simple", 
"spel", "tokenize", "xpath", "xquery", "xtokenize" ], "deprecated": false, 
"autowired": false, "secret": false, "description": "Expression to [...]
     "uriDelimiter": { "kind": "attribute", "displayName": "Uri Delimiter", 
"required": false, "type": "string", "javaType": "java.lang.String", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", 
"description": "Sets the uri delimiter to use" },
-    "ignoreInvalidEndpoints": { "kind": "attribute", "displayName": "Ignore 
Invalid Endpoints", "required": false, "type": "boolean", "javaType": 
"java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Ignore the invalidate endpoint exception 
when try to create a producer with that endpoint" },
-    "cacheSize": { "kind": "attribute", "displayName": "Cache Size", 
"required": false, "type": "integer", "javaType": "java.lang.Integer", 
"deprecated": false, "autowired": false, "secret": false, "description": "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 end [...]
+    "ignoreInvalidEndpoints": { "kind": "attribute", "displayName": "Ignore 
Invalid Endpoints", "label": "advanced", "required": false, "type": "boolean", 
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": false, "description": "Ignore the invalidate 
endpoint exception when try to create a producer with that endpoint" },
+    "cacheSize": { "kind": "attribute", "displayName": "Cache Size", "label": 
"advanced", "required": false, "type": "integer", "javaType": 
"java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, 
"description": "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 [...]
     "id": { "kind": "attribute", "displayName": "Id", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the id of this node" 
},
     "description": { "kind": "element", "displayName": "Description", 
"required": false, "type": "object", "javaType": 
"org.apache.camel.model.DescriptionDefinition", "deprecated": false, 
"autowired": false, "secret": false, "description": "Sets the description of 
this node" }
   }
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/templateBean.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/templateBean.json
index 319a14d..7d0f9a8 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/templateBean.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/templateBean.json
@@ -14,8 +14,8 @@
   "properties": {
     "name": { "kind": "attribute", "displayName": "Name", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Bean name" },
     "type": { "kind": "attribute", "displayName": "Type", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "What type to use for 
creating the bean. Can be one of: 
#class,#type,bean,groovy,joor,language,mvel,ognl. #class or #type then the bean 
is created via the fully qualified classname, such as #class:com.foo.MyBean The 
others are scripting languages that gives more power to create the bean with  
[...]
-    "beanType": { "kind": "attribute", "displayName": "Bean Type", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "To set the type (fully 
qualified class name) of the returned bean created by the script. Knowing the 
type of the bean can be needed when dependency injection by type is in use, or 
when looking in registry via class type." },
+    "beanType": { "kind": "attribute", "displayName": "Bean Type", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To set the type (fully qualified class name) of the returned 
bean created by the script. Knowing the type of the bean can be needed when 
dependency injection by type is in use, or when looking in registry via class 
type." },
     "property": { "kind": "element", "displayName": "Property", "required": 
false, "type": "array", "javaType": 
"java.util.List<org.apache.camel.model.PropertyDefinition>", "deprecated": 
false, "autowired": false, "secret": false, "description": "Optional properties 
to set on the created local bean" },
-    "script": { "kind": "element", "displayName": "Script", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "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": { "kind": "element", "displayName": "Script", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "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." }
   }
 }
diff --git 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/templatedRouteBean.json
 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/templatedRouteBean.json
index 45cdf31..2e012cc 100644
--- 
a/core/camel-core-model/src/generated/resources/org/apache/camel/model/templatedRouteBean.json
+++ 
b/core/camel-core-model/src/generated/resources/org/apache/camel/model/templatedRouteBean.json
@@ -14,8 +14,8 @@
   "properties": {
     "name": { "kind": "attribute", "displayName": "Name", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "Bean name" },
     "type": { "kind": "attribute", "displayName": "Type", "required": true, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "What type to use for 
creating the bean. Can be one of: 
#class,#type,bean,groovy,joor,language,mvel,ognl. #class or #type then the bean 
is created via the fully qualified classname, such as #class:com.foo.MyBean The 
others are scripting languages that gives more power to create the bean with  
[...]
-    "beanType": { "kind": "attribute", "displayName": "Bean Type", "required": 
false, "type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "To set the type (fully 
qualified class name) of the returned bean created by the script. Knowing the 
type of the bean can be needed when dependency injection by type is in use, or 
when looking in registry via class type." },
+    "beanType": { "kind": "attribute", "displayName": "Bean Type", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To set the type (fully qualified class name) of the returned 
bean created by the script. Knowing the type of the bean can be needed when 
dependency injection by type is in use, or when looking in registry via class 
type." },
     "property": { "kind": "element", "displayName": "Property", "required": 
false, "type": "array", "javaType": 
"java.util.List<org.apache.camel.model.PropertyDefinition>", "deprecated": 
false, "autowired": false, "secret": false, "description": "Optional properties 
to set on the created local bean" },
-    "script": { "kind": "element", "displayName": "Script", "required": false, 
"type": "string", "javaType": "java.lang.String", "deprecated": false, 
"autowired": false, "secret": false, "description": "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": { "kind": "element", "displayName": "Script", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "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." }
   }
 }
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/AggregateDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/AggregateDefinition.java
index f2a0355..c35b4e8 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/AggregateDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/AggregateDefinition.java
@@ -71,12 +71,16 @@ public class AggregateDefinition extends 
OutputDefinition<AggregateDefinition>
     private ExpressionSubElementDefinition correlationExpression;
     @XmlElement(name = "completionPredicate")
     @AsPredicate
+    @Metadata(label = "advanced")
     private ExpressionSubElementDefinition completionPredicate;
     @XmlElement(name = "completionTimeoutExpression")
+    @Metadata(label = "advanced")
     private ExpressionSubElementDefinition completionTimeoutExpression;
     @XmlElement(name = "completionSizeExpression")
+    @Metadata(label = "advanced")
     private ExpressionSubElementDefinition completionSizeExpression;
     @XmlElement(name = "optimisticLockRetryPolicy")
+    @Metadata(label = "advanced")
     private OptimisticLockRetryPolicyDefinition 
optimisticLockRetryPolicyDefinition;
 
     @XmlAttribute
@@ -101,9 +105,10 @@ public class AggregateDefinition extends 
OutputDefinition<AggregateDefinition>
     @Metadata(javaType = "org.apache.camel.AggregationStrategy")
     private String aggregationStrategy;
     @XmlAttribute
+    @Metadata(label = "advanced")
     private String aggregationStrategyMethodName;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String aggregationStrategyMethodAllowNull;
     @XmlAttribute
     @Metadata(javaType = "java.lang.Integer")
@@ -115,34 +120,34 @@ public class AggregateDefinition extends 
OutputDefinition<AggregateDefinition>
     @Metadata(javaType = "java.time.Duration")
     private String completionTimeout;
     @XmlAttribute
-    @Metadata(defaultValue = "1000", javaType = "java.time.Duration")
+    @Metadata(label = "advanced", defaultValue = "1000", javaType = 
"java.time.Duration")
     private String completionTimeoutCheckerInterval = "1000";
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String completionFromBatchConsumer;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String completionOnNewCorrelationGroup;
     @XmlAttribute
     @Metadata(javaType = "java.lang.Boolean")
     private String eagerCheckCompletion;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String ignoreInvalidCorrelationKeys;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Integer")
+    @Metadata(label = "advanced", javaType = "java.lang.Integer")
     private String closeCorrelationKeyOnCompletion;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String discardOnCompletionTimeout;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String discardOnAggregationFailure;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String forceCompletionOnStop;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String completeAllOnStop;
 
     public AggregateDefinition() {
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/BeanDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/BeanDefinition.java
index 915fa45..a3a292e 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/BeanDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/BeanDefinition.java
@@ -33,6 +33,12 @@ import org.apache.camel.util.ObjectHelper;
 @XmlRootElement(name = "bean")
 @XmlAccessorType(XmlAccessType.FIELD)
 public class BeanDefinition extends NoOutputDefinition<BeanDefinition> {
+
+    @XmlTransient
+    private Class<?> beanClass;
+    @XmlTransient
+    private Object bean;
+
     @XmlAttribute
     private String ref;
     @XmlAttribute
@@ -40,16 +46,8 @@ public class BeanDefinition extends 
NoOutputDefinition<BeanDefinition> {
     @XmlAttribute
     private String beanType;
     @XmlAttribute
-    @Metadata(defaultValue = "true", javaType = "java.lang.Boolean")
-    @Deprecated
-    private String cache;
-    @XmlAttribute
-    @Metadata(defaultValue = "Singleton", enums = 
"Singleton,Request,Prototype")
+    @Metadata(label = "advanced", defaultValue = "Singleton", enums = 
"Singleton,Request,Prototype")
     private String scope;
-    @XmlTransient
-    private Class<?> beanClass;
-    @XmlTransient
-    private Object bean;
 
     public BeanDefinition() {
     }
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/BeanFactoryDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/BeanFactoryDefinition.java
index ed6a43d..f519ac0 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/BeanFactoryDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/BeanFactoryDefinition.java
@@ -39,23 +39,27 @@ import org.apache.camel.spi.Metadata;
 @XmlAccessorType(XmlAccessType.FIELD)
 public abstract class BeanFactoryDefinition<
         T extends BeanFactoryDefinition<T, P>, P> {
+
     @XmlTransient
     private P parent;
+    // special for java-dsl to allow using lambda style
+    @XmlTransient
+    private Class<?> beanClass;
+    @XmlTransient
+    private RouteTemplateContext.BeanSupplier<Object> beanSupplier;
+
     @XmlAttribute(required = true)
     private String name;
     @XmlAttribute(required = true)
     private String type;
     @XmlAttribute
+    @Metadata(label = "advanced")
     private String beanType;
     @XmlElement(name = "property")
     private List<PropertyDefinition> properties;
     @XmlElement(name = "script")
+    @Metadata(label = "advanced")
     private String script;
-    // special for java-dsl to allow using lambda style
-    @XmlTransient
-    private Class<?> beanClass;
-    @XmlTransient
-    private RouteTemplateContext.BeanSupplier<Object> beanSupplier;
 
     void setParent(P parent) {
         this.parent = parent;
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/CatchDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/CatchDefinition.java
index 9ebd5b1..da30c9e 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/CatchDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/CatchDefinition.java
@@ -38,13 +38,15 @@ import org.apache.camel.spi.Metadata;
 @XmlRootElement(name = "doCatch")
 @XmlAccessorType(XmlAccessType.FIELD)
 public class CatchDefinition extends OutputDefinition<CatchDefinition> {
+
+    @XmlTransient
+    private List<Class<? extends Throwable>> exceptionClasses;
+
     @XmlElement(name = "exception")
     private List<String> exceptions = new ArrayList<>();
     @XmlElement(name = "onWhen")
     @AsPredicate
     private WhenDefinition onWhen;
-    @XmlTransient
-    private List<Class<? extends Throwable>> exceptionClasses;
 
     public CatchDefinition() {
     }
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/ChoiceDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/ChoiceDefinition.java
index f36c198..73801a5 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/ChoiceDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/ChoiceDefinition.java
@@ -42,6 +42,9 @@ import org.apache.camel.util.ObjectHelper;
 @XmlRootElement(name = "choice")
 @XmlAccessorType(XmlAccessType.FIELD)
 public class ChoiceDefinition extends ProcessorDefinition<ChoiceDefinition> 
implements OutputNode {
+
+    private transient boolean onlyWhenOrOtherwise = true;
+
     @XmlElementRef(name = "when")
     @AsPredicate
     @Metadata(description = "Sets the when nodes")
@@ -50,8 +53,6 @@ public class ChoiceDefinition extends 
ProcessorDefinition<ChoiceDefinition> impl
     @Metadata(description = "Sets the otherwise node")
     private OtherwiseDefinition otherwise;
 
-    private transient boolean onlyWhenOrOtherwise = true;
-
     public ChoiceDefinition() {
     }
 
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/CircuitBreakerDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/CircuitBreakerDefinition.java
index 56ac206..4586f1e 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/CircuitBreakerDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/CircuitBreakerDefinition.java
@@ -39,6 +39,7 @@ import org.apache.camel.spi.annotations.DslProperty;
 public class CircuitBreakerDefinition extends 
OutputDefinition<CircuitBreakerDefinition> {
 
     @XmlElement
+    @Deprecated
     private HystrixConfigurationDefinition hystrixConfiguration;
     @XmlElement
     private Resilience4jConfigurationDefinition resilience4jConfiguration;
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/ContextScanDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/ContextScanDefinition.java
index 7111027..7bacfd7 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/ContextScanDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/ContextScanDefinition.java
@@ -35,8 +35,9 @@ import org.apache.camel.spi.Metadata;
 @XmlRootElement(name = "contextScan")
 @XmlAccessorType(XmlAccessType.FIELD)
 public class ContextScanDefinition {
+
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String includeNonSingletons;
     @XmlElement(name = "excludes")
     private List<String> excludes = new ArrayList<>();
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/ConvertBodyDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/ConvertBodyDefinition.java
index 9795198..e0fa166 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/ConvertBodyDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/ConvertBodyDefinition.java
@@ -31,15 +31,18 @@ import org.apache.camel.spi.Metadata;
 @XmlRootElement(name = "convertBodyTo")
 @XmlAccessorType(XmlAccessType.FIELD)
 public class ConvertBodyDefinition extends 
NoOutputDefinition<ConvertBodyDefinition> {
+
+    @XmlTransient
+    private Class<?> typeClass;
+
     @XmlAttribute(required = true)
     private String type;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean", defaultValue = "true")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean", defaultValue 
= "true")
     private String mandatory;
     @XmlAttribute
+    @Metadata(label = "advanced")
     private String charset;
-    @XmlTransient
-    private Class<?> typeClass;
 
     public ConvertBodyDefinition() {
     }
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DataFormatDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DataFormatDefinition.java
index f1f7409..6e2c8a8 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DataFormatDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DataFormatDefinition.java
@@ -32,6 +32,7 @@ import org.apache.camel.spi.Metadata;
 @XmlAccessorType(XmlAccessType.FIELD)
 @SuppressWarnings("rawtypes")
 public class DataFormatDefinition extends IdentifiedType {
+
     @XmlTransient
     private DataFormat dataFormat;
     @XmlTransient
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DataFormatDefinitionAware.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DataFormatDefinitionAware.java
index abf9ad7..7c14214 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DataFormatDefinitionAware.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DataFormatDefinitionAware.java
@@ -20,6 +20,7 @@ package org.apache.camel.model;
  * Marker interface to mark a {@link ProcessorDefinition} that supports data 
formats.
  */
 public interface DataFormatDefinitionAware {
+
     /**
      * The data format.
      */
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DelayDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DelayDefinition.java
index c45a524..995472a 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DelayDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DelayDefinition.java
@@ -41,14 +41,14 @@ public class DelayDefinition extends ExpressionNode 
implements ExecutorServiceAw
     private ExecutorService executorServiceBean;
 
     @XmlAttribute
-    @Metadata(label = "advanced", javaType = 
"java.util.concurrent.ExecutorService")
-    private String executorService;
-    @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean", defaultValue = "true")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean", defaultValue 
= "true")
     private String asyncDelayed;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean", defaultValue = "true")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean", defaultValue 
= "true")
     private String callerRunsWhenRejected;
+    @XmlAttribute
+    @Metadata(label = "advanced", javaType = 
"java.util.concurrent.ExecutorService")
+    private String executorService;
 
     public DelayDefinition() {
     }
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DescriptionDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DescriptionDefinition.java
index 6de111a..f87f360 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DescriptionDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DescriptionDefinition.java
@@ -31,7 +31,10 @@ import org.apache.camel.spi.Metadata;
 @XmlRootElement(name = "description")
 @XmlAccessorType(XmlAccessType.FIELD)
 public class DescriptionDefinition {
+
     @XmlAttribute
+    @Metadata(label = "advanced")
+    @Deprecated
     private String lang;
     @XmlValue
     private String text;
@@ -43,6 +46,7 @@ public class DescriptionDefinition {
         this.text = text;
     }
 
+    @Deprecated
     public String getLang() {
         return lang;
     }
@@ -50,6 +54,7 @@ public class DescriptionDefinition {
     /**
      * Language, such as en for english.
      */
+    @Deprecated
     public void setLang(String lang) {
         this.lang = lang;
     }
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DynamicRouterDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DynamicRouterDefinition.java
index dbabdac..12323e6 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/DynamicRouterDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/DynamicRouterDefinition.java
@@ -42,10 +42,10 @@ public class DynamicRouterDefinition<Type extends 
ProcessorDefinition<Type>> ext
     @Metadata(defaultValue = ",")
     private String uriDelimiter;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Boolean")
+    @Metadata(label = "advanced", javaType = "java.lang.Boolean")
     private String ignoreInvalidEndpoints;
     @XmlAttribute
-    @Metadata(javaType = "java.lang.Integer")
+    @Metadata(label = "advanced", javaType = "java.lang.Integer")
     private String cacheSize;
 
     public DynamicRouterDefinition() {
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
index c36cc11..f1df499 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
@@ -149,6 +149,7 @@ public abstract class OptionalIdentifiedDefinition<T 
extends OptionalIdentifiedD
      * @return      the builder
      */
     @SuppressWarnings("unchecked")
+    @Deprecated
     public T description(String id, String text, String lang) {
         if (id != null) {
             setId(id);
diff --git 
a/core/camel-xml-io/src/generated/java/org/apache/camel/xml/in/ModelParser.java 
b/core/camel-xml-io/src/generated/java/org/apache/camel/xml/in/ModelParser.java
index bcad710..2c9d79a 100644
--- 
a/core/camel-xml-io/src/generated/java/org/apache/camel/xml/in/ModelParser.java
+++ 
b/core/camel-xml-io/src/generated/java/org/apache/camel/xml/in/ModelParser.java
@@ -196,7 +196,6 @@ public class ModelParser extends BaseParser {
         return doParse(new BeanDefinition(), (def, key, val) -> {
             switch (key) {
                 case "beanType": def.setBeanType(val); break;
-                case "cache": def.setCache(val); break;
                 case "method": def.setMethod(val); break;
                 case "ref": def.setRef(val); break;
                 case "scope": def.setScope(val); break;
diff --git 
a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ModelDeserializers.java
 
b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ModelDeserializers.java
index 25f792c..d626b00 100644
--- 
a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ModelDeserializers.java
+++ 
b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ModelDeserializers.java
@@ -1021,7 +1021,6 @@ public final class ModelDeserializers extends 
YamlDeserializerSupport {
             nodes = "bean",
             properties = {
                     @YamlProperty(name = "bean-type", type = "string"),
-                    @YamlProperty(name = "cache", type = "boolean", deprecated 
= true),
                     @YamlProperty(name = "description", type = "string"),
                     @YamlProperty(name = "id", type = "string"),
                     @YamlProperty(name = "inherit-error-handler", type = 
"boolean"),
@@ -1054,11 +1053,6 @@ public final class ModelDeserializers extends 
YamlDeserializerSupport {
                     target.setBeanType(val);
                     break;
                 }
-                case "cache": {
-                    String val = asText(node);
-                    target.setCache(val);
-                    break;
-                }
                 case "inherit-error-handler": {
                     String val = asText(node);
                     
target.setInheritErrorHandler(java.lang.Boolean.valueOf(val));
@@ -4272,7 +4266,7 @@ public final class ModelDeserializers extends 
YamlDeserializerSupport {
             order = 
org.apache.camel.dsl.yaml.common.YamlDeserializerResolver.ORDER_LOWEST - 1,
             nodes = "description",
             properties = {
-                    @YamlProperty(name = "lang", type = "string"),
+                    @YamlProperty(name = "lang", type = "string", deprecated = 
true),
                     @YamlProperty(name = "text", type = "string")
             }
     )
diff --git 
a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/camel-yaml-dsl.json 
b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/camel-yaml-dsl.json
index e7d795b..b107c1f 100644
--- 
a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/camel-yaml-dsl.json
+++ 
b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/camel-yaml-dsl.json
@@ -560,9 +560,6 @@
             "bean-type" : {
               "type" : "string"
             },
-            "cache" : {
-              "type" : "boolean"
-            },
             "description" : {
               "type" : "string"
             },
diff --git 
a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/camelYamlDsl.json 
b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/camelYamlDsl.json
index 6d2fcbf..eaeaf5e 100644
--- 
a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/camelYamlDsl.json
+++ 
b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/camelYamlDsl.json
@@ -464,9 +464,6 @@
             "beanType" : {
               "type" : "string"
             },
-            "cache" : {
-              "type" : "boolean"
-            },
             "description" : {
               "type" : "string"
             },

Reply via email to