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-spring-boot.git


The following commit(s) were added to refs/heads/main by this push:
     new 63985048fcd CAMEL-22121: rest-dsl: Add client response validator
63985048fcd is described below

commit 63985048fcd492705e7fba2ef2d3839c3287565a
Author: Claus Ibsen <[email protected]>
AuthorDate: Tue Jun 17 14:18:21 2025 +0200

    CAMEL-22121: rest-dsl: Add client response validator
---
 .../camel-core-starter/src/main/docs/core.json              |  6 ++++++
 .../RestConfigurationDefinitionAutoConfiguration.java       |  9 ++++++++-
 .../springboot/RestConfigurationDefinitionProperties.java   | 13 +++++++++++++
 3 files changed, 27 insertions(+), 1 deletion(-)

diff --git a/components-starter/camel-core-starter/src/main/docs/core.json 
b/components-starter/camel-core-starter/src/main/docs/core.json
index 06de4871bef..121d696b30b 100644
--- a/components-starter/camel-core-starter/src/main/docs/core.json
+++ b/components-starter/camel-core-starter/src/main/docs/core.json
@@ -885,6 +885,12 @@
       "sourceType": 
"org.apache.camel.model.rest.springboot.RestConfigurationDefinitionProperties",
       "defaultValue": false
     },
+    {
+      "name": "camel.rest.validation-levels",
+      "type": "java.util.Map<java.lang.String,java.lang.Object>",
+      "description": "Allows to configure custom validation levels when using 
camel-openapi-validator with client request\/response validator.",
+      "sourceType": 
"org.apache.camel.model.rest.springboot.RestConfigurationDefinitionProperties"
+    },
     {
       "name": "camel.rest.xml-data-format",
       "type": "java.lang.String",
diff --git 
a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/rest/springboot/RestConfigurationDefinitionAutoConfiguration.java
 
b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/rest/springboot/RestConfigurationDefinitionAutoConfiguration.java
index bff6e7a300f..560e9ab3b4f 100644
--- 
a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/rest/springboot/RestConfigurationDefinitionAutoConfiguration.java
+++ 
b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/rest/springboot/RestConfigurationDefinitionAutoConfiguration.java
@@ -65,7 +65,8 @@ public class RestConfigurationDefinitionAutoConfiguration {
         properties.remove("dataFormatProperty");
         properties.remove("endpointProperty");
         properties.remove("corsHeaders");
-        
+        properties.remove("validationLevels");
+
         RestConfiguration definition = new RestConfiguration();
         CamelPropertiesHelper.setCamelProperties(camelContext, definition, 
properties, true);
         
@@ -94,6 +95,12 @@ public class RestConfigurationDefinitionAutoConfiguration {
             map.forEach((k, v) -> target.put(k, v.toString()));
             definition.setCorsHeaders(target);
         }
+        if (config.getValidationLevels() != null) {
+            Map<String, Object> map = 
CollectionHelper.flattenKeysInMap(config.getValidationLevels(), ".");
+            Map<String, String> target = new HashMap<>();
+            map.forEach((k, v) -> target.put(k, v.toString()));
+            definition.setValidationLevels(target);
+        }
         return definition;
     }
 }
\ No newline at end of file
diff --git 
a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/rest/springboot/RestConfigurationDefinitionProperties.java
 
b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/rest/springboot/RestConfigurationDefinitionProperties.java
index 57522ca8734..b9ede39f8d5 100644
--- 
a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/rest/springboot/RestConfigurationDefinitionProperties.java
+++ 
b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/rest/springboot/RestConfigurationDefinitionProperties.java
@@ -227,6 +227,11 @@ public class RestConfigurationDefinitionProperties {
      * Allows to configure custom CORS headers.
      */
     private Map<String, Object> corsHeaders;
+    /**
+     * Allows to configure custom validation levels when using
+     * camel-openapi-validator with client request/response validator.
+     */
+    private Map<String, Object> validationLevels;
 
     public String getComponent() {
         return component;
@@ -467,4 +472,12 @@ public class RestConfigurationDefinitionProperties {
     public void setCorsHeaders(Map<String, Object> corsHeaders) {
         this.corsHeaders = corsHeaders;
     }
+
+    public Map<String, Object> getValidationLevels() {
+        return validationLevels;
+    }
+
+    public void setValidationLevels(Map<String, Object> validationLevels) {
+        this.validationLevels = validationLevels;
+    }
 }
\ No newline at end of file

Reply via email to