This is an automated email from the ASF dual-hosted git repository.
acosentino 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 67067a5d25a CAMEL-20980 Add object mapper uri param for json validator
(#14848)
67067a5d25a is described below
commit 67067a5d25ae18ee4daab51698852b323114e19a
Author: Alvin Kwekel <[email protected]>
AuthorDate: Wed Jul 17 11:16:22 2024 +0200
CAMEL-20980 Add object mapper uri param for json validator (#14848)
* CAMEL-20980 Add object mapper endpoint option for json validator
* CAMEL-20980 Add object mapper component option for json validator
* CAMEL-20980 Add generated resources
* CAMEL-20980 Add generated resources - part 2
---------
Co-authored-by: Alvin Kwekel <[email protected]>
---
.../camel/catalog/components/json-validator.json | 6 +++--
.../JsonValidatorComponentConfigurer.java | 11 ++++++++
.../JsonValidatorEndpointConfigurer.java | 6 +++++
.../JsonValidatorEndpointUriFactory.java | 3 ++-
.../component/jsonvalidator/json-validator.json | 6 +++--
.../jsonvalidator/JsonValidatorComponent.java | 16 ++++++++++++
.../jsonvalidator/JsonValidatorEndpoint.java | 23 ++++++++++++-----
.../dsl/JsonValidatorComponentBuilderFactory.java | 18 +++++++++++++
.../dsl/JsonValidatorEndpointBuilderFactory.java | 30 ++++++++++++++++++++++
.../camel/kotlin/components/JsonValidatorUriDsl.kt | 7 +++++
10 files changed, 115 insertions(+), 11 deletions(-)
diff --git
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/json-validator.json
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/json-validator.json
index 43e81fbebee..740b08c047a 100644
---
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/json-validator.json
+++
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/json-validator.json
@@ -24,7 +24,8 @@
},
"componentProperties": {
"lazyStartProducer": { "index": 0, "kind": "property", "displayName":
"Lazy Start Producer", "group": "producer", "label": "producer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether the producer should be started lazy (on the first message). By
starting lazy you can use this to allow CamelContext and routes to startup in
situations where a producer may otherwise fail [...]
- "autowiredEnabled": { "index": 1, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching t [...]
+ "autowiredEnabled": { "index": 1, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching t [...]
+ "objectMapper": { "index": 2, "kind": "property", "displayName": "Object
Mapper", "group": "advanced", "label": "advanced", "required": false, "type":
"object", "javaType": "com.fasterxml.jackson.databind.ObjectMapper",
"deprecated": false, "autowired": true, "secret": false, "description": "To use
a custom ObjectMapper" }
},
"properties": {
"resourceUri": { "index": 0, "kind": "path", "displayName": "Resource
Uri", "group": "producer", "label": "", "required": true, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": false, "supportFileReference": true,
"description": "Path to the resource. You can prefix with: classpath, file,
http, ref, or bean. classpath, file and http loads the resource using these
protocols (classpath is default). ref will look [...]
@@ -37,6 +38,7 @@
"disabledDeserializationFeatures": { "index": 7, "kind": "parameter",
"displayName": "Disabled Deserialization Features", "group": "advanced",
"label": "advanced", "required": false, "type": "string", "javaType":
"java.lang.String", "deprecated": false, "autowired": false, "secret": false,
"description": "Comma-separated list of Jackson DeserializationFeature enum
values which will be disabled for parsing exchange body" },
"enabledDeserializationFeatures": { "index": 8, "kind": "parameter",
"displayName": "Enabled Deserialization Features", "group": "advanced",
"label": "advanced", "required": false, "type": "string", "javaType":
"java.lang.String", "deprecated": false, "autowired": false, "secret": false,
"description": "Comma-separated list of Jackson DeserializationFeature enum
values which will be enabled for parsing exchange body" },
"errorHandler": { "index": 9, "kind": "parameter", "displayName": "Error
Handler", "group": "advanced", "label": "advanced", "required": false, "type":
"object", "javaType":
"org.apache.camel.component.jsonvalidator.JsonValidatorErrorHandler",
"deprecated": false, "autowired": false, "secret": false, "description": "To
use a custom ValidatorErrorHandler. The default error handler captures the
errors and throws an exception." },
- "uriSchemaLoader": { "index": 10, "kind": "parameter", "displayName": "Uri
Schema Loader", "group": "advanced", "label": "advanced", "required": false,
"type": "object", "javaType":
"org.apache.camel.component.jsonvalidator.JsonUriSchemaLoader", "deprecated":
false, "autowired": false, "secret": false, "description": "To use a custom
schema loader allowing for adding custom format validation. The default
implementation will create a schema loader that tries to determine the schema
ve [...]
+ "objectMapper": { "index": 10, "kind": "parameter", "displayName": "Object
Mapper", "group": "advanced", "label": "advanced", "required": false, "type":
"object", "javaType": "com.fasterxml.jackson.databind.ObjectMapper",
"deprecated": false, "autowired": false, "secret": false, "description": "The
used Jackson object mapper" },
+ "uriSchemaLoader": { "index": 11, "kind": "parameter", "displayName": "Uri
Schema Loader", "group": "advanced", "label": "advanced", "required": false,
"type": "object", "javaType":
"org.apache.camel.component.jsonvalidator.JsonUriSchemaLoader", "deprecated":
false, "autowired": false, "secret": false, "description": "To use a custom
schema loader allowing for adding custom format validation. The default
implementation will create a schema loader that tries to determine the schema
ve [...]
}
}
diff --git
a/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorComponentConfigurer.java
b/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorComponentConfigurer.java
index 9d646218424..bbfd47ddeaf 100644
---
a/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorComponentConfigurer.java
+++
b/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorComponentConfigurer.java
@@ -27,10 +27,17 @@ public class JsonValidatorComponentConfigurer extends
PropertyConfigurerSupport
case "autowiredEnabled":
target.setAutowiredEnabled(property(camelContext, boolean.class, value));
return true;
case "lazystartproducer":
case "lazyStartProducer":
target.setLazyStartProducer(property(camelContext, boolean.class, value));
return true;
+ case "objectmapper":
+ case "objectMapper": target.setObjectMapper(property(camelContext,
com.fasterxml.jackson.databind.ObjectMapper.class, value)); return true;
default: return false;
}
}
+ @Override
+ public String[] getAutowiredNames() {
+ return new String[]{"objectMapper"};
+ }
+
@Override
public Class<?> getOptionType(String name, boolean ignoreCase) {
switch (ignoreCase ? name.toLowerCase() : name) {
@@ -38,6 +45,8 @@ public class JsonValidatorComponentConfigurer extends
PropertyConfigurerSupport
case "autowiredEnabled": return boolean.class;
case "lazystartproducer":
case "lazyStartProducer": return boolean.class;
+ case "objectmapper":
+ case "objectMapper": return
com.fasterxml.jackson.databind.ObjectMapper.class;
default: return null;
}
}
@@ -50,6 +59,8 @@ public class JsonValidatorComponentConfigurer extends
PropertyConfigurerSupport
case "autowiredEnabled": return target.isAutowiredEnabled();
case "lazystartproducer":
case "lazyStartProducer": return target.isLazyStartProducer();
+ case "objectmapper":
+ case "objectMapper": return target.getObjectMapper();
default: return null;
}
}
diff --git
a/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpointConfigurer.java
b/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpointConfigurer.java
index 57e53a0cc5b..0938d5ffd83 100644
---
a/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpointConfigurer.java
+++
b/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpointConfigurer.java
@@ -41,6 +41,8 @@ public class JsonValidatorEndpointConfigurer extends
PropertyConfigurerSupport i
case "headerName": target.setHeaderName(property(camelContext,
java.lang.String.class, value)); return true;
case "lazystartproducer":
case "lazyStartProducer":
target.setLazyStartProducer(property(camelContext, boolean.class, value));
return true;
+ case "objectmapper":
+ case "objectMapper": target.setObjectMapper(property(camelContext,
com.fasterxml.jackson.databind.ObjectMapper.class, value)); return true;
case "urischemaloader":
case "uriSchemaLoader":
target.setUriSchemaLoader(property(camelContext,
org.apache.camel.component.jsonvalidator.JsonUriSchemaLoader.class, value));
return true;
default: return false;
@@ -68,6 +70,8 @@ public class JsonValidatorEndpointConfigurer extends
PropertyConfigurerSupport i
case "headerName": return java.lang.String.class;
case "lazystartproducer":
case "lazyStartProducer": return boolean.class;
+ case "objectmapper":
+ case "objectMapper": return
com.fasterxml.jackson.databind.ObjectMapper.class;
case "urischemaloader":
case "uriSchemaLoader": return
org.apache.camel.component.jsonvalidator.JsonUriSchemaLoader.class;
default: return null;
@@ -96,6 +100,8 @@ public class JsonValidatorEndpointConfigurer extends
PropertyConfigurerSupport i
case "headerName": return target.getHeaderName();
case "lazystartproducer":
case "lazyStartProducer": return target.isLazyStartProducer();
+ case "objectmapper":
+ case "objectMapper": return target.getObjectMapper();
case "urischemaloader":
case "uriSchemaLoader": return target.getUriSchemaLoader();
default: return null;
diff --git
a/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpointUriFactory.java
b/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpointUriFactory.java
index 27ce3b0deef..b2ea6550517 100644
---
a/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpointUriFactory.java
+++
b/components/camel-json-validator/src/generated/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpointUriFactory.java
@@ -23,7 +23,7 @@ public class JsonValidatorEndpointUriFactory extends
org.apache.camel.support.co
private static final Set<String> SECRET_PROPERTY_NAMES;
private static final Set<String> MULTI_VALUE_PREFIXES;
static {
- Set<String> props = new HashSet<>(11);
+ Set<String> props = new HashSet<>(12);
props.add("allowContextMapAll");
props.add("contentCache");
props.add("disabledDeserializationFeatures");
@@ -33,6 +33,7 @@ public class JsonValidatorEndpointUriFactory extends
org.apache.camel.support.co
props.add("failOnNullHeader");
props.add("headerName");
props.add("lazyStartProducer");
+ props.add("objectMapper");
props.add("resourceUri");
props.add("uriSchemaLoader");
PROPERTY_NAMES = Collections.unmodifiableSet(props);
diff --git
a/components/camel-json-validator/src/generated/resources/META-INF/org/apache/camel/component/jsonvalidator/json-validator.json
b/components/camel-json-validator/src/generated/resources/META-INF/org/apache/camel/component/jsonvalidator/json-validator.json
index 43e81fbebee..740b08c047a 100644
---
a/components/camel-json-validator/src/generated/resources/META-INF/org/apache/camel/component/jsonvalidator/json-validator.json
+++
b/components/camel-json-validator/src/generated/resources/META-INF/org/apache/camel/component/jsonvalidator/json-validator.json
@@ -24,7 +24,8 @@
},
"componentProperties": {
"lazyStartProducer": { "index": 0, "kind": "property", "displayName":
"Lazy Start Producer", "group": "producer", "label": "producer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether the producer should be started lazy (on the first message). By
starting lazy you can use this to allow CamelContext and routes to startup in
situations where a producer may otherwise fail [...]
- "autowiredEnabled": { "index": 1, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching t [...]
+ "autowiredEnabled": { "index": 1, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching t [...]
+ "objectMapper": { "index": 2, "kind": "property", "displayName": "Object
Mapper", "group": "advanced", "label": "advanced", "required": false, "type":
"object", "javaType": "com.fasterxml.jackson.databind.ObjectMapper",
"deprecated": false, "autowired": true, "secret": false, "description": "To use
a custom ObjectMapper" }
},
"properties": {
"resourceUri": { "index": 0, "kind": "path", "displayName": "Resource
Uri", "group": "producer", "label": "", "required": true, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": false, "supportFileReference": true,
"description": "Path to the resource. You can prefix with: classpath, file,
http, ref, or bean. classpath, file and http loads the resource using these
protocols (classpath is default). ref will look [...]
@@ -37,6 +38,7 @@
"disabledDeserializationFeatures": { "index": 7, "kind": "parameter",
"displayName": "Disabled Deserialization Features", "group": "advanced",
"label": "advanced", "required": false, "type": "string", "javaType":
"java.lang.String", "deprecated": false, "autowired": false, "secret": false,
"description": "Comma-separated list of Jackson DeserializationFeature enum
values which will be disabled for parsing exchange body" },
"enabledDeserializationFeatures": { "index": 8, "kind": "parameter",
"displayName": "Enabled Deserialization Features", "group": "advanced",
"label": "advanced", "required": false, "type": "string", "javaType":
"java.lang.String", "deprecated": false, "autowired": false, "secret": false,
"description": "Comma-separated list of Jackson DeserializationFeature enum
values which will be enabled for parsing exchange body" },
"errorHandler": { "index": 9, "kind": "parameter", "displayName": "Error
Handler", "group": "advanced", "label": "advanced", "required": false, "type":
"object", "javaType":
"org.apache.camel.component.jsonvalidator.JsonValidatorErrorHandler",
"deprecated": false, "autowired": false, "secret": false, "description": "To
use a custom ValidatorErrorHandler. The default error handler captures the
errors and throws an exception." },
- "uriSchemaLoader": { "index": 10, "kind": "parameter", "displayName": "Uri
Schema Loader", "group": "advanced", "label": "advanced", "required": false,
"type": "object", "javaType":
"org.apache.camel.component.jsonvalidator.JsonUriSchemaLoader", "deprecated":
false, "autowired": false, "secret": false, "description": "To use a custom
schema loader allowing for adding custom format validation. The default
implementation will create a schema loader that tries to determine the schema
ve [...]
+ "objectMapper": { "index": 10, "kind": "parameter", "displayName": "Object
Mapper", "group": "advanced", "label": "advanced", "required": false, "type":
"object", "javaType": "com.fasterxml.jackson.databind.ObjectMapper",
"deprecated": false, "autowired": false, "secret": false, "description": "The
used Jackson object mapper" },
+ "uriSchemaLoader": { "index": 11, "kind": "parameter", "displayName": "Uri
Schema Loader", "group": "advanced", "label": "advanced", "required": false,
"type": "object", "javaType":
"org.apache.camel.component.jsonvalidator.JsonUriSchemaLoader", "deprecated":
false, "autowired": false, "secret": false, "description": "To use a custom
schema loader allowing for adding custom format validation. The default
implementation will create a schema loader that tries to determine the schema
ve [...]
}
}
diff --git
a/components/camel-json-validator/src/main/java/org/apache/camel/component/jsonvalidator/JsonValidatorComponent.java
b/components/camel-json-validator/src/main/java/org/apache/camel/component/jsonvalidator/JsonValidatorComponent.java
index dbf87289cb8..5ff20b28ce5 100644
---
a/components/camel-json-validator/src/main/java/org/apache/camel/component/jsonvalidator/JsonValidatorComponent.java
+++
b/components/camel-json-validator/src/main/java/org/apache/camel/component/jsonvalidator/JsonValidatorComponent.java
@@ -18,7 +18,9 @@ package org.apache.camel.component.jsonvalidator;
import java.util.Map;
+import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.camel.Endpoint;
+import org.apache.camel.spi.Metadata;
import org.apache.camel.spi.annotations.Component;
import org.apache.camel.support.DefaultComponent;
@@ -28,11 +30,25 @@ import org.apache.camel.support.DefaultComponent;
@Component("json-validator")
public class JsonValidatorComponent extends DefaultComponent {
+ @Metadata(label = "advanced", autowired = true)
+ private ObjectMapper objectMapper;
+
@Override
protected Endpoint createEndpoint(String uri, String remaining,
Map<String, Object> parameters) throws Exception {
JsonValidatorEndpoint endpoint = new JsonValidatorEndpoint(uri, this,
remaining);
+ endpoint.setObjectMapper(objectMapper);
setProperties(endpoint, parameters);
return endpoint;
}
+ /**
+ * To use a custom {@link ObjectMapper}
+ */
+ public void setObjectMapper(ObjectMapper objectMapper) {
+ this.objectMapper = objectMapper;
+ }
+
+ public ObjectMapper getObjectMapper() {
+ return objectMapper;
+ }
}
diff --git
a/components/camel-json-validator/src/main/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpoint.java
b/components/camel-json-validator/src/main/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpoint.java
index 54306bc73e0..e9226b6631e 100644
---
a/components/camel-json-validator/src/main/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpoint.java
+++
b/components/camel-json-validator/src/main/java/org/apache/camel/component/jsonvalidator/JsonValidatorEndpoint.java
@@ -46,8 +46,6 @@ public class JsonValidatorEndpoint extends ResourceEndpoint {
private volatile JsonSchema schema;
- private ObjectMapper mapper;
-
@UriParam(defaultValue = "true")
private boolean failOnNullBody = true;
@UriParam(defaultValue = "true")
@@ -67,6 +65,9 @@ public class JsonValidatorEndpoint extends ResourceEndpoint {
description = "Comma-separated list of Jackson
DeserializationFeature enum values which will be disabled for parsing exchange
body")
private String disabledDeserializationFeatures;
+ @UriParam(label = "advanced", description = "The used Jackson object
mapper")
+ private ObjectMapper objectMapper;
+
public JsonValidatorEndpoint(String endpointUri, Component component,
String resourceUri) {
super(endpointUri, component, resourceUri);
}
@@ -85,17 +86,19 @@ public class JsonValidatorEndpoint extends ResourceEndpoint
{
@Override
protected void doInit() throws Exception {
super.doInit();
- mapper = new ObjectMapper();
+ if (objectMapper == null) {
+ objectMapper = new ObjectMapper();
+ }
if (enabledDeserializationFeatures != null) {
for (var featureName : enabledDeserializationFeatures.split(",")) {
var feature = DeserializationFeature.valueOf(featureName);
- mapper.enable(feature);
+ objectMapper.enable(feature);
}
}
if (disabledDeserializationFeatures != null) {
for (var featureName : disabledDeserializationFeatures.split(","))
{
var feature = DeserializationFeature.valueOf(featureName);
- mapper.disable(feature);
+ objectMapper.disable(feature);
}
}
}
@@ -144,7 +147,7 @@ public class JsonValidatorEndpoint extends ResourceEndpoint
{
}
try (InputStream is =
exchange.getContext().getTypeConverter().mandatoryConvertTo(InputStream.class,
exchange,
cache != null ? cache : content)) {
- JsonNode node = mapper.readTree(is);
+ JsonNode node = objectMapper.readTree(is);
if (node == null) {
throw new NoJsonBodyValidationException(exchange);
}
@@ -275,4 +278,12 @@ public class JsonValidatorEndpoint extends
ResourceEndpoint {
public void setDisabledDeserializationFeatures(String
disabledDeserializationFeatures) {
this.disabledDeserializationFeatures = disabledDeserializationFeatures;
}
+
+ public ObjectMapper getObjectMapper() {
+ return objectMapper;
+ }
+
+ public void setObjectMapper(ObjectMapper objectMapper) {
+ this.objectMapper = objectMapper;
+ }
}
diff --git
a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/JsonValidatorComponentBuilderFactory.java
b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/JsonValidatorComponentBuilderFactory.java
index a3e7252e1ea..be9de60ce2c 100644
---
a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/JsonValidatorComponentBuilderFactory.java
+++
b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/JsonValidatorComponentBuilderFactory.java
@@ -96,6 +96,23 @@ public interface JsonValidatorComponentBuilderFactory {
doSetProperty("autowiredEnabled", autowiredEnabled);
return this;
}
+
+ /**
+ * To use a custom ObjectMapper.
+ *
+ * The option is a:
+ * <code>com.fasterxml.jackson.databind.ObjectMapper</code>
+ * type.
+ *
+ * Group: advanced
+ *
+ * @param objectMapper the value to set
+ * @return the dsl builder
+ */
+ default JsonValidatorComponentBuilder
objectMapper(com.fasterxml.jackson.databind.ObjectMapper objectMapper) {
+ doSetProperty("objectMapper", objectMapper);
+ return this;
+ }
}
class JsonValidatorComponentBuilderImpl
@@ -113,6 +130,7 @@ public interface JsonValidatorComponentBuilderFactory {
switch (name) {
case "lazyStartProducer": ((JsonValidatorComponent)
component).setLazyStartProducer((boolean) value); return true;
case "autowiredEnabled": ((JsonValidatorComponent)
component).setAutowiredEnabled((boolean) value); return true;
+ case "objectMapper": ((JsonValidatorComponent)
component).setObjectMapper((com.fasterxml.jackson.databind.ObjectMapper)
value); return true;
default: return false;
}
}
diff --git
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JsonValidatorEndpointBuilderFactory.java
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JsonValidatorEndpointBuilderFactory.java
index 0c703bd127e..3b192621def 100644
---
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JsonValidatorEndpointBuilderFactory.java
+++
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JsonValidatorEndpointBuilderFactory.java
@@ -306,6 +306,36 @@ public interface JsonValidatorEndpointBuilderFactory {
doSetProperty("errorHandler", errorHandler);
return this;
}
+ /**
+ * The used Jackson object mapper.
+ *
+ * The option is a:
+ * <code>com.fasterxml.jackson.databind.ObjectMapper</code> type.
+ *
+ * Group: advanced
+ *
+ * @param objectMapper the value to set
+ * @return the dsl builder
+ */
+ default AdvancedJsonValidatorEndpointBuilder
objectMapper(com.fasterxml.jackson.databind.ObjectMapper objectMapper) {
+ doSetProperty("objectMapper", objectMapper);
+ return this;
+ }
+ /**
+ * The used Jackson object mapper.
+ *
+ * The option will be converted to a
+ * <code>com.fasterxml.jackson.databind.ObjectMapper</code> type.
+ *
+ * Group: advanced
+ *
+ * @param objectMapper the value to set
+ * @return the dsl builder
+ */
+ default AdvancedJsonValidatorEndpointBuilder objectMapper(String
objectMapper) {
+ doSetProperty("objectMapper", objectMapper);
+ return this;
+ }
/**
* To use a custom schema loader allowing for adding custom format
* validation. The default implementation will create a schema loader
diff --git
a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/JsonValidatorUriDsl.kt
b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/JsonValidatorUriDsl.kt
index 54f65f8c223..61e4301a7db 100644
---
a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/JsonValidatorUriDsl.kt
+++
b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/JsonValidatorUriDsl.kt
@@ -170,6 +170,13 @@ public class JsonValidatorUriDsl(
it.property("errorHandler", errorHandler)
}
+ /**
+ * The used Jackson object mapper
+ */
+ public fun objectMapper(objectMapper: String) {
+ it.property("objectMapper", objectMapper)
+ }
+
/**
* To use a custom schema loader allowing for adding custom format
validation. The default
* implementation will create a schema loader that tries to determine the
schema version from the