You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2023/12/08 12:21:44 UTC
(camel) 02/02: camel-yaml-dsl - Add missing options on route
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 ee3d992d6a49284f5c04839efd3388971b1efe35
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Fri Dec 8 13:21:29 2023 +0100
camel-yaml-dsl - Add missing options on route
---
.../dsl/yaml/deserializers/RouteDefinitionDeserializer.java | 12 ++++++++++++
.../src/generated/resources/schema/camelYamlDsl.json | 12 ++++++++++++
.../test/groovy/org/apache/camel/dsl/yaml/RoutesTest.groovy | 4 ++++
3 files changed, 28 insertions(+)
diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/main/java/org/apache/camel/dsl/yaml/deserializers/RouteDefinitionDeserializer.java b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/main/java/org/apache/camel/dsl/yaml/deserializers/RouteDefinitionDeserializer.java
index 63e31c3f301..eed0d6a2e08 100644
--- a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/main/java/org/apache/camel/dsl/yaml/deserializers/RouteDefinitionDeserializer.java
+++ b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/main/java/org/apache/camel/dsl/yaml/deserializers/RouteDefinitionDeserializer.java
@@ -50,6 +50,12 @@ import org.snakeyaml.engine.v2.nodes.NodeTuple;
@YamlProperty(name = "messageHistory", type = "boolean"),
@YamlProperty(name = "logMask", type = "boolean"),
@YamlProperty(name = "trace", type = "boolean"),
+ @YamlProperty(name = "shutdownRoute", type = "enum:Default,Defer",
+ defaultValue = "Default",
+ description = "To control how to shut down the route."),
+ @YamlProperty(name = "shutdownRunningTask", type = "enum:CompleteCurrentTaskOnly,CompleteAllTasks",
+ defaultValue = "CompleteCurrentTaskOnly",
+ description = "To control how to shut down the route."),
@YamlProperty(name = "inputType", type = "object:org.apache.camel.model.InputTypeDefinition"),
@YamlProperty(name = "outputType", type = "object:org.apache.camel.model.OutputTypeDefinition"),
@YamlProperty(name = "from", type = "object:org.apache.camel.model.FromDefinition", required = true)
@@ -113,6 +119,12 @@ public class RouteDefinitionDeserializer extends YamlDeserializerBase<RouteDefin
case "messageHistory":
target.setMessageHistory(asText(val));
break;
+ case "shutdownRoute":
+ target.setShutdownRoute(asText(val));
+ break;
+ case "shutdownRunningTask":
+ target.setShutdownRunningTask(asText(val));
+ break;
case "trace":
target.setTrace(asText(val));
break;
diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl.json b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl.json
index 723c8d8cffc..c33911e3e73 100644
--- a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl.json
+++ b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl.json
@@ -4818,6 +4818,18 @@
"routePolicy" : {
"type" : "string"
},
+ "shutdownRoute" : {
+ "type" : "string",
+ "description" : "To control how to shut down the route.",
+ "default" : "Default",
+ "enum" : [ "Default", "Defer" ]
+ },
+ "shutdownRunningTask" : {
+ "type" : "string",
+ "description" : "To control how to shut down the route.",
+ "default" : "CompleteCurrentTaskOnly",
+ "enum" : [ "CompleteCurrentTaskOnly", "CompleteAllTasks" ]
+ },
"startupOrder" : {
"type" : "number"
},
diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/test/groovy/org/apache/camel/dsl/yaml/RoutesTest.groovy b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/test/groovy/org/apache/camel/dsl/yaml/RoutesTest.groovy
index e3cd01fdb3e..4e4a2e5b4c6 100644
--- a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/test/groovy/org/apache/camel/dsl/yaml/RoutesTest.groovy
+++ b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/test/groovy/org/apache/camel/dsl/yaml/RoutesTest.groovy
@@ -201,6 +201,8 @@ class RoutesTest extends YamlTestSupport {
autoStartup: false
startupOrder: 123
routePolicy: "myPolicy"
+ shutdownRoute: "Defer"
+ shutdownRunningTask: "CompleteAllTasks"
from:
uri: "direct:info"
steps:
@@ -215,6 +217,8 @@ class RoutesTest extends YamlTestSupport {
autoStartup == 'false'
startupOrder == 123
routePolicyRef == 'myPolicy'
+ shutdownRoute == "Defer"
+ shutdownRunningTask == "CompleteAllTasks"
input.endpointUri == 'direct:info'
with (outputs[0], LogDefinition) {