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
commit 2a12be6e29bf66f9a1b70e14c0da8688422bf262 Author: Claus Ibsen <[email protected]> AuthorDate: Tue Apr 12 09:20:25 2022 +0200 CAMEL-17943: camel-yaml-dsl - Method call expression should not be required --- .../dsl/yaml/deserializers/ModelDeserializers.java | 18 ------------------ .../maven/dsl/yaml/GenerateYamlDeserializersMojo.java | 10 ++++++++-- .../src/generated/resources/camel-yaml-dsl.json | 17 +++-------------- .../src/generated/resources/camelYamlDsl.json | 17 +++-------------- 4 files changed, 14 insertions(+), 48 deletions(-) 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 e3b451334cd..311c9bac119 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 @@ -8276,7 +8276,6 @@ public final class ModelDeserializers extends YamlDeserializerSupport { order = org.apache.camel.dsl.yaml.common.YamlDeserializerResolver.ORDER_LOWEST - 1, properties = { @YamlProperty(name = "bean-type", type = "string"), - @YamlProperty(name = "expression", type = "string", required = true), @YamlProperty(name = "id", type = "string"), @YamlProperty(name = "method", type = "string"), @YamlProperty(name = "ref", type = "string"), @@ -8308,11 +8307,6 @@ public final class ModelDeserializers extends YamlDeserializerSupport { target.setBeanTypeName(val); break; } - case "expression": { - String val = asText(node); - target.setExpression(val); - break; - } case "id": { String val = asText(node); target.setId(val); @@ -15683,7 +15677,6 @@ public final class ModelDeserializers extends YamlDeserializerSupport { order = org.apache.camel.dsl.yaml.common.YamlDeserializerResolver.ORDER_LOWEST - 1, properties = { @YamlProperty(name = "end-token", type = "string"), - @YamlProperty(name = "expression", type = "string", required = true), @YamlProperty(name = "group", type = "string"), @YamlProperty(name = "group-delimiter", type = "string"), @YamlProperty(name = "header-name", type = "string"), @@ -15721,11 +15714,6 @@ public final class ModelDeserializers extends YamlDeserializerSupport { target.setEndToken(val); break; } - case "expression": { - String val = asText(node); - target.setExpression(val); - break; - } case "group": { String val = asText(node); target.setGroup(val); @@ -17397,7 +17385,6 @@ public final class ModelDeserializers extends YamlDeserializerSupport { types = org.apache.camel.model.language.XMLTokenizerExpression.class, order = org.apache.camel.dsl.yaml.common.YamlDeserializerResolver.ORDER_LOWEST - 1, properties = { - @YamlProperty(name = "expression", type = "string", required = true), @YamlProperty(name = "group", type = "number"), @YamlProperty(name = "header-name", type = "string"), @YamlProperty(name = "id", type = "string"), @@ -17424,11 +17411,6 @@ public final class ModelDeserializers extends YamlDeserializerSupport { protected boolean setProperty(XMLTokenizerExpression target, String propertyKey, String propertyName, Node node) { switch(propertyKey) { - case "expression": { - String val = asText(node); - target.setExpression(val); - break; - } case "group": { String val = asText(node); target.setGroup(val); diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl-maven-plugin/src/main/java/org/apache/camel/maven/dsl/yaml/GenerateYamlDeserializersMojo.java b/dsl/camel-yaml-dsl/camel-yaml-dsl-maven-plugin/src/main/java/org/apache/camel/maven/dsl/yaml/GenerateYamlDeserializersMojo.java index 2a1e696f859..a9ab21ad219 100644 --- a/dsl/camel-yaml-dsl/camel-yaml-dsl-maven-plugin/src/main/java/org/apache/camel/maven/dsl/yaml/GenerateYamlDeserializersMojo.java +++ b/dsl/camel-yaml-dsl/camel-yaml-dsl-maven-plugin/src/main/java/org/apache/camel/maven/dsl/yaml/GenerateYamlDeserializersMojo.java @@ -463,7 +463,7 @@ public class GenerateYamlDeserializersMojo extends GenerateYamlSupportMojo { setProperty.beginControlFlow("switch(propertyKey)"); for (FieldInfo field : fields(info)) { - if (generateSetValue(setProperty, field, properties)) { + if (generateSetValue(modelName.get(), setProperty, field, properties)) { caseAdded = true; } } @@ -606,7 +606,7 @@ public class GenerateYamlDeserializersMojo extends GenerateYamlSupportMojo { } @SuppressWarnings("MethodLength") - private boolean generateSetValue(CodeBlock.Builder cb, FieldInfo field, Collection<AnnotationSpec> annotations) { + private boolean generateSetValue(String modelName, CodeBlock.Builder cb, FieldInfo field, Collection<AnnotationSpec> annotations) { if (hasAnnotation(field, XML_TRANSIENT_CLASS) && !hasAnnotation(field, DSL_PROPERTY_ANNOTATION)) { return false; } @@ -823,6 +823,12 @@ public class GenerateYamlDeserializersMojo extends GenerateYamlSupportMojo { } } + if ("expression".equals(fieldName) && !expressionRequired(modelName)) { + // special for some language models which does not have required expression + // which should be skipped + return true; + } + // // Others // 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 c56679fae0d..817d2942861 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 @@ -6162,9 +6162,6 @@ "bean-type" : { "type" : "string" }, - "expression" : { - "type" : "string" - }, "id" : { "type" : "string" }, @@ -6182,8 +6179,7 @@ "type" : "boolean" } } - } ], - "required" : [ "expression" ] + } ] }, "org.apache.camel.model.language.MvelExpression" : { "oneOf" : [ { @@ -6292,9 +6288,6 @@ "end-token" : { "type" : "string" }, - "expression" : { - "type" : "string" - }, "group" : { "type" : "string" }, @@ -6330,7 +6323,7 @@ } } } ], - "required" : [ "expression", "token" ] + "required" : [ "token" ] }, "org.apache.camel.model.language.XMLTokenizerExpression" : { "oneOf" : [ { @@ -6338,9 +6331,6 @@ }, { "type" : "object", "properties" : { - "expression" : { - "type" : "string" - }, "group" : { "type" : "number" }, @@ -6358,8 +6348,7 @@ "type" : "boolean" } } - } ], - "required" : [ "expression" ] + } ] }, "org.apache.camel.model.language.XPathExpression" : { "oneOf" : [ { 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 ea19a6619a7..f5c77af2d0e 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 @@ -6063,9 +6063,6 @@ "beanType" : { "type" : "string" }, - "expression" : { - "type" : "string" - }, "id" : { "type" : "string" }, @@ -6083,8 +6080,7 @@ "type" : "boolean" } } - } ], - "required" : [ "expression" ] + } ] }, "org.apache.camel.model.language.MvelExpression" : { "oneOf" : [ { @@ -6193,9 +6189,6 @@ "endToken" : { "type" : "string" }, - "expression" : { - "type" : "string" - }, "group" : { "type" : "string" }, @@ -6231,7 +6224,7 @@ } } } ], - "required" : [ "expression", "token" ] + "required" : [ "token" ] }, "org.apache.camel.model.language.XMLTokenizerExpression" : { "oneOf" : [ { @@ -6239,9 +6232,6 @@ }, { "type" : "object", "properties" : { - "expression" : { - "type" : "string" - }, "group" : { "type" : "number" }, @@ -6259,8 +6249,7 @@ "type" : "boolean" } } - } ], - "required" : [ "expression" ] + } ] }, "org.apache.camel.model.language.XPathExpression" : { "oneOf" : [ {
