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

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

commit 0f300da1db239875adeb5f91cb71ccac7223c464
Author: Marat Gubaidullin <ma...@talismancloud.io>
AuthorDate: Tue Nov 28 23:43:02 2023 -0500

    Set default expression as Simple
---
 karavan-core/src/core/api/CamelDefinitionApi.ts                    | 1 +
 .../camel/karavan/generator/CamelDefinitionApiGenerator.java       | 7 ++++---
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/karavan-core/src/core/api/CamelDefinitionApi.ts 
b/karavan-core/src/core/api/CamelDefinitionApi.ts
index aea9a15c..ea782fb0 100644
--- a/karavan-core/src/core/api/CamelDefinitionApi.ts
+++ b/karavan-core/src/core/api/CamelDefinitionApi.ts
@@ -2374,6 +2374,7 @@ export class CamelDefinitionApi {
     static createExpressionDefinition = (element: any): ExpressionDefinition 
=> { 
         const def = element ? new ExpressionDefinition({...element}) : new 
ExpressionDefinition();
         def.uuid = element?.uuid ? element.uuid : def.uuid; 
+        element = element !== undefined ? element : {simple: 
CamelDefinitionApi.createSimpleExpression({expression: ""})}
         if (element?.constant !== undefined) { 
             def.constant = 
CamelDefinitionApi.createConstantExpression(element.constant); 
         }
diff --git 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionApiGenerator.java
 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionApiGenerator.java
index 5e4ad388..eba2bb46 100644
--- 
a/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionApiGenerator.java
+++ 
b/karavan-generator/src/main/java/org/apache/camel/karavan/generator/CamelDefinitionApiGenerator.java
@@ -137,6 +137,9 @@ public final class CamelDefinitionApiGenerator extends 
AbstractGenerator {
 
         List<String> attrs = new ArrayList<>();
         AtomicBoolean hasId = new AtomicBoolean(false);
+        if (className.equals("ExpressionDefinition")) {
+            attrs.add("        element = element !== undefined ? element : 
{simple: CamelDefinitionApi.createSimpleExpression({expression: \"\"})}");
+        }
         
properties.keySet().stream().sorted(getComparator(stepName)).forEach(name -> {
             JsonObject aValue = properties.get(name);
             if ("id".equals(name)) {
@@ -164,13 +167,11 @@ public final class CamelDefinitionApiGenerator extends 
AbstractGenerator {
                         "        }";
                 String code = String.format(template, name, 
getAttributeClass(aValue));
                 attrs.add(code);
-            } else {
-
             }
         });
         String stringToRequired = getStringToRequired(obj, className);
         String s2 = stringToRequired.isEmpty() ? "" : "\n" + stringToRequired;
-        String s3 = attrs.size() > 0 ? "\n" + 
attrs.stream().collect(Collectors.joining("\n")) : "";
+        String s3 = !attrs.isEmpty() ? "\n" + String.join("\n", attrs) : "";
         return String.format(readFileText(modelTemplate), className, s2, s3);
     }
 

Reply via email to