This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch CAMEL-23610-normalize-yaml-dsl-eips in repository https://gitbox.apache.org/repos/asf/camel.git
commit 4d74402f6c34a71d3005cba36bc3892105951d5d Author: Claus Ibsen <[email protected]> AuthorDate: Mon May 25 21:38:52 2026 +0200 CAMEL-23610: docs - Normalize YAML DSL in user manual documentation to canonical form Co-Authored-By: Claude Opus 4.6 <[email protected]> --- .../ROOT/pages/camel-configuration-utilities.adoc | 10 +++-- .../modules/ROOT/pages/camel-jbang-kubernetes.adoc | 38 ++++++++++++------- .../modules/ROOT/pages/camel-jbang.adoc | 43 ++++++++++++---------- docs/user-manual/modules/ROOT/pages/endpoint.adoc | 19 ++++++++-- .../ROOT/pages/parameter-binding-annotations.adoc | 4 +- .../modules/ROOT/pages/route-configuration.adoc | 8 +++- .../modules/ROOT/pages/route-group.adoc | 8 +++- .../modules/ROOT/pages/route-template.adoc | 28 ++++++++++---- docs/user-manual/modules/ROOT/pages/routes.adoc | 3 +- .../modules/ROOT/pages/transformer.adoc | 4 +- .../ROOT/pages/using-propertyplaceholder.adoc | 17 +++++++-- docs/user-manual/modules/ROOT/pages/validator.adoc | 3 +- docs/user-manual/modules/ROOT/pages/variables.adoc | 29 ++++++++++----- 13 files changed, 144 insertions(+), 70 deletions(-) diff --git a/docs/user-manual/modules/ROOT/pages/camel-configuration-utilities.adoc b/docs/user-manual/modules/ROOT/pages/camel-configuration-utilities.adoc index d98f81c313c9..9a1f988baf0b 100644 --- a/docs/user-manual/modules/ROOT/pages/camel-configuration-utilities.adoc +++ b/docs/user-manual/modules/ROOT/pages/camel-configuration-utilities.adoc @@ -413,10 +413,12 @@ YAML:: keystorePassword: changeit trustStore: truststore.p12 trustStorePassword: changeit -- from: - uri: "direct:ssl" - steps: - - to: "mock:ssl" +- route: + from: + uri: direct:ssl + steps: + - to: + uri: mock:ssl ---- Spring Boot:: diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang-kubernetes.adoc b/docs/user-manual/modules/ROOT/pages/camel-jbang-kubernetes.adoc index f65494a29bad..fc3ef83678e4 100644 --- a/docs/user-manual/modules/ROOT/pages/camel-jbang-kubernetes.adoc +++ b/docs/user-manual/modules/ROOT/pages/camel-jbang-kubernetes.adoc @@ -696,10 +696,14 @@ to run the Camel application on Kubernetes. [source,yaml] ---- -- from: - uri: knative:event/camel.evt.type?name=my-broker - steps: - - to: log:info +- route: + from: + uri: knative:event/camel.evt.type + parameters: + name: my-broker + steps: + - to: + uri: log:info ---- The route consumes Knative events of type `camel.evt.type`. @@ -773,10 +777,12 @@ The Camel route that connects to a Knative channel in order to receive events lo [source,yaml] ---- -- from: - uri: knative:channel/my-channel - steps: - - to: log:info +- route: + from: + uri: knative:channel/my-channel + steps: + - to: + uri: log:info ---- The Knative channel is referenced by its name. @@ -853,12 +859,16 @@ The following route produces events on a Knative broker: [source, yaml] ---- -- from: - uri: timer:tick - steps: - - setBody: - constant: Hello Camel !!! - - to: knative:event/camel.evt.type?name=my-broker +- route: + from: + uri: timer:tick + steps: + - setBody: + constant: Hello Camel !!! + - to: + uri: knative:event/camel.evt.type + parameters: + name: my-broker ---- The route produces events of type `camel.evt.type` and pushes the events to the broker named `my-broker`. diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc b/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc index d95a9d8160a2..8635b5e886a6 100644 --- a/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc +++ b/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc @@ -1441,13 +1441,15 @@ And to use the kamelet, you could create the following route: [source,yaml] ---- -- from: - uri: "kamelet:cheese-source" - parameters: - period: "2000" - message: "Hello World" - steps: - - log: "${body}" +- route: + from: + uri: kamelet:cheese-source + parameters: + period: "2000" + message: "Hello World" + steps: + - log: + message: "${body}" ---- If you want to create a sink kamelet, then you just name it with sink as follows (based on log sink): @@ -1461,13 +1463,15 @@ You can then change the route to use the wine kamelet as follows: [source,yaml] ---- -- from: - uri: "kamelet:cheese-source" - parameters: - period: "2000" - message: "Hello World" - steps: - - to: "kamelet:wine-sink" +- route: + from: + uri: kamelet:cheese-source + parameters: + period: "2000" + message: "Hello World" + steps: + - to: + uri: kamelet:wine-sink ---- If you want to create a new Kamelet based on an existing Kamelet, for example, to create a new sink based on the existing MySQL: @@ -2612,11 +2616,12 @@ running on port 8080. For example, the following route in a file named `server.y [source,yaml] ---- -- from: - uri: "platform-http:/hello" - steps: - - set-body: - constant: "Hello World" +- route: + from: + uri: platform-http:/hello + steps: + - set-body: + constant: "Hello World" ---- Can be run with diff --git a/docs/user-manual/modules/ROOT/pages/endpoint.adoc b/docs/user-manual/modules/ROOT/pages/endpoint.adoc index 489cbfeb03eb..8777f4fade11 100644 --- a/docs/user-manual/modules/ROOT/pages/endpoint.adoc +++ b/docs/user-manual/modules/ROOT/pages/endpoint.adoc @@ -85,7 +85,9 @@ YAML:: ---- - route: from: - uri: file:messages/foo?sorter=#bean:mySpecialFileSorter + uri: file:messages/foo + parameters: + sorter: "#bean:mySpecialFileSorter" steps: - to: uri: jms:queue:foo @@ -242,7 +244,10 @@ YAML:: uri: file:inbox steps: - to: - uri: ftp:[email protected]?password=RAW(se+re?t&23)&binary=true + uri: ftp:[email protected] + parameters: + password: "RAW(se+re?t&23)" + binary: true ---- YAML expanded:: @@ -305,7 +310,10 @@ YAML:: uri: file:inbox steps: - to: - uri: "ftp:[email protected]?password=RAW($simple{env:MY_FTP_PASSWORD})&binary=true" + uri: ftp:[email protected] + parameters: + password: "RAW($simple{env:MY_FTP_PASSWORD})" + binary: true ---- ==== @@ -353,7 +361,10 @@ YAML:: uri: file:inbox steps: - to: - uri: "ftp:[email protected]?password={{myFtpPassword}}&binary=true" + uri: ftp:[email protected] + parameters: + password: "{{myFtpPassword}}" + binary: true ---- ==== diff --git a/docs/user-manual/modules/ROOT/pages/parameter-binding-annotations.adoc b/docs/user-manual/modules/ROOT/pages/parameter-binding-annotations.adoc index fee5391a9e37..cb2081b0c2b6 100644 --- a/docs/user-manual/modules/ROOT/pages/parameter-binding-annotations.adoc +++ b/docs/user-manual/modules/ROOT/pages/parameter-binding-annotations.adoc @@ -146,7 +146,9 @@ YAML:: uri: activemq:someQueue steps: - to: - uri: bean:myBean?method=doSomething + uri: bean:myBean + parameters: + method: doSomething ---- ==== diff --git a/docs/user-manual/modules/ROOT/pages/route-configuration.adoc b/docs/user-manual/modules/ROOT/pages/route-configuration.adoc index 64582998a63b..8590ef5307d3 100644 --- a/docs/user-manual/modules/ROOT/pages/route-configuration.adoc +++ b/docs/user-manual/modules/ROOT/pages/route-configuration.adoc @@ -262,10 +262,14 @@ And in the YAML routes you can assign which configurations to use: # refer to the route configuration by the id to use for this route routeConfigurationId: "yamlError" from: - uri: "timer:yaml?period=3s" + uri: timer:yaml + parameters: + period: 3s steps: - setBody: - simple: "Timer fired ${header.CamelTimerCounter} times" + expression: + simple: + expression: "Timer fired ${header.CamelTimerCounter} times" - to: uri: "log:yaml" parameters: diff --git a/docs/user-manual/modules/ROOT/pages/route-group.adoc b/docs/user-manual/modules/ROOT/pages/route-group.adoc index 9976f32d3292..3e070cc84cd0 100644 --- a/docs/user-manual/modules/ROOT/pages/route-group.adoc +++ b/docs/user-manual/modules/ROOT/pages/route-group.adoc @@ -62,7 +62,9 @@ YAML:: uri: activemq:queue:order.in steps: - to: - uri: bean:orderServer?method=validate + uri: bean:orderServer + parameters: + method: validate - to: uri: direct:processOrder - route: @@ -72,7 +74,9 @@ YAML:: uri: direct:processOrder steps: - to: - uri: bean:orderService?method=process + uri: bean:orderService + parameters: + method: process - to: uri: activemq:queue:order.out - route: diff --git a/docs/user-manual/modules/ROOT/pages/route-template.adoc b/docs/user-manual/modules/ROOT/pages/route-template.adoc index a23f99afb9bf..3d479f67ab45 100644 --- a/docs/user-manual/modules/ROOT/pages/route-template.adoc +++ b/docs/user-manual/modules/ROOT/pages/route-template.adoc @@ -66,7 +66,9 @@ YAML:: - name: "myPeriod" defaultValue: "3s" from: - uri: "timer:{{name}}?period={{myPeriod}}" + uri: "timer:{{name}}" + parameters: + period: "{{myPeriod}}" steps: - setBody: expression: @@ -159,14 +161,18 @@ Notice how we use `?` in the replyTo option below: ---- - route: from: - uri: "timer:{{name}}?period={{myPeriod}}" + uri: "timer:{{name}}" + parameters: + period: "{{myPeriod}}" steps: - setBody: expression: simple: expression: "{{greeting}} ${body}" - to: - uri: "jms:myqueue?replyTo={{?replyToQueue}}" + uri: "jms:myqueue" + parameters: + replyTo: "{{?replyToQueue}}" ---- ==== @@ -940,7 +946,9 @@ Notice how the Groovy code can be inlined directly in the route template in DSL uri: direct:s3-store steps: - to: - uri: "aws2-s3:{{bucket}}?amazonS3Client=#{{myClient}}" + uri: "aws2-s3:{{bucket}}" + parameters: + amazonS3Client: "#{{myClient}}" ---- ==== @@ -1006,7 +1014,9 @@ and can be omitted. For example in this example as we inject the bean via its be uri: direct:s3-store steps: - to: - uri: "aws2-s3:{{bucket}}?amazonS3Client=#{{myClient}}" + uri: "aws2-s3:{{bucket}}" + parameters: + amazonS3Client: "#{{myClient}}" ---- ==== @@ -1114,7 +1124,9 @@ YAML:: uri: direct:s3-store steps: - to: - uri: "aws2-s3:{{bucket}}?amazonS3Client=#{{myClient}}" + uri: "aws2-s3:{{bucket}}" + parameters: + amazonS3Client: "#{{myClient}}" ---- ==== @@ -1194,7 +1206,9 @@ YAML:: uri: direct:s3-store steps: - to: - uri: "aws2-s3:{{bucket}}?amazonS3Client=#{{myClient}}" + uri: "aws2-s3:{{bucket}}" + parameters: + amazonS3Client: "#{{myClient}}" ---- ==== diff --git a/docs/user-manual/modules/ROOT/pages/routes.adoc b/docs/user-manual/modules/ROOT/pages/routes.adoc index db45fb736e46..abbdb8fa502f 100644 --- a/docs/user-manual/modules/ROOT/pages/routes.adoc +++ b/docs/user-manual/modules/ROOT/pages/routes.adoc @@ -251,7 +251,8 @@ YAML:: steps: - unmarshal: jaxb: {} - - to: "direct:out" + - to: + uri: direct:out ---- ==== diff --git a/docs/user-manual/modules/ROOT/pages/transformer.adoc b/docs/user-manual/modules/ROOT/pages/transformer.adoc index 97eb74e42cc7..ac8f5c3b45cb 100644 --- a/docs/user-manual/modules/ROOT/pages/transformer.adoc +++ b/docs/user-manual/modules/ROOT/pages/transformer.adoc @@ -194,7 +194,9 @@ YAML:: ---- - transformers: endpointTransformer: - uri: component:componentPathOptions?mappingFile=myMapping.xml + uri: component:componentPathOptions + parameters: + mappingFile: myMapping.xml fromType: xml toType: json ---- diff --git a/docs/user-manual/modules/ROOT/pages/using-propertyplaceholder.adoc b/docs/user-manual/modules/ROOT/pages/using-propertyplaceholder.adoc index c197db4901e5..e52fe318a419 100644 --- a/docs/user-manual/modules/ROOT/pages/using-propertyplaceholder.adoc +++ b/docs/user-manual/modules/ROOT/pages/using-propertyplaceholder.adoc @@ -272,7 +272,9 @@ YAML:: uri: direct:start steps: - to: - uri: "file:outbox?bufferSize={{buf}}" + uri: file:outbox + parameters: + bufferSize: "{{buf}}" ---- ==== @@ -399,7 +401,9 @@ YAML:: uri: direct:start steps: - to: - uri: "elasticsearch:foo?query={{myQuery?nested=false}}" + uri: elasticsearch:foo + parameters: + query: "{{myQuery?nested=false}}" ---- ==== @@ -483,7 +487,10 @@ YAML:: uri: direct:start steps: - to: - uri: "log:{{cool.start}}?showBodyType=false&showExchangeId={{cool.showid}}" + uri: "log:{{cool.start}}" + parameters: + showBodyType: "false" + showExchangeId: "{{cool.showid}}" - to: uri: "mock:{{cool.result}}" ---- @@ -851,7 +858,9 @@ YAML:: - choice: disabled: "{{boolean:region == 'EMEA'}}" when: - - simple: "${header.RetryAttempts} == null" + - expression: + simple: + expression: "${header.RetryAttempts} == null" steps: - setProperty: name: "HttpMessageMethod" diff --git a/docs/user-manual/modules/ROOT/pages/validator.adoc b/docs/user-manual/modules/ROOT/pages/validator.adoc index ddacb23317d2..f92328296c45 100644 --- a/docs/user-manual/modules/ROOT/pages/validator.adoc +++ b/docs/user-manual/modules/ROOT/pages/validator.adoc @@ -77,7 +77,8 @@ YAML:: predicateValidator: type: csv:CSVOrder expression: - simple: "${body} contains '{name:XOrder}'" + simple: + expression: "${body} contains '{name:XOrder}'" ---- ==== diff --git a/docs/user-manual/modules/ROOT/pages/variables.adoc b/docs/user-manual/modules/ROOT/pages/variables.adoc index 1462a9bf0b94..239019c0e855 100644 --- a/docs/user-manual/modules/ROOT/pages/variables.adoc +++ b/docs/user-manual/modules/ROOT/pages/variables.adoc @@ -395,8 +395,10 @@ YAML:: from: uri: direct:service steps: - - to: http:myservice - - to: log:after + - to: + uri: http:myservice + - to: + uri: log:after ---- ==== @@ -442,12 +444,13 @@ YAML:: ---- - route: from: - uri: "direct:service" + uri: direct:service steps: - to: uri: http:myservice variableReceive: myVar - - to: "log:after" + - to: + uri: log:after ---- ==== @@ -517,15 +520,21 @@ YAML:: ---- - route: from: - uri: "direct:start" - variableReceive: "myKey" + uri: direct:start + variableReceive: myKey steps: - transform: - simple: "Bye ${body}" - - to: "mock:foo" + expression: + simple: + expression: "Bye ${body}" + - to: + uri: mock:foo - setBody: - variable: "myKey" - - to: "mock:result" + expression: + variable: + expression: myKey + - to: + uri: mock:result ---- ====
