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 <al...@liberition.com> 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 <am.kwe...@minvws.nl> --- .../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