From 447ec57b446d35edbee4645be44b56bc64ef5a4c Mon Sep 17 00:00:00 2001 From: smjain <49463903+allthingssecurity@users.noreply.github.com> Date: Thu, 15 Oct 2026 05:55:57 +0530 Subject: [PATCH] CAMEL-25677: camel-wasm - remove the wasm language Since CAMEL-25531 the wasm endpoint runs WASI command modules. The wasm language still called a named exported function through the old alloc/dealloc and JSON envelope protocol. As decided on the review of CAMEL-25606, the language is removed instead of being moved to WASI; the module was experimental. Removed: - camel-wasm: WasmLanguage and WasmExpression, their generated language metadata, the language page, and the helpers only the language used (WasmFunction, WasmSupport, Wasm.FN_ALLOC, Wasm.FN_DEALLOC), with the Jackson dependencies, the language tests and the functions.wasm test module and its Rust sources. The endpoint test that used functions.wasm as a module without _start now builds that module from WAT. - core: the WasmExpression model, WasmExpressionReifier, wasm(...) in Builder, ExpressionClause, ExpressionClauseSupport and LanguageBuilderFactory, and the Java DSL writer support; the generated model metadata, XML, YAML and Java DSL parsers, writers and YAML schemas are regenerated, and so are the catalog (language, model and docs entries, the XML and YAML schemas), the language list of camel-main, ArtifactUtils and the endpoint DSL javadoc. - wasm in the language names of the language component, the camel-jbang checks and refactorings, and the YAML validator. The wasm endpoint is unchanged. The 4.24 upgrade guide says how to call a module with the endpoint instead. Co-Authored-By: Claude Opus 5.5 --- .../camel/catalog/components/language.json | 2 +- .../org/apache/camel/catalog/docs.properties | 1 - .../camel/catalog/docs/wasm-language.adoc | 255 ------------------ .../apache/camel/catalog/languages.properties | 1 - .../apache/camel/catalog/languages/wasm.json | 26 -- .../apache/camel/catalog/models.properties | 1 - .../camel/catalog/models/aggregate.json | 8 +- .../apache/camel/catalog/models/cache.json | 2 +- .../apache/camel/catalog/models/delay.json | 2 +- .../camel/catalog/models/dynamicRouter.json | 2 +- .../apache/camel/catalog/models/enrich.json | 2 +- .../apache/camel/catalog/models/filter.json | 2 +- .../catalog/models/idempotentConsumer.json | 2 +- .../org/apache/camel/catalog/models/loop.json | 2 +- .../camel/catalog/models/onException.json | 6 +- .../apache/camel/catalog/models/onWhen.json | 2 +- .../camel/catalog/models/pollEnrich.json | 2 +- .../catalog/models/predicateValidator.json | 2 +- .../catalog/models/propertyExpression.json | 2 +- .../camel/catalog/models/recipientList.json | 2 +- .../camel/catalog/models/resequence.json | 2 +- .../camel/catalog/models/routingSlip.json | 2 +- .../apache/camel/catalog/models/script.json | 2 +- .../apache/camel/catalog/models/setBody.json | 2 +- .../camel/catalog/models/setHeader.json | 2 +- .../camel/catalog/models/setProperty.json | 2 +- .../camel/catalog/models/setVariable.json | 2 +- .../org/apache/camel/catalog/models/sort.json | 2 +- .../apache/camel/catalog/models/split.json | 2 +- .../catalog/models/stickyLoadBalancer.json | 2 +- .../apache/camel/catalog/models/switch.json | 2 +- .../apache/camel/catalog/models/throttle.json | 4 +- .../camel/catalog/models/transform.json | 2 +- .../apache/camel/catalog/models/validate.json | 2 +- .../org/apache/camel/catalog/models/wasm.json | 23 -- .../org/apache/camel/catalog/models/when.json | 2 +- .../camel/catalog/schemas/camel-spring.xsd | 51 ---- .../camel/catalog/schemas/camel-xml-io.xsd | 51 ---- .../catalog/schemas/camelYamlDsl-model.json | 77 ------ .../camel/component/language/language.json | 2 +- .../component/language/LanguageEndpoint.java | 2 +- components/camel-wasm/pom.xml | 14 - .../org/apache/camel/language/wasm/wasm.json | 26 -- .../org/apache/camel/language.properties | 7 - .../services/org/apache/camel/language/wasm | 2 - .../src/main/docs/wasm-language.adoc | 255 ------------------ .../camel/language/wasm/WasmExpression.java | 168 ------------ .../camel/language/wasm/WasmLanguage.java | 85 ------ .../main/java/org/apache/camel/wasm/Wasm.java | 2 - .../org/apache/camel/wasm/WasmFunction.java | 168 ------------ .../org/apache/camel/wasm/WasmSupport.java | 51 ---- .../component/wasm/WasmComponentTest.java | 4 +- .../camel/language/wasm/WasmLanguageTest.java | 129 --------- .../apache/camel/wasm/WasmFunctionTest.java | 177 ------------ .../src/test/resources/functions.wasm | Bin 2216042 -> 0 bytes .../camel-wasm/src/test/rust/Cargo.lock | 124 --------- .../camel-wasm/src/test/rust/Cargo.toml | 37 --- components/camel-wasm/src/test/rust/build.sh | 26 -- .../camel-wasm/src/test/rust/functions.rs | 134 --------- .../org/apache/camel/model/aggregate.json | 8 +- .../org/apache/camel/model/cache.json | 2 +- .../org/apache/camel/model/delay.json | 2 +- .../org/apache/camel/model/dynamicRouter.json | 2 +- .../org/apache/camel/model/enrich.json | 2 +- .../org/apache/camel/model/filter.json | 2 +- .../camel/model/idempotentConsumer.json | 2 +- .../org/apache/camel/model/language/wasm.json | 23 -- .../loadbalancer/stickyLoadBalancer.json | 2 +- .../META-INF/org/apache/camel/model/loop.json | 2 +- .../org/apache/camel/model/onException.json | 6 +- .../org/apache/camel/model/onWhen.json | 2 +- .../org/apache/camel/model/pollEnrich.json | 2 +- .../camel/model/propertyExpression.json | 2 +- .../org/apache/camel/model/recipientList.json | 2 +- .../org/apache/camel/model/resequence.json | 2 +- .../org/apache/camel/model/routingSlip.json | 2 +- .../org/apache/camel/model/script.json | 2 +- .../org/apache/camel/model/setBody.json | 2 +- .../org/apache/camel/model/setHeader.json | 2 +- .../org/apache/camel/model/setProperty.json | 2 +- .../org/apache/camel/model/setVariable.json | 2 +- .../META-INF/org/apache/camel/model/sort.json | 2 +- .../org/apache/camel/model/split.json | 2 +- .../org/apache/camel/model/switch.json | 2 +- .../org/apache/camel/model/throttle.json | 4 +- .../org/apache/camel/model/transform.json | 2 +- .../org/apache/camel/model/validate.json | 2 +- .../model/validator/predicateValidator.json | 2 +- .../META-INF/org/apache/camel/model/when.json | 2 +- .../org/apache/camel/model.properties | 1 - .../apache/camel/model/language/jaxb.index | 1 - .../org/apache/camel/builder/Builder.java | 18 -- .../camel/builder/ExpressionClause.java | 23 -- .../builder/ExpressionClauseSupport.java | 26 -- .../camel/builder/LanguageBuilderFactory.java | 18 -- .../camel/model/language/WasmExpression.java | 102 ------- .../reifier/language/ExpressionReifier.java | 3 - .../language/WasmExpressionReifier.java | 42 --- .../camel/java/out/JavaDslModelWriter.java | 17 -- .../java/out/JavaDslModelWriterSupport.java | 6 - .../camel/java/in/replay-builder-methods.txt | 2 - .../apache/camel/main/languages.properties | 1 - .../org/apache/camel/util/ArtifactUtils.java | 1 - .../org/apache/camel/xml/in/ModelParser.java | 7 - .../org/apache/camel/xml/out/ModelWriter.java | 11 - .../camel/yaml/out/YamlModelWriter.java | 11 - .../modules/languages/examples/json/wasm.json | 1 - docs/components/modules/languages/nav.adoc | 1 - .../languages/pages/wasm-language.adoc | 1 - .../pages/camel-4x-upgrade-guide-4_24.adoc | 10 +- .../endpoint/StaticEndpointBuilders.java | 8 +- .../dsl/LanguageEndpointBuilderFactory.java | 8 +- .../jbang/core/commands/ai/BeanRefChecks.java | 2 +- .../core/commands/tui/RouteRefactorings.java | 2 +- .../ExpressionDeserializers.java | 5 - .../deserializers/ModelDeserializers.java | 86 ------ .../ModelDeserializersResolver.java | 2 - .../dsl/yaml/validator/YamlValidator.java | 2 +- .../schema/camelYamlDsl-canonical.json | 47 ---- .../resources/schema/camelYamlDsl-model.json | 77 ------ .../resources/schema/camelYamlDsl.json | 100 ------- 121 files changed, 93 insertions(+), 2613 deletions(-) delete mode 100644 catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/wasm-language.adoc delete mode 100644 catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/languages/wasm.json delete mode 100644 catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/wasm.json delete mode 100644 components/camel-wasm/src/generated/resources/META-INF/org/apache/camel/language/wasm/wasm.json delete mode 100644 components/camel-wasm/src/generated/resources/META-INF/services/org/apache/camel/language.properties delete mode 100644 components/camel-wasm/src/generated/resources/META-INF/services/org/apache/camel/language/wasm delete mode 100644 components/camel-wasm/src/main/docs/wasm-language.adoc delete mode 100644 components/camel-wasm/src/main/java/org/apache/camel/language/wasm/WasmExpression.java delete mode 100644 components/camel-wasm/src/main/java/org/apache/camel/language/wasm/WasmLanguage.java delete mode 100644 components/camel-wasm/src/main/java/org/apache/camel/wasm/WasmFunction.java delete mode 100644 components/camel-wasm/src/main/java/org/apache/camel/wasm/WasmSupport.java delete mode 100644 components/camel-wasm/src/test/java/org/apache/camel/language/wasm/WasmLanguageTest.java delete mode 100644 components/camel-wasm/src/test/java/org/apache/camel/wasm/WasmFunctionTest.java delete mode 100755 components/camel-wasm/src/test/resources/functions.wasm delete mode 100644 components/camel-wasm/src/test/rust/Cargo.lock delete mode 100644 components/camel-wasm/src/test/rust/Cargo.toml delete mode 100755 components/camel-wasm/src/test/rust/build.sh delete mode 100644 components/camel-wasm/src/test/rust/functions.rs delete mode 100644 core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/language/wasm.json delete mode 100644 core/camel-core-model/src/main/java/org/apache/camel/model/language/WasmExpression.java delete mode 100644 core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/WasmExpressionReifier.java delete mode 120000 docs/components/modules/languages/examples/json/wasm.json delete mode 120000 docs/components/modules/languages/pages/wasm-language.adoc diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/language.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/language.json index 201bfbbf49042..fb260589ad386 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/language.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/language.json @@ -33,7 +33,7 @@ "CamelLanguageScript": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String or Expression", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The script to execute provided in the header. Takes precedence over script configured on the endpoint.", "constantName": "org.apache.camel.component.language.LanguageConstants#LANGUAGE_SCRIPT" } }, "properties": { - "languageName": { "index": 0, "kind": "path", "displayName": "Language Name", "group": "producer", "label": "", "required": true, "type": "enum", "javaType": "java.lang.String", "enum": [ "bean", "constant", "datasonnet", "exchangeProperty", "file", "groovy", "header", "hl7terser", "java", "joor", "jq", "js", "jsonpath", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Sets the name of the language to use" }, + "languageName": { "index": 0, "kind": "path", "displayName": "Language Name", "group": "producer", "label": "", "required": true, "type": "enum", "javaType": "java.lang.String", "enum": [ "bean", "constant", "datasonnet", "exchangeProperty", "file", "groovy", "header", "hl7terser", "java", "joor", "jq", "js", "jsonpath", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Sets the name of the language to use" }, "resourceUri": { "index": 1, "kind": "path", "displayName": "Resource Uri", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "description": "Path to the resource, or a reference to lookup a bean in the Registry to use as the resource" }, "allowContextMapAll": { "index": 2, "kind": "parameter", "displayName": "Allow Context Map All", "group": "producer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Sets whether the context map should allow access to all details. By default only the message body and headers can be accessed. This option can be enabled for full access to the current Exchange and CamelContext. Doing so impose a potential security risk as this opens access to the full power of CamelContext API." }, "allowTemplateFromHeader": { "index": 3, "kind": "parameter", "displayName": "Allow Template From Header", "group": "producer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to allow to use resource template from header or not (default false). Enabling this allows to specify dynamic templates via message header. However this can be seen as a potential security vulnerability if the header is coming from a malicious user, so use this with care." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs.properties b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs.properties index 488fc5343155c..8876be215cf65 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs.properties +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs.properties @@ -691,7 +691,6 @@ vertx-http-component vertx-websocket-component wal wasm-component -wasm-language weather-component weaviate-component web3j-component diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/wasm-language.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/wasm-language.adoc deleted file mode 100644 index e78879a52e012..0000000000000 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/wasm-language.adoc +++ /dev/null @@ -1,255 +0,0 @@ -= Wasm Language -:doctitle: Wasm -:shortname: wasm -:artifactid: camel-wasm -:description: Call a wasm (web assembly) function -:since: 4.5 -:supportlevel: Experimental -:tabs-sync-option: - -*Since Camel {since}* - -Camel supports Wasm to allow using xref:manual::expression.adoc[Expression] or xref:manual::predicate.adoc[Predicate]. - -== Wasm Options - -// language options: START -include::partial$language-options.adoc[] -// language options: END - - -== Writing A Wasm function - -In _Wasm_, sharing objects between the host, in this case the _JVM_, and the _Wasm_ module is deliberately restricted and as of today, it requires a number of steps: - -1. From the _host_, call a function inside the webassembly module that allocates a block of memory and returns its address, then save it -2. From the _host_, write the data that should be exchanged with the _Wasm_ module to the saved address -3. From the _host_, invoke the required function passing both the address where the data is written and its size -4. From the _Wasm_ module, read the data and process it -5. From the _host_, release the memory when done - -=== Providing functions for memory management - -The module hosting the function *must* provide the functions to allocate/deallocate memory that *must* be named `alloc` and `dealloc` respectively. - -Here's an example of the mentioned functions implemented in https://www.rust-lang.org[Rust]: - -[source,rust] ----- -pub extern "C" fn alloc(size: u32) -> *mut u8 { - let mut buf = Vec::with_capacity(size as usize); - let ptr = buf.as_mut_ptr(); - - // tell Rust not to clean this up - mem::forget(buf); - - ptr -} - -pub unsafe extern "C" fn dealloc(ptr: &mut u8, len: i32) { - // Retakes the pointer which allows its memory to be freed. - let _ = Vec::from_raw_parts(ptr, 0, len as usize); -} ----- - -=== Data shapes - -It is not possible to share a Java object with the Wasm module directly, and as mentioned before, -data exchange leverages Wasm's memory that can be accessed by both the host and the guest runtimes. -At this stage, the data structure that the component exchange with the Wasm function is a subset of the Apache Camel Message, -containing headers the body encoded as a base64 string: - -._Java-only: data wrapper class definition_ -[source,java] ----- -public static class Wrapper { - @JsonProperty - public Map headers = new HashMap<>(); - - @JsonProperty - public byte[] body; -} ----- - -=== Data processing - -The component expects the processing function to have the following signature: - -[source,rust] ----- -fn function(ptr: u32, len: u32) -> u64 ----- - -* it accepts two 32bit unsigned integers arguments -** a pointer to the memory location when the input data has been written (`ptr`) -** the size of the input data (`len`) -* it returns a 64bit unsigned integer where: -** the first 32bit represents a pointer to the return data -** the last 31bit represents the size of the return data -** the most significant bit of the returned data size is reserved to signal an error, so if it is set, then the return data could contain an error message/code/etc - -Here's an example of a complete function: - -[source,rust] ----- -#[derive(Serialize, Deserialize)] -struct Message { - headers: HashMap, - - #[serde(with = "Base64Standard")] - body: Vec, -} - -#[cfg_attr(all(target_arch = "wasm32"), export_name = "transform")] -#[no_mangle] -pub extern fn transform(ptr: u32, len: u32) -> u64 { - let bytes = unsafe { - slice::from_raw_parts_mut( - ptr as *mut u8, - len as usize) - }; - - let msg: Message = serde_json::from_slice(bytes).unwrap(); - let res = String::from_utf8(msg.body).unwrap().to_uppercase().as_bytes().to_vec(); - - let out_len = res.len(); - let out_ptr = alloc(out_len as u32); - - unsafe { - std::ptr::copy_nonoverlapping( - res.as_ptr(), - out_ptr, - out_len as usize) - }; - - return ((out_ptr as u64) << 32) | out_len as u64; -} ----- - -=== Errors and module state - -The module is instantiated once per `wasm` expression and that instance handles every message, one at a time, so data -the module keeps in its memory or globals carries over from one message to the next. - -* When the function returns with the error bit set, the error data is released with `dealloc` using its size without -the error bit, the error data becomes the message of the exception, and the instance is kept. -* When the call fails without returning, for example on a Rust `panic` or any other Wasm trap, the instance is -discarded and a new one is created from the module for the next message. Whatever the failed call allocated can no -longer be released, so keeping the instance would grow its memory with every failure. Any state the module kept in -the discarded instance is lost. -On a route where every call fails this way, the module is instantiated again for every message (its data segments -are copied and any start function runs), which costs more than a call on a kept instance. - -== Examples - -Supposing we have compiled a Wasm module containing the function above, then it can be called in a Camel Route by its name and module resource location: - -[tabs] -==== -Java:: -+ -[source,java] ----- -from("direct:in") - .transform() - .wasm("transform", "classpath://functions.wasm"); ----- - -XML:: -+ -[source,xml] ----- - - - - transform - - ----- - -YAML:: -+ -[source,yaml] ----- -- route: - from: - uri: direct:in - steps: - - transform: - expression: - wasm: - expression: transform - module: classpath://functions.wasm ----- -==== - - -== Using Wasm as a predicate - -When the function is used as a xref:manual::predicate.adoc[Predicate], for example with the -xref:eips:filter-eip.adoc[Filter] EIP, its result is converted to a boolean depending on the result type: - -* With the default result type (`byte[]`) or `String`, the returned bytes are read as a string and the -standard Camel rules apply: `true` and `false` (in any case) are parsed, empty data is `false`, and any -other value is `true`. So the function can simply return `true` or `false`. -* With the result type `Boolean`, only `true` and `false` (in any case) are accepted: any other value, -including empty data, is `false`. -* With a Jackson `JsonNode` result type, only the JSON boolean `true` matches. - -[tabs] -==== -Java:: -+ -[source,java] ----- -from("direct:in") - .filter().wasm("is_valid", "classpath://functions.wasm") - .to("direct:valid"); ----- - -XML:: -+ -[source,xml] ----- - - - - is_valid - - - ----- - -YAML:: -+ -[source,yaml] ----- -- route: - from: - uri: direct:in - steps: - - filter: - expression: - wasm: - expression: is_valid - module: classpath://functions.wasm - steps: - - to: - uri: direct:valid ----- -==== - - -== Dependencies - -If you use Maven you could add the following to your `pom.xml`, -substituting the version number for the latest and greatest release. - -[source,xml] ----- - - org.apache.camel - camel-wasm - x.x.x - ----- diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/languages.properties b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/languages.properties index 96c24835cd37d..1ecd8457f67cb 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/languages.properties +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/languages.properties @@ -24,7 +24,6 @@ spel tokenize typesafe-ai variable -wasm xpath xquery xtokenize diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/languages/wasm.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/languages/wasm.json deleted file mode 100644 index ded5b9d79d6bd..0000000000000 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/languages/wasm.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "language": { - "kind": "language", - "name": "wasm", - "title": "Wasm", - "description": "Call a wasm (web assembly) function", - "deprecated": false, - "firstVersion": "4.5.0", - "label": "language", - "javaType": "org.apache.camel.language.wasm.WasmLanguage", - "supportLevel": "Experimental", - "groupId": "org.apache.camel", - "artifactId": "camel-wasm", - "version": "4.24.0-SNAPSHOT", - "modelName": "wasm", - "modelJavaType": "org.apache.camel.model.language.WasmExpression" - }, - "properties": { - "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node." }, - "expression": { "index": 1, "kind": "value", "displayName": "Expression", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The expression value in your chosen language syntax." }, - "module": { "index": 2, "kind": "attribute", "displayName": "Module", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function." }, - "resultType": { "index": 3, "kind": "attribute", "displayName": "Result Type", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The class of the result type (type from output)." }, - "trim": { "index": 4, "kind": "attribute", "displayName": "Trim", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether to trim the source code to remove leading and trailing whitespaces and line breaks." }, - "resolveResource": { "index": 5, "kind": "attribute", "displayName": "Resolve Resource", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether a result of the expression that is a String starting with resource: is loaded as a resource and its content becomes the result, e.g. a script that returns resource:file:order.json or resource:classpath:templates\/order.json (a name without a scheme is a classpath resource). Off by default; the resource: prefix on the expression text itself is always resolved. Applies to the expression used as a value, not as a predicate." } - } -} diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models.properties b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models.properties index 387da664462d4..6454583afeae2 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models.properties +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models.properties @@ -230,7 +230,6 @@ validate validators value variable -wasm weightedLoadBalancer when wireTap diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/aggregate.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/aggregate.json index b44e99f13f841..289b5ccd13dd5 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/aggregate.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/aggregate.json @@ -17,10 +17,10 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "correlationExpression": { "index": 4, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression used to calculate the correlation key to use for aggregation. Exchanges with the same correlation key are aggregated together. If the correlation key cannot be evaluated an Exception is thrown." }, - "completionPredicate": { "index": 5, "kind": "expression", "displayName": "Completion Predicate", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "A predicate to indicate when an aggregated exchange is complete. If not specified and the AggregationStrategy implements Predicate, it will be used as the completionPredicate." }, - "completionTimeoutExpression": { "index": 6, "kind": "expression", "displayName": "Completion Timeout Expression", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Time in millis that an aggregated exchange should be inactive before its complete (timeout), evaluated as an expression allowing dynamic timeout values." }, - "completionSizeExpression": { "index": 7, "kind": "expression", "displayName": "Completion Size Expression", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Number of messages aggregated before the aggregation is complete, evaluated as an expression allowing dynamic size values." }, + "correlationExpression": { "index": 4, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression used to calculate the correlation key to use for aggregation. Exchanges with the same correlation key are aggregated together. If the correlation key cannot be evaluated an Exception is thrown." }, + "completionPredicate": { "index": 5, "kind": "expression", "displayName": "Completion Predicate", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "A predicate to indicate when an aggregated exchange is complete. If not specified and the AggregationStrategy implements Predicate, it will be used as the completionPredicate." }, + "completionTimeoutExpression": { "index": 6, "kind": "expression", "displayName": "Completion Timeout Expression", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Time in millis that an aggregated exchange should be inactive before its complete (timeout), evaluated as an expression allowing dynamic timeout values." }, + "completionSizeExpression": { "index": 7, "kind": "expression", "displayName": "Completion Size Expression", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Number of messages aggregated before the aggregation is complete, evaluated as an expression allowing dynamic size values." }, "optimisticLockRetryPolicy": { "index": 8, "kind": "element", "displayName": "Optimistic Lock Retry Policy", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.OptimisticLockRetryPolicyDefinition", "deprecated": false, "autowired": false, "secret": false, "description": "Configures retry settings when using optimistic locking." }, "parallelProcessing": { "index": 9, "kind": "attribute", "displayName": "Parallel Processing", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "When completed exchanges are sent out of the aggregator, this option indicates whether Camel should use a thread pool with multiple threads for concurrency." }, "optimisticLocking": { "index": 10, "kind": "attribute", "displayName": "Optimistic Locking", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Turns on optimistic locking, which requires the aggregation repository to implement OptimisticLockingAggregationRepository." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/cache.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/cache.json index 08f5ce5c924b6..159cd3acf48a3 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/cache.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/cache.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression to compute the cache key. Messages with the same key share the cached result." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression to compute the cache key. Messages with the same key share the cached result." }, "keyValueRepository": { "index": 5, "kind": "attribute", "displayName": "Key Value Repository", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.spi.KeyValueRepository", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the reference name of the KeyValueRepository to use as the cache backing store. If not set, a MemoryKeyValueRepository is auto-created." }, "ttl": { "index": 6, "kind": "attribute", "displayName": "Ttl", "group": "common", "required": false, "type": "duration", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "-1", "description": "Sets the time-to-live for cached entries. Supports duration syntax (e.g. 10m, 1h) or milliseconds. Default: -1 (no expiration)." }, "cacheNull": { "index": 7, "kind": "attribute", "displayName": "Cache Null", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to cache null results. By default, null message bodies are not cached." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/delay.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/delay.json index a1ad1e5f75d37..a70f33c5a93ac 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/delay.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/delay.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that determines the delay duration in milliseconds." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that determines the delay duration in milliseconds." }, "asyncDelayed": { "index": 5, "kind": "attribute", "displayName": "Async Delayed", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Enables asynchronous delay which means the thread will not block while delaying." }, "callerRunsWhenRejected": { "index": 6, "kind": "attribute", "displayName": "Caller Runs When Rejected", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether or not the caller should run the task when it was rejected by the thread pool." }, "executorService": { "index": 7, "kind": "attribute", "displayName": "Executor Service", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.util.concurrent.ExecutorService", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom thread pool if asyncDelay has been enabled." } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/dynamicRouter.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/dynamicRouter.json index 23ea567272053..5382f92c8cc8f 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/dynamicRouter.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/dynamicRouter.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the next endpoint URI to route to. The expression is called iteratively until it returns null to indicate the end of routing." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the next endpoint URI to route to. The expression is called iteratively until it returns null to indicate the end of routing." }, "uriDelimiter": { "index": 5, "kind": "attribute", "displayName": "Uri Delimiter", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", "description": "The delimiter used to separate endpoint URIs when the expression returns multiple endpoints. Default is comma." }, "ignoreInvalidEndpoints": { "index": 6, "kind": "attribute", "displayName": "Ignore Invalid Endpoints", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled then invalid endpoint URIs are ignored and logged instead of throwing an exception." }, "cacheSize": { "index": 7, "kind": "attribute", "displayName": "Cache Size", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, "description": "Configures the cache size for ProducerCache which caches producers for reuse. The default cache size is 1000. Set to -1 to turn off caching." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/enrich.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/enrich.json index 757e68c4c0140..2f1da84e8b8bb 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/enrich.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/enrich.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the endpoint URI to enrich from." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the endpoint URI to enrich from." }, "variableSend": { "index": 5, "kind": "attribute", "displayName": "Variable Send", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "To use a variable as the source for the message body to send. When using send variable then the message body is taken from this variable instead of the current message, however the headers from the message will still be used as well." }, "variableReceive": { "index": 6, "kind": "attribute", "displayName": "Variable Receive", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "To use a variable to store the received message body (only body, not headers). This makes it handy to use variables for user data and to easily control what data to use for sending and receiving." }, "aggregationStrategy": { "index": 7, "kind": "attribute", "displayName": "Aggregation Strategy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the AggregationStrategy to be used to merge the reply from the external service, into a single outgoing message. By default Camel will use the reply from the external service as outgoing message." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/filter.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/filter.json index 14e7752a5be72..4e72dc3ae81bb 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/filter.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/filter.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to evaluate. Messages where the predicate returns false are filtered out and not routed further." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to evaluate. Messages where the predicate returns false are filtered out and not routed further." }, "statusPropertyName": { "index": 5, "kind": "attribute", "displayName": "Status Property Name", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Name of an exchange property to store whether the filter predicate matched or not. The value is stored as a boolean." }, "outputs": { "index": 6, "kind": "element", "displayName": "Outputs", "group": "common", "required": true, "type": "array", "javaType": "java.util.List>", "oneOf": [ "a2aSubTask", "aggregate", "bean", "cache", "choice", "circuitBreaker", "claimCheck", "convertBodyTo", "convertHeaderTo", "convertVariableTo", "delay", "doCatch", "doFinally", "doTry", "dynamicRouter", "enrich", "filter", "idempotentConsumer", "intercept", "interceptFrom", "interceptSendToEndpoint", "kamelet", "loadBalance", "log", "loop", "marshal", "multicast", "onCompletion", "onException", "pausable", "pipeline", "policy", "poll", "pollEnrich", "process", "recipientList", "removeHeader", "removeHeaders", "removeProperties", "removeProperty", "removeVariable", "resequence", "resumable", "rollback", "routingSlip", "saga", "sample", "script", "setBody", "setExchangePattern", "setHeader", "setHeaders", "setProperty", "setVariable", "setVariables", "sort", "split", "step", "stop", "switch", "threads", "throttle", "throwException", "to", "toD", "tokenizer", "transacted", "transform", "transformDataType", "unmarshal", "validate", "wireTap" ], "deprecated": false, "autowired": false, "secret": false } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/idempotentConsumer.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/idempotentConsumer.json index f027166a0bfc3..42b65e18142d4 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/idempotentConsumer.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/idempotentConsumer.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the unique message ID used for duplicate detection. Messages with the same ID are treated as duplicates and skipped." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the unique message ID used for duplicate detection. Messages with the same ID are treated as duplicates and skipped." }, "idempotentRepository": { "index": 5, "kind": "attribute", "displayName": "Idempotent Repository", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.spi.IdempotentRepository", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the reference name of the message id repository to use for storing processed message ids to detect duplicates." }, "eager": { "index": 6, "kind": "attribute", "displayName": "Eager", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Sets whether to eagerly add the key to the idempotent repository or wait until the exchange is complete. Eager is default enabled." }, "completionEager": { "index": 7, "kind": "attribute", "displayName": "Completion Eager", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Sets whether to complete the idempotent consumer eager or when the exchange is done." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/loop.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/loop.json index 08cffb3e6a881..5d6a11f3e80f9 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/loop.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/loop.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that determines the number of times to loop. The result is converted to an integer." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that determines the number of times to loop. The result is converted to an integer." }, "copy": { "index": 5, "kind": "attribute", "displayName": "Copy", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled, a copy of the input Exchange is used for each iteration. That means each iteration will start from a copy of the same message." }, "doWhile": { "index": 6, "kind": "attribute", "displayName": "Do While", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Enables the while loop that loops until the predicate evaluates to false or null." }, "breakOnShutdown": { "index": 7, "kind": "attribute", "displayName": "Break On Shutdown", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled, the loop will not iterate until it reaches the end when Camel is shut down." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/onException.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/onException.json index e0ed0003e5046..002a33850fee0 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/onException.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/onException.json @@ -18,11 +18,11 @@ "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, "exception": { "index": 4, "kind": "element", "displayName": "Exception", "group": "common", "required": true, "type": "array", "javaType": "java.util.List", "deprecated": false, "autowired": false, "secret": false, "description": "A list of exception class names to catch and handle." }, "onWhen": { "index": 5, "kind": "element", "displayName": "On When", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.OnWhenDefinition", "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "To use an expression to only trigger this in specific situations" }, - "retryWhile": { "index": 6, "kind": "expression", "displayName": "Retry While", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "Sets a predicate to control whether redelivery should continue. Redelivery continues as long as the predicate evaluates to true." }, + "retryWhile": { "index": 6, "kind": "expression", "displayName": "Retry While", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "Sets a predicate to control whether redelivery should continue. Redelivery continues as long as the predicate evaluates to true." }, "redeliveryPolicy": { "index": 7, "kind": "element", "displayName": "Redelivery Policy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.RedeliveryPolicyDefinition", "deprecated": false, "autowired": false, "secret": false, "description": "Configures redelivery options such as maximum redeliveries, delays, and logging behavior." }, "redeliveryPolicyRef": { "index": 8, "kind": "attribute", "displayName": "Redelivery Policy Ref", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Sets a reference to a redelivery policy to lookup in the registry to be used." }, - "handled": { "index": 9, "kind": "expression", "displayName": "Handled", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "When handled is set to true, the exception is suppressed and not sent back to the caller. The original route stops at the point of failure and only the steps in this onException block execute. The response returned to the caller is whatever this onException block produces. Use continued instead if you want to resume the original route from the point of failure." }, - "continued": { "index": 10, "kind": "expression", "displayName": "Continued", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "When continued is set to true, the exception is handled and routing continues from the point of failure. Unlike handled, which stops the original route and only runs the onException block, continued resumes the original route after the onException steps complete. The exception is considered handled as well." }, + "handled": { "index": 9, "kind": "expression", "displayName": "Handled", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "When handled is set to true, the exception is suppressed and not sent back to the caller. The original route stops at the point of failure and only the steps in this onException block execute. The response returned to the caller is whatever this onException block produces. Use continued instead if you want to resume the original route from the point of failure." }, + "continued": { "index": 10, "kind": "expression", "displayName": "Continued", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "When continued is set to true, the exception is handled and routing continues from the point of failure. Unlike handled, which stops the original route and only runs the onException block, continued resumes the original route after the onException steps complete. The exception is considered handled as well." }, "onRedeliveryRef": { "index": 11, "kind": "attribute", "displayName": "On Redelivery Ref", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Sets a reference to a processor that is invoked before each redelivery attempt. Can be used to change the exchange before it is redelivered." }, "onExceptionOccurredRef": { "index": 12, "kind": "attribute", "displayName": "On Exception Occurred Ref", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Sets a reference to a processor that is invoked just after an exception occurred. Can be used to perform custom logging. Any exception thrown from this processor is ignored." }, "useOriginalMessage": { "index": 13, "kind": "attribute", "displayName": "Use Original Message", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled, uses the original input message (body and headers) when the exchange is moved to the dead letter queue after all redelivery attempts have been exhausted. Cannot be used together with useOriginalBody." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/onWhen.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/onWhen.json index c3a724a63f5c3..65b02b1ca1d94 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/onWhen.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/onWhen.json @@ -15,6 +15,6 @@ "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node" }, "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, - "expression": { "index": 3, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to evaluate." } + "expression": { "index": 3, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to evaluate." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/pollEnrich.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/pollEnrich.json index 2e7d3b6974529..6f0f77d21a78a 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/pollEnrich.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/pollEnrich.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the endpoint URI to poll-enrich from." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the endpoint URI to poll-enrich from." }, "variableReceive": { "index": 5, "kind": "attribute", "displayName": "Variable Receive", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "To use a variable to store the received message body (only body, not headers). This makes it handy to use variables for user data and to easily control what data to use for sending and receiving." }, "aggregationStrategy": { "index": 6, "kind": "attribute", "displayName": "Aggregation Strategy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the AggregationStrategy to be used to merge the reply from the external service, into a single outgoing message. By default Camel will use the reply from the external service as outgoing message." }, "aggregationStrategyMethodName": { "index": 7, "kind": "attribute", "displayName": "Aggregation Strategy Method Name", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "This option can be used to explicitly declare the method name to use, when using POJOs as the AggregationStrategy." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/predicateValidator.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/predicateValidator.json index f595bbb22f1d2..8cbbb2bd06d34 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/predicateValidator.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/predicateValidator.json @@ -12,7 +12,7 @@ "output": false }, "properties": { - "expression": { "index": 0, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to use for validation." }, + "expression": { "index": 0, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to use for validation." }, "type": { "index": 1, "kind": "attribute", "displayName": "Type", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The data type name to validate. If you specify 'xml:XYZ', the validator is picked up when message type is 'xml:XYZ'. If you specify just 'xml', the validator matches all xml message types." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/propertyExpression.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/propertyExpression.json index 53c30ae235a6d..9c3015a2b0427 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/propertyExpression.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/propertyExpression.json @@ -13,6 +13,6 @@ }, "properties": { "key": { "index": 0, "kind": "attribute", "displayName": "Key", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The property key." }, - "expression": { "index": 1, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The property value as an expression." } + "expression": { "index": 1, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The property value as an expression." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/recipientList.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/recipientList.json index 1415f07766d02..0397c4dc6ae30 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/recipientList.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/recipientList.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the list of recipient endpoint URIs. The result can be a comma-separated string, a Collection, or an Iterator of endpoint URIs." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the list of recipient endpoint URIs. The result can be a comma-separated string, a Collection, or an Iterator of endpoint URIs." }, "delimiter": { "index": 5, "kind": "attribute", "displayName": "Delimiter", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", "description": "Delimiter used if the Expression returned multiple endpoints. Can be turned off using the value false." }, "aggregationStrategy": { "index": 6, "kind": "attribute", "displayName": "Aggregation Strategy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the AggregationStrategy to be used to assemble the replies from the recipients, into a single outgoing message." }, "aggregationStrategyMethodName": { "index": 7, "kind": "attribute", "displayName": "Aggregation Strategy Method Name", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "This option can be used to explicitly declare the method name to use, when using POJOs as the AggregationStrategy." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/resequence.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/resequence.json index a001f1f6d674c..09bf29d6f0f7a 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/resequence.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/resequence.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression to use for re-ordering the messages, such as a header with a sequence number." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression to use for re-ordering the messages, such as a header with a sequence number." }, "resequencerConfig": { "index": 5, "kind": "element", "displayName": "Resequencer Config", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.config.ResequencerConfig", "oneOf": [ "batchConfig", "streamConfig" ], "deprecated": false, "autowired": false, "secret": false, "description": "Resequencer configuration using either batch or stream mode. Defaults to batch mode." }, "outputs": { "index": 6, "kind": "element", "displayName": "Outputs", "group": "common", "required": true, "type": "array", "javaType": "java.util.List", "oneOf": [ "a2aSubTask", "aggregate", "bean", "cache", "choice", "circuitBreaker", "claimCheck", "convertBodyTo", "convertHeaderTo", "convertVariableTo", "delay", "doCatch", "doFinally", "doTry", "dynamicRouter", "enrich", "filter", "idempotentConsumer", "intercept", "interceptFrom", "interceptSendToEndpoint", "kamelet", "loadBalance", "log", "loop", "marshal", "multicast", "onCompletion", "onException", "pausable", "pipeline", "policy", "poll", "pollEnrich", "process", "recipientList", "removeHeader", "removeHeaders", "removeProperties", "removeProperty", "removeVariable", "resequence", "resumable", "rollback", "routingSlip", "saga", "sample", "script", "setBody", "setExchangePattern", "setHeader", "setHeaders", "setProperty", "setVariable", "setVariables", "sort", "split", "step", "stop", "switch", "threads", "throttle", "throwException", "to", "toD", "tokenizer", "transacted", "transform", "transformDataType", "unmarshal", "validate", "wireTap" ], "deprecated": false, "autowired": false, "secret": false } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/routingSlip.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/routingSlip.json index 55e085f625415..2ca6a67784d4a 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/routingSlip.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/routingSlip.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the routing slip of endpoint URIs. The result is a delimited list of endpoint URIs that defines the series of processing steps." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the routing slip of endpoint URIs. The result is a delimited list of endpoint URIs that defines the series of processing steps." }, "uriDelimiter": { "index": 5, "kind": "attribute", "displayName": "Uri Delimiter", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", "description": "The delimiter used to separate endpoint URIs in the routing slip expression. Default is comma." }, "ignoreInvalidEndpoints": { "index": 6, "kind": "attribute", "displayName": "Ignore Invalid Endpoints", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled then invalid endpoint URIs are ignored and logged instead of throwing an exception." }, "cacheSize": { "index": 7, "kind": "attribute", "displayName": "Cache Size", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, "description": "Configures the cache size for ProducerCache which caches producers for reuse. The default cache size is 1000. Set to -1 to turn off caching." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/script.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/script.json index ed1908279726f..498f16f9ae011 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/script.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/script.json @@ -16,6 +16,6 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to evaluate as a script. The script result does not change the message body (use transform instead if that is desired)." } + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to evaluate as a script. The script result does not change the message body (use transform instead if that is desired)." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setBody.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setBody.json index 59124a53de246..3c1320e00ab66 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setBody.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setBody.json @@ -17,6 +17,6 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the new message body." } + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the new message body." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setHeader.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setHeader.json index a56e8690c8ddd..a71ab721b5bf8 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setHeader.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setHeader.json @@ -17,6 +17,6 @@ "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, "name": { "index": 4, "kind": "attribute", "displayName": "Name", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Name of message header to set a new value. The simple language can be used to define a dynamic evaluated header name. Otherwise a constant name will be used." }, - "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the header value." } + "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the header value." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setProperty.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setProperty.json index 6d2e41ecc3a2d..cffb8d5d7c8d4 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setProperty.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setProperty.json @@ -17,6 +17,6 @@ "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, "name": { "index": 4, "kind": "attribute", "displayName": "Name", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Name of exchange property to set a new value. The simple language can be used to define a dynamic evaluated property name. Otherwise a constant name will be used." }, - "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the exchange property value." } + "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the exchange property value." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setVariable.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setVariable.json index cffc0d6c94e68..79f57c636c2c5 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setVariable.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/setVariable.json @@ -17,6 +17,6 @@ "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, "name": { "index": 4, "kind": "attribute", "displayName": "Name", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Name of variable to set a new value. The simple language can be used to define a dynamic evaluated variable name. Otherwise a constant name will be used." }, - "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the variable value." } + "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the variable value." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/sort.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/sort.json index 012f5e7f4582a..c9dcd74b87c0a 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/sort.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/sort.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to use for sorting. The message body is split into a list, sorted using this expression as the comparator key, and then reassembled." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to use for sorting. The message body is split into a list, sorted using this expression as the comparator key, and then reassembled." }, "comparator": { "index": 5, "kind": "attribute", "displayName": "Comparator", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.util.Comparator", "deprecated": false, "autowired": false, "secret": false, "description": "Sets a reference to lookup for the comparator to use for sorting." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/split.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/split.json index 9ac5f17714ad1..c3bc403d60600 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/split.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/split.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that returns the value to use for splitting. The result can be an Iterator, Iterable, Array, Collection, Map, NodeList, or a delimited String." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that returns the value to use for splitting. The result can be an Iterator, Iterable, Array, Collection, Map, NodeList, or a delimited String." }, "delimiter": { "index": 5, "kind": "attribute", "displayName": "Delimiter", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", "description": "Delimiter used in splitting messages. Can be turned off using the value false. To force not splitting then the delimiter can be set to single to use the value as a single list. The default value is comma." }, "aggregationStrategy": { "index": 6, "kind": "attribute", "displayName": "Aggregation Strategy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "Reference to the AggregationStrategy to assemble the replies from the split messages into a single outgoing message. By default Camel uses the original incoming message." }, "aggregationStrategyMethodName": { "index": 7, "kind": "attribute", "displayName": "Aggregation Strategy Method Name", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The method name to use when using a POJO as the AggregationStrategy." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/stickyLoadBalancer.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/stickyLoadBalancer.json index 948180acfcce4..87b2bc65e0d17 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/stickyLoadBalancer.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/stickyLoadBalancer.json @@ -13,6 +13,6 @@ }, "properties": { "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node" }, - "correlationExpression": { "index": 1, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The correlation expression to use to calculate the correlation key." } + "correlationExpression": { "index": 1, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The correlation expression to use to calculate the correlation key." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/switch.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/switch.json index b0a91281d33dd..3fb9b28b75e69 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/switch.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/switch.json @@ -18,7 +18,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "selector": { "index": 4, "kind": "expression", "displayName": "Selector", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression evaluated once per entry. Returns a scalar value to match against the literal cases." }, + "selector": { "index": 4, "kind": "expression", "displayName": "Selector", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression evaluated once per entry. Returns a scalar value to match against the literal cases." }, "case": { "index": 5, "kind": "element", "displayName": "Case", "group": "common", "required": false, "type": "array", "javaType": "java.util.List", "deprecated": false, "autowired": false, "secret": false, "description": "Literal cases. Duplicate values are rejected at startup, ignoring case." }, "otherwise": { "index": 6, "kind": "element", "displayName": "Otherwise", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.SwitchOtherwiseDefinition", "oneOf": [ "otherwise" ], "deprecated": false, "autowired": false, "secret": false, "description": "Fixed fallback URI for null or unmatched selector results. Without a fallback processing continues." } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/throttle.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/throttle.json index 027a30aeddbaf..e1c1079fa3c65 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/throttle.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/throttle.json @@ -17,9 +17,9 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to set the maximum request count (for TotalRequests mode) or the maximum number of concurrent requests (for ConcurrentRequests mode)." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to set the maximum request count (for TotalRequests mode) or the maximum number of concurrent requests (for ConcurrentRequests mode)." }, "mode": { "index": 5, "kind": "attribute", "displayName": "Mode", "group": "common", "required": false, "type": "enum", "javaType": "org.apache.camel.model.ThrottlingMode", "enum": [ "TotalRequests", "ConcurrentRequests" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "TotalRequests", "description": "Sets the throttling mode. TotalRequests limits the total number of requests within a time period. ConcurrentRequests uses a leaky-bucket algorithm to limit the number of concurrent requests being processed at the same time." }, - "correlationExpression": { "index": 6, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The correlation expression to use for throttle grouping. Exchanges with the same correlation key are throttled together." }, + "correlationExpression": { "index": 6, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The correlation expression to use for throttle grouping. Exchanges with the same correlation key are throttled together." }, "executorService": { "index": 7, "kind": "attribute", "displayName": "Executor Service", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.util.concurrent.ExecutorService", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom thread pool (ScheduledExecutorService) by the throttler." }, "asyncDelayed": { "index": 8, "kind": "attribute", "displayName": "Async Delayed", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Enables asynchronous delay which means the thread will not block while delaying." }, "callerRunsWhenRejected": { "index": 9, "kind": "attribute", "displayName": "Caller Runs When Rejected", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether or not the caller should run the task when it was rejected by the thread pool." }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/transform.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/transform.json index cf53b151e5faf..fa8649dc61fff 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/transform.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/transform.json @@ -17,6 +17,6 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result replaces the message body." } + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result replaces the message body." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/validate.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/validate.json index 19423bee06c99..aa65030c329a4 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/validate.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/validate.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to validate against the current message. If the predicate returns false, a PredicateValidationException is thrown." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to validate against the current message. If the predicate returns false, a PredicateValidationException is thrown." }, "predicateExceptionFactory": { "index": 5, "kind": "attribute", "displayName": "Predicate Exception Factory", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.spi.PredicateExceptionFactory", "deprecated": false, "autowired": false, "secret": false, "description": "Reference to a custom PredicateExceptionFactory for creating the exception when validation fails." } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/wasm.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/wasm.json deleted file mode 100644 index f77d85b07c350..0000000000000 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/wasm.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "model": { - "kind": "model", - "name": "wasm", - "title": "Wasm", - "description": "Call a wasm (web assembly) function", - "deprecated": false, - "firstVersion": "4.5.0", - "label": "language", - "javaType": "org.apache.camel.model.language.WasmExpression", - "abstract": false, - "input": false, - "output": false - }, - "properties": { - "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node." }, - "expression": { "index": 1, "kind": "value", "displayName": "Expression", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The expression value in your chosen language syntax." }, - "module": { "index": 2, "kind": "attribute", "displayName": "Module", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function." }, - "resultType": { "index": 3, "kind": "attribute", "displayName": "Result Type", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The class of the result type (type from output)." }, - "trim": { "index": 4, "kind": "attribute", "displayName": "Trim", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether to trim the source code to remove leading and trailing whitespaces and line breaks." }, - "resolveResource": { "index": 5, "kind": "attribute", "displayName": "Resolve Resource", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether a result of the expression that is a String starting with resource: is loaded as a resource and its content becomes the result, e.g. a script that returns resource:file:order.json or resource:classpath:templates\/order.json (a name without a scheme is a classpath resource). Off by default; the resource: prefix on the expression text itself is always resolved. Applies to the expression used as a value, not as a predicate." } - } -} diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/when.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/when.json index 44b0e97480e41..473d7716e8e9f 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/when.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/when.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Disables this EIP from the route." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "Expression used as the predicate to evaluate whether this when should trigger and route the message or not." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "Expression used as the predicate to evaluate whether this when should trigger and route the message or not." }, "outputs": { "index": 5, "kind": "element", "displayName": "Outputs", "group": "common", "required": true, "type": "array", "javaType": "java.util.List>", "oneOf": [ "a2aSubTask", "aggregate", "bean", "cache", "choice", "circuitBreaker", "claimCheck", "convertBodyTo", "convertHeaderTo", "convertVariableTo", "delay", "doCatch", "doFinally", "doTry", "dynamicRouter", "enrich", "filter", "idempotentConsumer", "intercept", "interceptFrom", "interceptSendToEndpoint", "kamelet", "loadBalance", "log", "loop", "marshal", "multicast", "onCompletion", "onException", "pausable", "pipeline", "policy", "poll", "pollEnrich", "process", "recipientList", "removeHeader", "removeHeaders", "removeProperties", "removeProperty", "removeVariable", "resequence", "resumable", "rollback", "routingSlip", "saga", "sample", "script", "setBody", "setExchangePattern", "setHeader", "setHeaders", "setProperty", "setVariable", "setVariables", "sort", "split", "step", "stop", "switch", "threads", "throttle", "throwException", "to", "toD", "tokenizer", "transacted", "transform", "transformDataType", "unmarshal", "validate", "wireTap" ], "deprecated": false, "autowired": false, "secret": false } } } diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd index e438e41c1419b..278dd6cd0df9f 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd @@ -2329,15 +2329,6 @@ Holds a single value, typically used as a child element in collection-based conf - - - - - - - @@ -3683,7 +3674,6 @@ ensuring the aggregation repository is empty before shutdown. Default value: fal - @@ -4007,7 +3997,6 @@ Whether the script should support using Camel property placeholder syntax {{ }}. - @@ -4241,7 +4230,6 @@ The exception class names (fully qualified) to catch. - @@ -4298,7 +4286,6 @@ placeholders or simple expressions using only property placeholders are supporte - @@ -5347,7 +5334,6 @@ To use a specific charset when converting. - @@ -5410,7 +5396,6 @@ To use a custom thread pool if asyncDelay has been enabled. - @@ -5486,7 +5471,6 @@ restriction, useful for low-code / Kamelet deployments; by default (unset) any s - @@ -6108,7 +6092,6 @@ The logging level to use for logging transactional rollback. Default is WARN. De - @@ -6365,7 +6348,6 @@ Global option value. - @@ -7165,7 +7147,6 @@ The language to use for evaluating the log message, such as simple, groovy, or o - @@ -11784,7 +11765,6 @@ Timeout in millis when polling from the external service. The default value is 2 - @@ -11949,7 +11929,6 @@ control how the processor is obtained. - @@ -11992,7 +11971,6 @@ The property key. - @@ -12295,7 +12273,6 @@ Name of the variable to remove. - @@ -12998,7 +12975,6 @@ Description of the template parameter for documentation purposes. - @@ -13254,7 +13230,6 @@ The frequency of samples as a message count, using a message-frequency approach. - @@ -13306,7 +13281,6 @@ The uri of the endpoint to send to. - @@ -13358,7 +13332,6 @@ The new exchange pattern to use from this point forward. - @@ -13413,7 +13386,6 @@ Otherwise a constant name will be used. - @@ -13459,7 +13431,6 @@ name. Otherwise a constant name will be used. - @@ -13514,7 +13485,6 @@ Otherwise a constant name will be used. - @@ -13560,7 +13530,6 @@ Sets a reference to lookup for the comparator to use for sorting. - @@ -14292,7 +14261,6 @@ handler. Default value: true - @@ -14777,7 +14745,6 @@ into. - @@ -14985,7 +14952,6 @@ Indicates whether null is allowed as value of a body to unmarshall. Default valu - @@ -16797,22 +16763,6 @@ To skip the very first element. Default value: false - - - - - - - - - - - - - @@ -17376,7 +17326,6 @@ URI of the Endpoint used for validation. - diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-xml-io.xsd b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-xml-io.xsd index 81f71962e73e0..e59829db331e4 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-xml-io.xsd +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-xml-io.xsd @@ -2140,15 +2140,6 @@ Holds a single value, typically used as a child element in collection-based conf - - - - - - - @@ -2793,7 +2784,6 @@ ensuring the aggregation repository is empty before shutdown. Default value: fal - @@ -3117,7 +3107,6 @@ Whether the script should support using Camel property placeholder syntax {{ }}. - @@ -3351,7 +3340,6 @@ The exception class names (fully qualified) to catch. - @@ -3408,7 +3396,6 @@ placeholders or simple expressions using only property placeholders are supporte - @@ -4469,7 +4456,6 @@ To use a specific charset when converting. - @@ -4532,7 +4518,6 @@ To use a custom thread pool if asyncDelay has been enabled. - @@ -4608,7 +4593,6 @@ restriction, useful for low-code / Kamelet deployments; by default (unset) any s - @@ -5230,7 +5214,6 @@ The logging level to use for logging transactional rollback. Default is WARN. De - @@ -5487,7 +5470,6 @@ Global option value. - @@ -6287,7 +6269,6 @@ The language to use for evaluating the log message, such as simple, groovy, or o - @@ -10906,7 +10887,6 @@ Timeout in millis when polling from the external service. The default value is 2 - @@ -11092,7 +11072,6 @@ The property value. - @@ -11135,7 +11114,6 @@ The property key. - @@ -11438,7 +11416,6 @@ Name of the variable to remove. - @@ -12141,7 +12118,6 @@ Description of the template parameter for documentation purposes. - @@ -12397,7 +12373,6 @@ The frequency of samples as a message count, using a message-frequency approach. - @@ -12449,7 +12424,6 @@ The uri of the endpoint to send to. - @@ -12501,7 +12475,6 @@ The new exchange pattern to use from this point forward. - @@ -12556,7 +12529,6 @@ Otherwise a constant name will be used. - @@ -12602,7 +12574,6 @@ name. Otherwise a constant name will be used. - @@ -12657,7 +12628,6 @@ Otherwise a constant name will be used. - @@ -12703,7 +12673,6 @@ Sets a reference to lookup for the comparator to use for sorting. - @@ -13435,7 +13404,6 @@ handler. Default value: true - @@ -13920,7 +13888,6 @@ into. - @@ -14128,7 +14095,6 @@ Indicates whether null is allowed as value of a body to unmarshall. Default valu - @@ -15940,22 +15906,6 @@ To skip the very first element. Default value: false - - - - - - - - - - - - - @@ -16519,7 +16469,6 @@ URI of the Endpoint used for validation. - diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camelYamlDsl-model.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camelYamlDsl-model.json index 60af524015b79..52a9a833e1cd4 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camelYamlDsl-model.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camelYamlDsl-model.json @@ -761,13 +761,6 @@ "title" : "Variable", "description" : "Gets a variable", "label" : "language,core" - }, { - "name" : "wasm", - "type" : "object", - "ref" : "wasm", - "title" : "Wasm", - "description" : "Call a wasm (web assembly) function", - "label" : "language" }, { "name" : "xpath", "type" : "object", @@ -2730,10 +2723,6 @@ "name" : "variable", "type" : "object", "ref" : "variable" - }, { - "name" : "wasm", - "type" : "object", - "ref" : "wasm" }, { "name" : "xpath", "type" : "object", @@ -16326,72 +16315,6 @@ "label" : "advanced" } ] }, - "wasm" : { - "title" : "Wasm", - "description" : "Call a wasm (web assembly) function", - "label" : "language", - "children" : [ { - "name" : "id", - "type" : "string", - "description" : "The id of this node.", - "title" : "Id", - "displayName" : "Id", - "kind" : "attribute", - "index" : 0, - "group" : "common" - }, { - "name" : "expression", - "type" : "string", - "description" : "The expression value in your chosen language syntax.", - "title" : "Expression", - "required" : true, - "displayName" : "Expression", - "kind" : "value", - "index" : 1, - "group" : "common" - }, { - "name" : "module", - "type" : "string", - "description" : "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function.", - "title" : "Module", - "required" : true, - "displayName" : "Module", - "kind" : "attribute", - "index" : 2, - "group" : "common" - }, { - "name" : "resultType", - "type" : "string", - "description" : "The class of the result type (type from output).", - "title" : "Result Type", - "displayName" : "Result Type", - "kind" : "attribute", - "index" : 3, - "group" : "common" - }, { - "name" : "trim", - "type" : "boolean", - "description" : "Whether to trim the source code to remove leading and trailing whitespaces and line breaks.", - "title" : "Trim", - "default" : "true", - "displayName" : "Trim", - "kind" : "attribute", - "index" : 4, - "group" : "advanced", - "label" : "advanced" - }, { - "name" : "resolveResource", - "type" : "boolean", - "description" : "Whether a result of the expression that is a String starting with resource: is loaded as a resource and its content becomes the result, e.g. a script that returns resource:file:order.json or resource:classpath:templates/order.json (a name without a scheme is a classpath resource). Off by default; the resource: prefix on the expression text itself is always resolved. Applies to the expression used as a value, not as a predicate.", - "title" : "Resolve Resource", - "default" : "false", - "displayName" : "Resolve Resource", - "kind" : "attribute", - "index" : 5, - "group" : "advanced", - "label" : "advanced" - } ] - }, "xMLTokenizer" : { "title" : "XML Tokenize", "description" : "Tokenize XML payloads", diff --git a/components/camel-language/src/generated/resources/META-INF/org/apache/camel/component/language/language.json b/components/camel-language/src/generated/resources/META-INF/org/apache/camel/component/language/language.json index 201bfbbf49042..fb260589ad386 100644 --- a/components/camel-language/src/generated/resources/META-INF/org/apache/camel/component/language/language.json +++ b/components/camel-language/src/generated/resources/META-INF/org/apache/camel/component/language/language.json @@ -33,7 +33,7 @@ "CamelLanguageScript": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String or Expression", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The script to execute provided in the header. Takes precedence over script configured on the endpoint.", "constantName": "org.apache.camel.component.language.LanguageConstants#LANGUAGE_SCRIPT" } }, "properties": { - "languageName": { "index": 0, "kind": "path", "displayName": "Language Name", "group": "producer", "label": "", "required": true, "type": "enum", "javaType": "java.lang.String", "enum": [ "bean", "constant", "datasonnet", "exchangeProperty", "file", "groovy", "header", "hl7terser", "java", "joor", "jq", "js", "jsonpath", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Sets the name of the language to use" }, + "languageName": { "index": 0, "kind": "path", "displayName": "Language Name", "group": "producer", "label": "", "required": true, "type": "enum", "javaType": "java.lang.String", "enum": [ "bean", "constant", "datasonnet", "exchangeProperty", "file", "groovy", "header", "hl7terser", "java", "joor", "jq", "js", "jsonpath", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Sets the name of the language to use" }, "resourceUri": { "index": 1, "kind": "path", "displayName": "Resource Uri", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "description": "Path to the resource, or a reference to lookup a bean in the Registry to use as the resource" }, "allowContextMapAll": { "index": 2, "kind": "parameter", "displayName": "Allow Context Map All", "group": "producer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Sets whether the context map should allow access to all details. By default only the message body and headers can be accessed. This option can be enabled for full access to the current Exchange and CamelContext. Doing so impose a potential security risk as this opens access to the full power of CamelContext API." }, "allowTemplateFromHeader": { "index": 3, "kind": "parameter", "displayName": "Allow Template From Header", "group": "producer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to allow to use resource template from header or not (default false). Enabling this allows to specify dynamic templates via message header. However this can be seen as a potential security vulnerability if the header is coming from a malicious user, so use this with care." }, diff --git a/components/camel-language/src/main/java/org/apache/camel/component/language/LanguageEndpoint.java b/components/camel-language/src/main/java/org/apache/camel/component/language/LanguageEndpoint.java index dc7089917fe81..3540253abc3ed 100644 --- a/components/camel-language/src/main/java/org/apache/camel/component/language/LanguageEndpoint.java +++ b/components/camel-language/src/main/java/org/apache/camel/component/language/LanguageEndpoint.java @@ -56,7 +56,7 @@ public class LanguageEndpoint extends ResourceEndpoint { private boolean contentResolvedFromResource; @UriPath(enums = "bean,constant,datasonnet,exchangeProperty,file,groovy,header,hl7terser,java,joor,jq,js,jsonpath" - + ",mvel,ognl,python,python3,quickjs,ref,simple,spel,tokenize,variable,wasm,xpath,xquery,xtokenize") + + ",mvel,ognl,python,python3,quickjs,ref,simple,spel,tokenize,variable,xpath,xquery,xtokenize") @Metadata(required = true) private String languageName; // resourceUri is optional in the language endpoint diff --git a/components/camel-wasm/pom.xml b/components/camel-wasm/pom.xml index 6465c2ded1ba5..9f959943d1dec 100644 --- a/components/camel-wasm/pom.xml +++ b/components/camel-wasm/pom.xml @@ -33,7 +33,6 @@ Camel Wasm component - -Dwasm.resources.path=${project.basedir}/src/test/resources Experimental @@ -61,19 +60,6 @@ ${endive-version} - - com.fasterxml.jackson.core - jackson-annotations - - - com.fasterxml.jackson.core - jackson-core - - - com.fasterxml.jackson.core - jackson-databind - - org.apache.camel diff --git a/components/camel-wasm/src/generated/resources/META-INF/org/apache/camel/language/wasm/wasm.json b/components/camel-wasm/src/generated/resources/META-INF/org/apache/camel/language/wasm/wasm.json deleted file mode 100644 index ded5b9d79d6bd..0000000000000 --- a/components/camel-wasm/src/generated/resources/META-INF/org/apache/camel/language/wasm/wasm.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "language": { - "kind": "language", - "name": "wasm", - "title": "Wasm", - "description": "Call a wasm (web assembly) function", - "deprecated": false, - "firstVersion": "4.5.0", - "label": "language", - "javaType": "org.apache.camel.language.wasm.WasmLanguage", - "supportLevel": "Experimental", - "groupId": "org.apache.camel", - "artifactId": "camel-wasm", - "version": "4.24.0-SNAPSHOT", - "modelName": "wasm", - "modelJavaType": "org.apache.camel.model.language.WasmExpression" - }, - "properties": { - "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node." }, - "expression": { "index": 1, "kind": "value", "displayName": "Expression", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The expression value in your chosen language syntax." }, - "module": { "index": 2, "kind": "attribute", "displayName": "Module", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function." }, - "resultType": { "index": 3, "kind": "attribute", "displayName": "Result Type", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The class of the result type (type from output)." }, - "trim": { "index": 4, "kind": "attribute", "displayName": "Trim", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether to trim the source code to remove leading and trailing whitespaces and line breaks." }, - "resolveResource": { "index": 5, "kind": "attribute", "displayName": "Resolve Resource", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether a result of the expression that is a String starting with resource: is loaded as a resource and its content becomes the result, e.g. a script that returns resource:file:order.json or resource:classpath:templates\/order.json (a name without a scheme is a classpath resource). Off by default; the resource: prefix on the expression text itself is always resolved. Applies to the expression used as a value, not as a predicate." } - } -} diff --git a/components/camel-wasm/src/generated/resources/META-INF/services/org/apache/camel/language.properties b/components/camel-wasm/src/generated/resources/META-INF/services/org/apache/camel/language.properties deleted file mode 100644 index 670d7174464f4..0000000000000 --- a/components/camel-wasm/src/generated/resources/META-INF/services/org/apache/camel/language.properties +++ /dev/null @@ -1,7 +0,0 @@ -# Generated by camel build tools - do NOT edit this file! -languages=wasm -groupId=org.apache.camel -artifactId=camel-wasm -version=4.24.0-SNAPSHOT -projectName=Camel :: Wasm -projectDescription=Camel Wasm component diff --git a/components/camel-wasm/src/generated/resources/META-INF/services/org/apache/camel/language/wasm b/components/camel-wasm/src/generated/resources/META-INF/services/org/apache/camel/language/wasm deleted file mode 100644 index 67da38cc42068..0000000000000 --- a/components/camel-wasm/src/generated/resources/META-INF/services/org/apache/camel/language/wasm +++ /dev/null @@ -1,2 +0,0 @@ -# Generated by camel build tools - do NOT edit this file! -class=org.apache.camel.language.wasm.WasmLanguage diff --git a/components/camel-wasm/src/main/docs/wasm-language.adoc b/components/camel-wasm/src/main/docs/wasm-language.adoc deleted file mode 100644 index e78879a52e012..0000000000000 --- a/components/camel-wasm/src/main/docs/wasm-language.adoc +++ /dev/null @@ -1,255 +0,0 @@ -= Wasm Language -:doctitle: Wasm -:shortname: wasm -:artifactid: camel-wasm -:description: Call a wasm (web assembly) function -:since: 4.5 -:supportlevel: Experimental -:tabs-sync-option: - -*Since Camel {since}* - -Camel supports Wasm to allow using xref:manual::expression.adoc[Expression] or xref:manual::predicate.adoc[Predicate]. - -== Wasm Options - -// language options: START -include::partial$language-options.adoc[] -// language options: END - - -== Writing A Wasm function - -In _Wasm_, sharing objects between the host, in this case the _JVM_, and the _Wasm_ module is deliberately restricted and as of today, it requires a number of steps: - -1. From the _host_, call a function inside the webassembly module that allocates a block of memory and returns its address, then save it -2. From the _host_, write the data that should be exchanged with the _Wasm_ module to the saved address -3. From the _host_, invoke the required function passing both the address where the data is written and its size -4. From the _Wasm_ module, read the data and process it -5. From the _host_, release the memory when done - -=== Providing functions for memory management - -The module hosting the function *must* provide the functions to allocate/deallocate memory that *must* be named `alloc` and `dealloc` respectively. - -Here's an example of the mentioned functions implemented in https://www.rust-lang.org[Rust]: - -[source,rust] ----- -pub extern "C" fn alloc(size: u32) -> *mut u8 { - let mut buf = Vec::with_capacity(size as usize); - let ptr = buf.as_mut_ptr(); - - // tell Rust not to clean this up - mem::forget(buf); - - ptr -} - -pub unsafe extern "C" fn dealloc(ptr: &mut u8, len: i32) { - // Retakes the pointer which allows its memory to be freed. - let _ = Vec::from_raw_parts(ptr, 0, len as usize); -} ----- - -=== Data shapes - -It is not possible to share a Java object with the Wasm module directly, and as mentioned before, -data exchange leverages Wasm's memory that can be accessed by both the host and the guest runtimes. -At this stage, the data structure that the component exchange with the Wasm function is a subset of the Apache Camel Message, -containing headers the body encoded as a base64 string: - -._Java-only: data wrapper class definition_ -[source,java] ----- -public static class Wrapper { - @JsonProperty - public Map headers = new HashMap<>(); - - @JsonProperty - public byte[] body; -} ----- - -=== Data processing - -The component expects the processing function to have the following signature: - -[source,rust] ----- -fn function(ptr: u32, len: u32) -> u64 ----- - -* it accepts two 32bit unsigned integers arguments -** a pointer to the memory location when the input data has been written (`ptr`) -** the size of the input data (`len`) -* it returns a 64bit unsigned integer where: -** the first 32bit represents a pointer to the return data -** the last 31bit represents the size of the return data -** the most significant bit of the returned data size is reserved to signal an error, so if it is set, then the return data could contain an error message/code/etc - -Here's an example of a complete function: - -[source,rust] ----- -#[derive(Serialize, Deserialize)] -struct Message { - headers: HashMap, - - #[serde(with = "Base64Standard")] - body: Vec, -} - -#[cfg_attr(all(target_arch = "wasm32"), export_name = "transform")] -#[no_mangle] -pub extern fn transform(ptr: u32, len: u32) -> u64 { - let bytes = unsafe { - slice::from_raw_parts_mut( - ptr as *mut u8, - len as usize) - }; - - let msg: Message = serde_json::from_slice(bytes).unwrap(); - let res = String::from_utf8(msg.body).unwrap().to_uppercase().as_bytes().to_vec(); - - let out_len = res.len(); - let out_ptr = alloc(out_len as u32); - - unsafe { - std::ptr::copy_nonoverlapping( - res.as_ptr(), - out_ptr, - out_len as usize) - }; - - return ((out_ptr as u64) << 32) | out_len as u64; -} ----- - -=== Errors and module state - -The module is instantiated once per `wasm` expression and that instance handles every message, one at a time, so data -the module keeps in its memory or globals carries over from one message to the next. - -* When the function returns with the error bit set, the error data is released with `dealloc` using its size without -the error bit, the error data becomes the message of the exception, and the instance is kept. -* When the call fails without returning, for example on a Rust `panic` or any other Wasm trap, the instance is -discarded and a new one is created from the module for the next message. Whatever the failed call allocated can no -longer be released, so keeping the instance would grow its memory with every failure. Any state the module kept in -the discarded instance is lost. -On a route where every call fails this way, the module is instantiated again for every message (its data segments -are copied and any start function runs), which costs more than a call on a kept instance. - -== Examples - -Supposing we have compiled a Wasm module containing the function above, then it can be called in a Camel Route by its name and module resource location: - -[tabs] -==== -Java:: -+ -[source,java] ----- -from("direct:in") - .transform() - .wasm("transform", "classpath://functions.wasm"); ----- - -XML:: -+ -[source,xml] ----- - - - - transform - - ----- - -YAML:: -+ -[source,yaml] ----- -- route: - from: - uri: direct:in - steps: - - transform: - expression: - wasm: - expression: transform - module: classpath://functions.wasm ----- -==== - - -== Using Wasm as a predicate - -When the function is used as a xref:manual::predicate.adoc[Predicate], for example with the -xref:eips:filter-eip.adoc[Filter] EIP, its result is converted to a boolean depending on the result type: - -* With the default result type (`byte[]`) or `String`, the returned bytes are read as a string and the -standard Camel rules apply: `true` and `false` (in any case) are parsed, empty data is `false`, and any -other value is `true`. So the function can simply return `true` or `false`. -* With the result type `Boolean`, only `true` and `false` (in any case) are accepted: any other value, -including empty data, is `false`. -* With a Jackson `JsonNode` result type, only the JSON boolean `true` matches. - -[tabs] -==== -Java:: -+ -[source,java] ----- -from("direct:in") - .filter().wasm("is_valid", "classpath://functions.wasm") - .to("direct:valid"); ----- - -XML:: -+ -[source,xml] ----- - - - - is_valid - - - ----- - -YAML:: -+ -[source,yaml] ----- -- route: - from: - uri: direct:in - steps: - - filter: - expression: - wasm: - expression: is_valid - module: classpath://functions.wasm - steps: - - to: - uri: direct:valid ----- -==== - - -== Dependencies - -If you use Maven you could add the following to your `pom.xml`, -substituting the version number for the latest and greatest release. - -[source,xml] ----- - - org.apache.camel - camel-wasm - x.x.x - ----- diff --git a/components/camel-wasm/src/main/java/org/apache/camel/language/wasm/WasmExpression.java b/components/camel-wasm/src/main/java/org/apache/camel/language/wasm/WasmExpression.java deleted file mode 100644 index 163c2cba3bcfa..0000000000000 --- a/components/camel-wasm/src/main/java/org/apache/camel/language/wasm/WasmExpression.java +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.language.wasm; - -import java.io.IOException; -import java.io.InputStream; - -import com.fasterxml.jackson.databind.JsonNode; -import org.apache.camel.CamelContext; -import org.apache.camel.Exchange; -import org.apache.camel.RuntimeCamelException; -import org.apache.camel.TypeConverter; -import org.apache.camel.spi.ExpressionResultTypeAware; -import org.apache.camel.spi.Resource; -import org.apache.camel.spi.ResourceLoader; -import org.apache.camel.support.ExpressionAdapter; -import org.apache.camel.support.PluginHelper; -import org.apache.camel.util.ObjectHelper; -import org.apache.camel.wasm.WasmFunction; -import org.apache.camel.wasm.WasmSupport; -import run.endive.wasm.Parser; - -public class WasmExpression extends ExpressionAdapter implements ExpressionResultTypeAware { - private final String expression; - private String module; - - private String resultTypeName; - private Class resultType; - - private String headerName; - private String propertyName; - - private TypeConverter typeConverter; - private WasmFunction function; - - public WasmExpression(String expression) { - this.expression = expression; - } - - @Override - public void init(CamelContext camelContext) { - super.init(camelContext); - - if (module == null) { - throw new IllegalArgumentException("Module must be configured"); - } - - this.typeConverter = camelContext.getTypeConverter(); - - if (resultTypeName != null && (resultType == null || resultType == Object.class)) { - resultType = camelContext.getClassResolver().resolveClass(resultTypeName); - } - if (resultType == null || resultType == Object.class) { - resultType = byte[].class; - } - - final ResourceLoader rl = PluginHelper.getResourceLoader(camelContext); - final Resource res = rl.resolveResource(module); - - try (InputStream is = res.getInputStream()) { - this.function = new WasmFunction(Parser.parse(is), expression); - } catch (IOException e) { - throw new RuntimeCamelException(e); - } - } - - @Override - public String getExpressionText() { - return this.expression; - } - - @Override - public Class getResultType() { - return this.resultType; - } - - public void setResultType(Class resultType) { - this.resultType = resultType; - } - - public String getResultTypeName() { - return resultTypeName; - } - - public void setResultTypeName(String resultTypeName) { - this.resultTypeName = resultTypeName; - } - - public String getHeaderName() { - return headerName; - } - - /** - * Name of the header to use as input instead of the message body. - *

- * It has higher precedence than the propertyName if both are set. - */ - public void setHeaderName(String headerName) { - this.headerName = headerName; - } - - public String getPropertyName() { - return propertyName; - } - - /** - * Name of the property to use as input instead of the message body. - *

- * It has lower precedence than the headerName if both are set. - */ - public void setPropertyName(String propertyName) { - this.propertyName = propertyName; - } - - public String getModule() { - return module; - } - - /** - * Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides - * the expression function. - */ - public void setModule(String module) { - this.module = module; - } - - @Override - public boolean matches(Exchange exchange) { - Object value = evaluate(exchange, Object.class); - - if (value instanceof JsonNode node) { - // a JSON result only matches when it is the boolean true - return node.isBoolean() && node.asBoolean(); - } - if (value instanceof byte[] bytes) { - // the default result type: the raw bytes returned by the function, such as "true" or "false" - value = typeConverter.convertTo(String.class, exchange, bytes); - } - - return ObjectHelper.evaluateValuePredicate(value); - } - - @Override - public Object evaluate(Exchange exchange) { - try { - byte[] in = WasmSupport.serialize(exchange); - byte[] result = function.run(in); - - return this.typeConverter.convertTo(resultType, exchange, result); - } catch (Exception e) { - throw new RuntimeCamelException(e); - } - } -} diff --git a/components/camel-wasm/src/main/java/org/apache/camel/language/wasm/WasmLanguage.java b/components/camel-wasm/src/main/java/org/apache/camel/language/wasm/WasmLanguage.java deleted file mode 100644 index 07579ec2418e8..0000000000000 --- a/components/camel-wasm/src/main/java/org/apache/camel/language/wasm/WasmLanguage.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.language.wasm; - -import org.apache.camel.CamelContext; -import org.apache.camel.Expression; -import org.apache.camel.Predicate; -import org.apache.camel.spi.PropertyConfigurer; -import org.apache.camel.spi.annotations.Language; -import org.apache.camel.support.ExpressionToPredicateAdapter; -import org.apache.camel.support.TypedLanguageSupport; -import org.apache.camel.support.component.PropertyConfigurerSupport; -import org.apache.camel.wasm.Wasm; - -@Language(Wasm.SCHEME) -public class WasmLanguage extends TypedLanguageSupport implements PropertyConfigurer { - - private String module; - - public WasmLanguage() { - } - - public String getModule() { - return module; - } - - public void setModule(String module) { - this.module = module; - } - - @Override - public boolean configure(CamelContext camelContext, Object target, String name, Object value, boolean ignoreCase) { - if (target != this) { - throw new IllegalStateException("Can only configure our own instance !"); - } - - switch (ignoreCase ? name.toLowerCase() : name) { - case "module": - setModule(PropertyConfigurerSupport.property(camelContext, String.class, value)); - return true; - default: - return false; - } - } - - @Override - public Predicate createPredicate(String expression) { - return ExpressionToPredicateAdapter.toPredicate(createExpression(expression)); - } - - @Override - public Expression createExpression(String expression) { - return createExpression(expression, null); - } - - @Override - public Predicate createPredicate(String expression, Object[] properties) { - return ExpressionToPredicateAdapter.toPredicate(createExpression(expression, properties)); - } - - @Override - public Expression createExpression(String expression, Object[] properties) { - WasmExpression answer = new WasmExpression(expression); - answer.setResultType(property(Class.class, properties, 0, null)); - answer.setModule(property(String.class, properties, 1, getModule())); - if (getCamelContext() != null) { - answer.init(getCamelContext()); - } - return answer; - } -} diff --git a/components/camel-wasm/src/main/java/org/apache/camel/wasm/Wasm.java b/components/camel-wasm/src/main/java/org/apache/camel/wasm/Wasm.java index c93336f4889b7..c6ee9c9c2f633 100644 --- a/components/camel-wasm/src/main/java/org/apache/camel/wasm/Wasm.java +++ b/components/camel-wasm/src/main/java/org/apache/camel/wasm/Wasm.java @@ -20,8 +20,6 @@ public final class Wasm { public static final String SCHEME = "wasm"; - public static final String FN_ALLOC = "alloc"; - public static final String FN_DEALLOC = "dealloc"; private Wasm() { } diff --git a/components/camel-wasm/src/main/java/org/apache/camel/wasm/WasmFunction.java b/components/camel-wasm/src/main/java/org/apache/camel/wasm/WasmFunction.java deleted file mode 100644 index 2c3ef70f1ed4f..0000000000000 --- a/components/camel-wasm/src/main/java/org/apache/camel/wasm/WasmFunction.java +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.wasm; - -import java.nio.charset.StandardCharsets; -import java.util.Objects; -import java.util.concurrent.locks.Lock; -import java.util.concurrent.locks.ReentrantLock; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import run.endive.runtime.ExportFunction; -import run.endive.runtime.Instance; -import run.endive.wasm.WasmModule; - -public class WasmFunction implements AutoCloseable { - private static final Logger LOG = LoggerFactory.getLogger(WasmFunction.class); - - private final Lock lock; - - private final WasmModule module; - private final String functionName; - - // guarded by lock; null after a failed call until the next call creates a new instance - private Instance instance; - private ExportFunction function; - private ExportFunction alloc; - private ExportFunction dealloc; - - public WasmFunction(WasmModule module, String functionName) { - this.lock = new ReentrantLock(); - - this.module = Objects.requireNonNull(module); - this.functionName = Objects.requireNonNull(functionName); - - // the instance fields are not final: create the first instance under the lock, so that a first run() on - // another thread sees them - lock.lock(); - try { - createInstance(); - } finally { - lock.unlock(); - } - } - - public byte[] run(byte[] in) throws Exception { - Objects.requireNonNull(in); - - final int inSize = in.length; - final byte[] out; - final boolean error; - - // - // Wasm execution is not thread safe so we must put a - // synchronization guard around the function execution - // - lock.lock(); - try { - if (instance == null) { - createInstance(); - } - - try { - int inPtr = (int) alloc.apply(inSize)[0]; - instance.memory().write(inPtr, in); - - long[] results = function.apply(inPtr, inSize); - long ptrAndSize = results[0]; - - int outPtr = (int) (ptrAndSize >> 32); - int outSize = (int) ptrAndSize; - - // assume the max output is 31 bit, leverage the first bit for - // error detection - error = isError(outSize); - if (error) { - outSize = errSize(outSize); - } - - out = instance.memory().readBytes(outPtr, outSize); - - dealloc.apply(inPtr, inSize); - dealloc.apply(outPtr, outSize); - } catch (RuntimeException | Error e) { - // The guest trapped, was interrupted or failed otherwise: its memory and globals are left as the - // failed call left them, and whatever it allocated before the failure can never be released. - // Discard the instance instead of calling into it again, so the original exception is propagated - // as is, and create a new one on the next call. - discardInstance(e); - throw e; - } - } finally { - lock.unlock(); - } - - if (error) { - throw new RuntimeException(new String(out, StandardCharsets.UTF_8)); - } - - return out; - } - - @Override - public void close() throws Exception { - lock.lock(); - try { - if (instance != null) { - instance.close(); - } - clearInstance(); - } finally { - lock.unlock(); - } - } - - private void createInstance() { - Instance newInstance = Instance.builder(this.module).build(); - ExportFunction newFunction = newInstance.export(this.functionName); - ExportFunction newAlloc = newInstance.export(Wasm.FN_ALLOC); - ExportFunction newDealloc = newInstance.export(Wasm.FN_DEALLOC); - - // all four fields refer to the same instance, or are left as they were if an export is missing - this.instance = newInstance; - this.function = newFunction; - this.alloc = newAlloc; - this.dealloc = newDealloc; - } - - private void discardInstance(Throwable cause) { - LOG.debug("Discarding the Wasm instance of function {} after a failed call: {}", functionName, cause.getMessage()); - - try { - instance.close(); - } catch (RuntimeException e) { - cause.addSuppressed(e); - } - clearInstance(); - } - - private void clearInstance() { - this.instance = null; - this.function = null; - this.alloc = null; - this.dealloc = null; - } - - private static boolean isError(int number) { - return (number & (1 << 31)) != 0; - } - - private static int errSize(int number) { - return number & (~(1 << 31)); - } -} diff --git a/components/camel-wasm/src/main/java/org/apache/camel/wasm/WasmSupport.java b/components/camel-wasm/src/main/java/org/apache/camel/wasm/WasmSupport.java deleted file mode 100644 index 0fe5bddcb0f92..0000000000000 --- a/components/camel-wasm/src/main/java/org/apache/camel/wasm/WasmSupport.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.wasm; - -import java.util.HashMap; -import java.util.Map; - -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.json.JsonMapper; -import org.apache.camel.Exchange; - -public final class WasmSupport { - public static final ObjectMapper MAPPER = JsonMapper.builder().build(); - - private WasmSupport() { - } - - public static byte[] serialize(Exchange exchange) throws Exception { - Wrapper env = new Wrapper(); - env.body = exchange.getMessage().getBody(byte[].class); - - for (String headerName : exchange.getMessage().getHeaders().keySet()) { - env.headers.put(headerName, exchange.getMessage().getHeader(headerName, String.class)); - } - - return MAPPER.writeValueAsBytes(env); - } - - public static class Wrapper { - @JsonProperty - public Map headers = new HashMap<>(); - - @JsonProperty - public byte[] body; - } -} diff --git a/components/camel-wasm/src/test/java/org/apache/camel/component/wasm/WasmComponentTest.java b/components/camel-wasm/src/test/java/org/apache/camel/component/wasm/WasmComponentTest.java index b7137dcc87d22..d766ff2432cf0 100644 --- a/components/camel-wasm/src/test/java/org/apache/camel/component/wasm/WasmComponentTest.java +++ b/components/camel-wasm/src/test/java/org/apache/camel/component/wasm/WasmComponentTest.java @@ -972,8 +972,8 @@ void moduleIsLoadedAgainAfterAFailedLoad() throws Exception { @Test void moduleWithoutStartIsRejected() throws Exception { - // the test module of the wasm language exports functions, not a program - assertStartFails("wasm:classpath:functions.wasm", "has no _start function"); + // a module that exports functions, not a program + assertStartFails("wasm:" + wat("library", "(module (func (export \"process\")))"), "has no _start function"); } @Test diff --git a/components/camel-wasm/src/test/java/org/apache/camel/language/wasm/WasmLanguageTest.java b/components/camel-wasm/src/test/java/org/apache/camel/language/wasm/WasmLanguageTest.java deleted file mode 100644 index 86d027d6e78c9..0000000000000 --- a/components/camel-wasm/src/test/java/org/apache/camel/language/wasm/WasmLanguageTest.java +++ /dev/null @@ -1,129 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.language.wasm; - -import org.apache.camel.CamelContext; -import org.apache.camel.Exchange; -import org.apache.camel.FluentProducerTemplate; -import org.apache.camel.ProducerTemplate; -import org.apache.camel.builder.RouteBuilder; -import org.apache.camel.component.mock.MockEndpoint; -import org.apache.camel.impl.DefaultCamelContext; -import org.apache.camel.util.StringHelper; -import org.assertj.core.api.InstanceOfAssertFactories; -import org.junit.jupiter.api.Test; -import org.junit.jupiter.params.ParameterizedTest; -import org.junit.jupiter.params.provider.ValueSource; - -import static org.assertj.core.api.Assertions.as; -import static org.assertj.core.api.Assertions.assertThat; - -public class WasmLanguageTest { - - @ParameterizedTest - @ValueSource(strings = { - "transform@functions.wasm", - "transform@file:{{wasm.resources.path}}/functions.wasm" - }) - public void testLanguage(String expression) throws Exception { - try (CamelContext cc = new DefaultCamelContext()) { - - FluentProducerTemplate pt = cc.createFluentProducerTemplate(); - - cc.addRoutes(new RouteBuilder() { - @Override - public void configure() throws Exception { - from("direct:in") - .transform() - .wasm( - StringHelper.before(expression, "@"), - StringHelper.after(expression, "@")); - } - }); - cc.start(); - - Exchange out = pt.to("direct:in") - .withHeader("foo", "bar") - .withBody("hello") - .request(Exchange.class); - - assertThat(out.getMessage().getHeaders()) - .containsEntry("foo", "bar"); - assertThat(out.getMessage().getBody(String.class)) - .isEqualTo("HELLO"); - - } - } - - @Test - public void testLanguageFailure() throws Exception { - try (CamelContext cc = new DefaultCamelContext()) { - - FluentProducerTemplate pt = cc.createFluentProducerTemplate(); - - cc.addRoutes(new RouteBuilder() { - @Override - public void configure() throws Exception { - from("direct:in") - .transform() - .wasm("transform_err", "functions.wasm"); - } - }); - cc.start(); - - Exchange out = pt.to("direct:in") - .withHeader("foo", "bar") - .withBody("hello") - .request(Exchange.class); - - assertThat(out.getException()) - .isNotNull() - .hasCauseInstanceOf(RuntimeException.class) - .extracting(Throwable::getCause, as(InstanceOfAssertFactories.THROWABLE)) - .hasMessage("this is an error"); - } - } - - @ParameterizedTest - @ValueSource(classes = { byte[].class, String.class, Boolean.class }) - public void testPredicate(Class resultType) throws Exception { - try (CamelContext cc = new DefaultCamelContext()) { - - cc.addRoutes(new RouteBuilder() { - @Override - public void configure() throws Exception { - // the transform function upper-cases the body, so it returns TRUE, FALSE or nothing - from("direct:in") - .filter() - .wasm("transform", "functions.wasm", resultType) - .to("mock:result"); - } - }); - cc.start(); - - MockEndpoint mock = cc.getEndpoint("mock:result", MockEndpoint.class); - mock.expectedBodiesReceived("true"); - - ProducerTemplate pt = cc.createProducerTemplate(); - pt.sendBody("direct:in", "false"); - pt.sendBody("direct:in", ""); - pt.sendBody("direct:in", "true"); - - mock.assertIsSatisfied(); - } - } -} diff --git a/components/camel-wasm/src/test/java/org/apache/camel/wasm/WasmFunctionTest.java b/components/camel-wasm/src/test/java/org/apache/camel/wasm/WasmFunctionTest.java deleted file mode 100644 index 3df5ad17aa000..0000000000000 --- a/components/camel-wasm/src/test/java/org/apache/camel/wasm/WasmFunctionTest.java +++ /dev/null @@ -1,177 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.wasm; - -import java.util.Arrays; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicReference; - -import org.junit.jupiter.api.Test; -import run.endive.runtime.TrapException; -import run.endive.runtime.WasmInterruptedException; -import run.endive.wabt.Wat2Wasm; -import run.endive.wasm.Parser; -import run.endive.wasm.WasmModule; - -import static org.assertj.core.api.Assertions.assertThat; -import static org.assertj.core.api.Assertions.assertThatThrownBy; -import static org.awaitility.Awaitility.await; - -public class WasmFunctionTest { - - /** - * A guest with one page of memory (64 KiB) and an arena allocator that only gets its memory back when every - * allocation has been released. The process function looks at the first byte of its input: - *
    - *
  • {@code t} allocates 32 KiB and traps before returning, like a Rust panic on bad input
  • - *
  • {@code e} returns the error message {@code boom} with the error bit set on its size
  • - *
  • {@code s} spins until the calling thread is interrupted
  • - *
  • anything else is echoed back
  • - *
- * The dealloc function traps when it is given a size that does not fit in 31 bits. - */ - private static final String GUEST = """ - (module - (memory (export "memory") 1 1) - (data (i32.const 16) "boom") - (global $base i32 (i32.const 1024)) - (global $next (mut i32) (i32.const 1024)) - (global $live (mut i32) (i32.const 0)) - - (func $alloc (export "alloc") (param $size i32) (result i32) - (local $ptr i32) - (local.set $ptr (global.get $next)) - (if (i32.gt_u (i32.add (local.get $ptr) (local.get $size)) (i32.const 65536)) - (then unreachable)) - (global.set $next (i32.add (local.get $ptr) (local.get $size))) - (global.set $live (i32.add (global.get $live) (i32.const 1))) - (local.get $ptr)) - - (func (export "dealloc") (param $ptr i32) (param $len i32) - (if (i32.lt_s (local.get $len) (i32.const 0)) - (then unreachable)) - (global.set $live (i32.sub (global.get $live) (i32.const 1))) - (if (i32.eqz (global.get $live)) - (then (global.set $next (global.get $base))))) - - (func (export "process") (param $ptr i32) (param $len i32) (result i64) - (local $op i32) - (local $out i32) - (if (i32.gt_u (local.get $len) (i32.const 0)) - (then (local.set $op (i32.load8_u (local.get $ptr))))) - (if (i32.eq (local.get $op) (i32.const 116)) - (then - (drop (call $alloc (i32.const 32768))) - unreachable)) - (if (i32.eq (local.get $op) (i32.const 101)) - (then - (local.set $out (call $alloc (i32.const 4))) - (memory.copy (local.get $out) (i32.const 16) (i32.const 4)) - (return (i64.or - (i64.shl (i64.extend_i32_u (local.get $out)) (i64.const 32)) - (i64.const 0x80000004))))) - (if (i32.eq (local.get $op) (i32.const 115)) - (then (loop $spin (br $spin)))) - (local.set $out (call $alloc (local.get $len))) - (memory.copy (local.get $out) (local.get $ptr) (local.get $len)) - (i64.or - (i64.shl (i64.extend_i32_u (local.get $out)) (i64.const 32)) - (i64.extend_i32_u (local.get $len)))) - ) - """; - - private static WasmFunction newFunction() { - WasmModule module = Parser.parse(Wat2Wasm.parse(GUEST)); - return new WasmFunction(module, "process"); - } - - private static byte[] data(char first, int size) { - byte[] data = new byte[size]; - Arrays.fill(data, (byte) 'a'); - data[0] = (byte) first; - return data; - } - - @Test - public void testTrapDoesNotLeakGuestMemory() throws Exception { - WasmFunction function = newFunction(); - - // each trap leaves 32 KiB allocated in the guest, more than half of its memory - for (int i = 0; i < 3; i++) { - assertThatThrownBy(() -> function.run(data('t', 1))) - .isInstanceOf(TrapException.class); - } - - // needs 2 x 16 KiB: only fits if the memory of the failed calls was given back - byte[] in = data('a', 16 * 1024); - assertThat(function.run(in)).isEqualTo(in); - } - - @Test - public void testErrorIsDeallocatedWithItsSize() throws Exception { - WasmFunction function = newFunction(); - - // dealloc traps on a size with the error bit set, which would replace the error of the function - assertThatThrownBy(() -> function.run(data('e', 1))) - .isExactlyInstanceOf(RuntimeException.class) - .hasMessage("boom"); - - byte[] in = data('a', 16); - assertThat(function.run(in)).isEqualTo(in); - } - - @Test - public void testInterruptDoesNotLeakGuestMemory() throws Exception { - WasmFunction function = newFunction(); - AtomicReference failure = new AtomicReference<>(); - - // the input of the interrupted call takes 40 KiB of the guest memory until it is released - Thread caller = new Thread(() -> { - try { - function.run(data('s', 40 * 1024)); - } catch (Throwable e) { - failure.set(e); - } - }, "wasm-caller"); - // a daemon, so that a guest that is never interrupted cannot keep the test JVM from exiting - caller.setDaemon(true); - caller.start(); - - try { - await().atMost(10, TimeUnit.SECONDS).until(() -> isRunningGuestCode(caller)); - caller.interrupt(); - caller.join(TimeUnit.SECONDS.toMillis(10)); - - assertThat(caller.isAlive()).isFalse(); - assertThat(failure.get()).isInstanceOf(WasmInterruptedException.class); - - // needs 2 x 16 KiB: only fits if the input of the interrupted call was given back - byte[] in = data('a', 16 * 1024); - assertThat(function.run(in)).isEqualTo(in); - } finally { - // stop the spinning guest even when an assertion above failed - caller.interrupt(); - caller.join(TimeUnit.SECONDS.toMillis(10)); - } - } - - private static boolean isRunningGuestCode(Thread thread) { - // the package rather than a class, so that an engine switch or an internal rename does not break the probe - return Arrays.stream(thread.getStackTrace()) - .anyMatch(e -> e.getClassName().startsWith("run.endive.")); - } -} diff --git a/components/camel-wasm/src/test/resources/functions.wasm b/components/camel-wasm/src/test/resources/functions.wasm deleted file mode 100755 index c8b9e5c2838cd66e943356bb8904db855584f4b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2216042 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

K>DhBB*A{5vfRh_9qJ#KO$pyk?7KzUqcSWA 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%0DO0)u16GB#^uVJe2D@svDe}a)}44Fefqo5dS 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 L$l>0Wl*#`O@3?$? diff --git a/components/camel-wasm/src/test/rust/Cargo.lock b/components/camel-wasm/src/test/rust/Cargo.lock deleted file mode 100644 index 5c446d78d16cf..0000000000000 --- a/components/camel-wasm/src/test/rust/Cargo.lock +++ /dev/null @@ -1,124 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "base64-serde" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba368df5de76a5bea49aaf0cf1b39ccfbbef176924d1ba5db3e4135216cbe3c7" -dependencies = [ - "base64", - "serde", -] - -[[package]] -name = "functions" -version = "0.1.0" -dependencies = [ - "base64", - "base64-serde", - "serde", - "serde_json", -] - -[[package]] -name = "itoa" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" - -[[package]] -name = "proc-macro2" -version = "1.0.76" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "quote" -version = "1.0.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "ryu" -version = "1.0.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" - -[[package]] -name = "serde" -version = "1.0.195" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.195" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "serde_json" -version = "1.0.111" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4" -dependencies = [ - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "syn" -version = "2.0.48" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "unicode-ident" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" diff --git a/components/camel-wasm/src/test/rust/Cargo.toml b/components/camel-wasm/src/test/rust/Cargo.toml deleted file mode 100644 index 4d07159e3f69f..0000000000000 --- a/components/camel-wasm/src/test/rust/Cargo.toml +++ /dev/null @@ -1,37 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -[package] -name = "functions" -version = "0.1.0" -authors = ["lburgazzoli@gmail.com"] -edition = "2018" - -[lib] -crate-type = ["cdylib"] -path = "functions.rs" - -[dependencies] -serde = { version = "1.0", features = ["derive"] } -serde_json = "1.0" -base64 = "0.21.7" -base64-serde = "0.7.0" - -[profile.release] -opt-level = 0 -lto = "off" -codegen-units = 1 \ No newline at end of file diff --git a/components/camel-wasm/src/test/rust/build.sh b/components/camel-wasm/src/test/rust/build.sh deleted file mode 100755 index 455fe7892475e..0000000000000 --- a/components/camel-wasm/src/test/rust/build.sh +++ /dev/null @@ -1,26 +0,0 @@ -#! /bin/bash -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -set -euxo pipefail - -# rustup target add wasm32-unknown-unknown - -cargo build --target wasm32-unknown-unknown --release - -cp target/wasm32-unknown-unknown/release/functions.wasm ../resources - diff --git a/components/camel-wasm/src/test/rust/functions.rs b/components/camel-wasm/src/test/rust/functions.rs deleted file mode 100644 index 017d59845a3d9..0000000000000 --- a/components/camel-wasm/src/test/rust/functions.rs +++ /dev/null @@ -1,134 +0,0 @@ -// -// Licensed to the Apache Software Foundation (ASF) under one or more -// contributor license agreements. See the NOTICE file distributed with -// this work for additional information regarding copyright ownership. -// The ASF licenses this file to You under the Apache License, Version 2.0 -// (the "License"); you may not use this file except in compliance with -// the License. You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -use std::mem; -use std::slice; -use std::collections::HashMap; - -use serde::{Deserialize, Serialize}; -use base64_serde::base64_serde_type; - -base64_serde_type!(Base64Standard, base64::engine::general_purpose::STANDARD); - -#[derive(Serialize, Deserialize)] -struct Message { - headers: HashMap, - - #[serde(with = "Base64Standard")] - body: Vec, -} - -#[cfg_attr(all(target_arch = "wasm32"), export_name = "alloc")] -#[no_mangle] -pub extern "C" fn alloc(size: u32) -> *mut u8 { - let mut buf = Vec::with_capacity(size as usize); - let ptr = buf.as_mut_ptr(); - - // tell Rust not to clean this up - mem::forget(buf); - - ptr -} - -#[cfg_attr(all(target_arch = "wasm32"), export_name = "dealloc")] -#[no_mangle] -pub unsafe extern "C" fn dealloc(ptr: &mut u8, len: i32) { - // Retakes the pointer which allows its memory to be freed. - let _ = Vec::from_raw_parts(ptr, 0, len as usize); -} - -#[cfg_attr(all(target_arch = "wasm32"), export_name = "process")] -#[no_mangle] -pub extern fn process(ptr: u32, len: u32) -> u64 { - let bytes = unsafe { - slice::from_raw_parts_mut( - ptr as *mut u8, - len as usize) - }; - - let mut msg: Message = serde_json::from_slice(bytes).unwrap(); - msg.body = String::from_utf8(msg.body).unwrap().to_uppercase().as_bytes().to_vec(); - - let out_vec = serde_json::to_vec(&msg).unwrap(); - let out_len = out_vec.len(); - let out_ptr = alloc(out_len as u32); - - unsafe { - std::ptr::copy_nonoverlapping( - out_vec.as_ptr(), - out_ptr, - out_len as usize) - }; - - return ((out_ptr as u64) << 32) | out_len as u64; -} - - -#[cfg_attr(all(target_arch = "wasm32"), export_name = "process_err")] -#[no_mangle] -pub extern fn process_err(ptr: u32, len: u32) -> u64 { - return fail(ptr, len) -} - -#[cfg_attr(all(target_arch = "wasm32"), export_name = "transform")] -#[no_mangle] -pub extern fn transform(ptr: u32, len: u32) -> u64 { - let bytes = unsafe { - slice::from_raw_parts_mut( - ptr as *mut u8, - len as usize) - }; - - let msg: Message = serde_json::from_slice(bytes).unwrap(); - let res = String::from_utf8(msg.body).unwrap().to_uppercase().as_bytes().to_vec(); - - let out_len = res.len(); - let out_ptr = alloc(out_len as u32); - - unsafe { - std::ptr::copy_nonoverlapping( - res.as_ptr(), - out_ptr, - out_len as usize) - }; - - return ((out_ptr as u64) << 32) | out_len as u64; -} - -#[cfg_attr(all(target_arch = "wasm32"), export_name = "transform_err")] -#[no_mangle] -pub extern fn transform_err(ptr: u32, len: u32) -> u64 { - return fail(ptr, len) -} - - -pub fn fail(_ptr: u32, _len: u32) -> u64 { - let res = "this is an error"; - let mut out_len = res.len(); - let out_ptr = alloc(out_len as u32); - - unsafe { - std::ptr::copy_nonoverlapping( - res.as_ptr(), - out_ptr, - out_len as usize) - }; - - out_len |= 1 << 31; - - return ((out_ptr as u64) << 32) | out_len as u64; -} \ No newline at end of file diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/aggregate.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/aggregate.json index b44e99f13f841..289b5ccd13dd5 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/aggregate.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/aggregate.json @@ -17,10 +17,10 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "correlationExpression": { "index": 4, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression used to calculate the correlation key to use for aggregation. Exchanges with the same correlation key are aggregated together. If the correlation key cannot be evaluated an Exception is thrown." }, - "completionPredicate": { "index": 5, "kind": "expression", "displayName": "Completion Predicate", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "A predicate to indicate when an aggregated exchange is complete. If not specified and the AggregationStrategy implements Predicate, it will be used as the completionPredicate." }, - "completionTimeoutExpression": { "index": 6, "kind": "expression", "displayName": "Completion Timeout Expression", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Time in millis that an aggregated exchange should be inactive before its complete (timeout), evaluated as an expression allowing dynamic timeout values." }, - "completionSizeExpression": { "index": 7, "kind": "expression", "displayName": "Completion Size Expression", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Number of messages aggregated before the aggregation is complete, evaluated as an expression allowing dynamic size values." }, + "correlationExpression": { "index": 4, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression used to calculate the correlation key to use for aggregation. Exchanges with the same correlation key are aggregated together. If the correlation key cannot be evaluated an Exception is thrown." }, + "completionPredicate": { "index": 5, "kind": "expression", "displayName": "Completion Predicate", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "A predicate to indicate when an aggregated exchange is complete. If not specified and the AggregationStrategy implements Predicate, it will be used as the completionPredicate." }, + "completionTimeoutExpression": { "index": 6, "kind": "expression", "displayName": "Completion Timeout Expression", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Time in millis that an aggregated exchange should be inactive before its complete (timeout), evaluated as an expression allowing dynamic timeout values." }, + "completionSizeExpression": { "index": 7, "kind": "expression", "displayName": "Completion Size Expression", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Number of messages aggregated before the aggregation is complete, evaluated as an expression allowing dynamic size values." }, "optimisticLockRetryPolicy": { "index": 8, "kind": "element", "displayName": "Optimistic Lock Retry Policy", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.OptimisticLockRetryPolicyDefinition", "deprecated": false, "autowired": false, "secret": false, "description": "Configures retry settings when using optimistic locking." }, "parallelProcessing": { "index": 9, "kind": "attribute", "displayName": "Parallel Processing", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "When completed exchanges are sent out of the aggregator, this option indicates whether Camel should use a thread pool with multiple threads for concurrency." }, "optimisticLocking": { "index": 10, "kind": "attribute", "displayName": "Optimistic Locking", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Turns on optimistic locking, which requires the aggregation repository to implement OptimisticLockingAggregationRepository." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/cache.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/cache.json index 08f5ce5c924b6..159cd3acf48a3 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/cache.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/cache.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression to compute the cache key. Messages with the same key share the cached result." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression to compute the cache key. Messages with the same key share the cached result." }, "keyValueRepository": { "index": 5, "kind": "attribute", "displayName": "Key Value Repository", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.spi.KeyValueRepository", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the reference name of the KeyValueRepository to use as the cache backing store. If not set, a MemoryKeyValueRepository is auto-created." }, "ttl": { "index": 6, "kind": "attribute", "displayName": "Ttl", "group": "common", "required": false, "type": "duration", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "-1", "description": "Sets the time-to-live for cached entries. Supports duration syntax (e.g. 10m, 1h) or milliseconds. Default: -1 (no expiration)." }, "cacheNull": { "index": 7, "kind": "attribute", "displayName": "Cache Null", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to cache null results. By default, null message bodies are not cached." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/delay.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/delay.json index a1ad1e5f75d37..a70f33c5a93ac 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/delay.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/delay.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that determines the delay duration in milliseconds." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that determines the delay duration in milliseconds." }, "asyncDelayed": { "index": 5, "kind": "attribute", "displayName": "Async Delayed", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Enables asynchronous delay which means the thread will not block while delaying." }, "callerRunsWhenRejected": { "index": 6, "kind": "attribute", "displayName": "Caller Runs When Rejected", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether or not the caller should run the task when it was rejected by the thread pool." }, "executorService": { "index": 7, "kind": "attribute", "displayName": "Executor Service", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.util.concurrent.ExecutorService", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom thread pool if asyncDelay has been enabled." } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/dynamicRouter.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/dynamicRouter.json index 23ea567272053..5382f92c8cc8f 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/dynamicRouter.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/dynamicRouter.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the next endpoint URI to route to. The expression is called iteratively until it returns null to indicate the end of routing." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the next endpoint URI to route to. The expression is called iteratively until it returns null to indicate the end of routing." }, "uriDelimiter": { "index": 5, "kind": "attribute", "displayName": "Uri Delimiter", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", "description": "The delimiter used to separate endpoint URIs when the expression returns multiple endpoints. Default is comma." }, "ignoreInvalidEndpoints": { "index": 6, "kind": "attribute", "displayName": "Ignore Invalid Endpoints", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled then invalid endpoint URIs are ignored and logged instead of throwing an exception." }, "cacheSize": { "index": 7, "kind": "attribute", "displayName": "Cache Size", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, "description": "Configures the cache size for ProducerCache which caches producers for reuse. The default cache size is 1000. Set to -1 to turn off caching." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/enrich.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/enrich.json index 757e68c4c0140..2f1da84e8b8bb 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/enrich.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/enrich.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the endpoint URI to enrich from." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the endpoint URI to enrich from." }, "variableSend": { "index": 5, "kind": "attribute", "displayName": "Variable Send", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "To use a variable as the source for the message body to send. When using send variable then the message body is taken from this variable instead of the current message, however the headers from the message will still be used as well." }, "variableReceive": { "index": 6, "kind": "attribute", "displayName": "Variable Receive", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "To use a variable to store the received message body (only body, not headers). This makes it handy to use variables for user data and to easily control what data to use for sending and receiving." }, "aggregationStrategy": { "index": 7, "kind": "attribute", "displayName": "Aggregation Strategy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the AggregationStrategy to be used to merge the reply from the external service, into a single outgoing message. By default Camel will use the reply from the external service as outgoing message." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/filter.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/filter.json index 14e7752a5be72..4e72dc3ae81bb 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/filter.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/filter.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to evaluate. Messages where the predicate returns false are filtered out and not routed further." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to evaluate. Messages where the predicate returns false are filtered out and not routed further." }, "statusPropertyName": { "index": 5, "kind": "attribute", "displayName": "Status Property Name", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Name of an exchange property to store whether the filter predicate matched or not. The value is stored as a boolean." }, "outputs": { "index": 6, "kind": "element", "displayName": "Outputs", "group": "common", "required": true, "type": "array", "javaType": "java.util.List>", "oneOf": [ "a2aSubTask", "aggregate", "bean", "cache", "choice", "circuitBreaker", "claimCheck", "convertBodyTo", "convertHeaderTo", "convertVariableTo", "delay", "doCatch", "doFinally", "doTry", "dynamicRouter", "enrich", "filter", "idempotentConsumer", "intercept", "interceptFrom", "interceptSendToEndpoint", "kamelet", "loadBalance", "log", "loop", "marshal", "multicast", "onCompletion", "onException", "pausable", "pipeline", "policy", "poll", "pollEnrich", "process", "recipientList", "removeHeader", "removeHeaders", "removeProperties", "removeProperty", "removeVariable", "resequence", "resumable", "rollback", "routingSlip", "saga", "sample", "script", "setBody", "setExchangePattern", "setHeader", "setHeaders", "setProperty", "setVariable", "setVariables", "sort", "split", "step", "stop", "switch", "threads", "throttle", "throwException", "to", "toD", "tokenizer", "transacted", "transform", "transformDataType", "unmarshal", "validate", "wireTap" ], "deprecated": false, "autowired": false, "secret": false } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/idempotentConsumer.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/idempotentConsumer.json index f027166a0bfc3..42b65e18142d4 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/idempotentConsumer.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/idempotentConsumer.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the unique message ID used for duplicate detection. Messages with the same ID are treated as duplicates and skipped." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the unique message ID used for duplicate detection. Messages with the same ID are treated as duplicates and skipped." }, "idempotentRepository": { "index": 5, "kind": "attribute", "displayName": "Idempotent Repository", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.spi.IdempotentRepository", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the reference name of the message id repository to use for storing processed message ids to detect duplicates." }, "eager": { "index": 6, "kind": "attribute", "displayName": "Eager", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Sets whether to eagerly add the key to the idempotent repository or wait until the exchange is complete. Eager is default enabled." }, "completionEager": { "index": 7, "kind": "attribute", "displayName": "Completion Eager", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Sets whether to complete the idempotent consumer eager or when the exchange is done." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/language/wasm.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/language/wasm.json deleted file mode 100644 index f77d85b07c350..0000000000000 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/language/wasm.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "model": { - "kind": "model", - "name": "wasm", - "title": "Wasm", - "description": "Call a wasm (web assembly) function", - "deprecated": false, - "firstVersion": "4.5.0", - "label": "language", - "javaType": "org.apache.camel.model.language.WasmExpression", - "abstract": false, - "input": false, - "output": false - }, - "properties": { - "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node." }, - "expression": { "index": 1, "kind": "value", "displayName": "Expression", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The expression value in your chosen language syntax." }, - "module": { "index": 2, "kind": "attribute", "displayName": "Module", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function." }, - "resultType": { "index": 3, "kind": "attribute", "displayName": "Result Type", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The class of the result type (type from output)." }, - "trim": { "index": 4, "kind": "attribute", "displayName": "Trim", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether to trim the source code to remove leading and trailing whitespaces and line breaks." }, - "resolveResource": { "index": 5, "kind": "attribute", "displayName": "Resolve Resource", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether a result of the expression that is a String starting with resource: is loaded as a resource and its content becomes the result, e.g. a script that returns resource:file:order.json or resource:classpath:templates\/order.json (a name without a scheme is a classpath resource). Off by default; the resource: prefix on the expression text itself is always resolved. Applies to the expression used as a value, not as a predicate." } - } -} diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/loadbalancer/stickyLoadBalancer.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/loadbalancer/stickyLoadBalancer.json index 948180acfcce4..87b2bc65e0d17 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/loadbalancer/stickyLoadBalancer.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/loadbalancer/stickyLoadBalancer.json @@ -13,6 +13,6 @@ }, "properties": { "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node" }, - "correlationExpression": { "index": 1, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The correlation expression to use to calculate the correlation key." } + "correlationExpression": { "index": 1, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The correlation expression to use to calculate the correlation key." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/loop.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/loop.json index 08cffb3e6a881..5d6a11f3e80f9 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/loop.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/loop.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that determines the number of times to loop. The result is converted to an integer." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that determines the number of times to loop. The result is converted to an integer." }, "copy": { "index": 5, "kind": "attribute", "displayName": "Copy", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled, a copy of the input Exchange is used for each iteration. That means each iteration will start from a copy of the same message." }, "doWhile": { "index": 6, "kind": "attribute", "displayName": "Do While", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Enables the while loop that loops until the predicate evaluates to false or null." }, "breakOnShutdown": { "index": 7, "kind": "attribute", "displayName": "Break On Shutdown", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled, the loop will not iterate until it reaches the end when Camel is shut down." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/onException.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/onException.json index e0ed0003e5046..002a33850fee0 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/onException.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/onException.json @@ -18,11 +18,11 @@ "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, "exception": { "index": 4, "kind": "element", "displayName": "Exception", "group": "common", "required": true, "type": "array", "javaType": "java.util.List", "deprecated": false, "autowired": false, "secret": false, "description": "A list of exception class names to catch and handle." }, "onWhen": { "index": 5, "kind": "element", "displayName": "On When", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.OnWhenDefinition", "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "To use an expression to only trigger this in specific situations" }, - "retryWhile": { "index": 6, "kind": "expression", "displayName": "Retry While", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "Sets a predicate to control whether redelivery should continue. Redelivery continues as long as the predicate evaluates to true." }, + "retryWhile": { "index": 6, "kind": "expression", "displayName": "Retry While", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "Sets a predicate to control whether redelivery should continue. Redelivery continues as long as the predicate evaluates to true." }, "redeliveryPolicy": { "index": 7, "kind": "element", "displayName": "Redelivery Policy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.RedeliveryPolicyDefinition", "deprecated": false, "autowired": false, "secret": false, "description": "Configures redelivery options such as maximum redeliveries, delays, and logging behavior." }, "redeliveryPolicyRef": { "index": 8, "kind": "attribute", "displayName": "Redelivery Policy Ref", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Sets a reference to a redelivery policy to lookup in the registry to be used." }, - "handled": { "index": 9, "kind": "expression", "displayName": "Handled", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "When handled is set to true, the exception is suppressed and not sent back to the caller. The original route stops at the point of failure and only the steps in this onException block execute. The response returned to the caller is whatever this onException block produces. Use continued instead if you want to resume the original route from the point of failure." }, - "continued": { "index": 10, "kind": "expression", "displayName": "Continued", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "When continued is set to true, the exception is handled and routing continues from the point of failure. Unlike handled, which stops the original route and only runs the onException block, continued resumes the original route after the onException steps complete. The exception is considered handled as well." }, + "handled": { "index": 9, "kind": "expression", "displayName": "Handled", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "When handled is set to true, the exception is suppressed and not sent back to the caller. The original route stops at the point of failure and only the steps in this onException block execute. The response returned to the caller is whatever this onException block produces. Use continued instead if you want to resume the original route from the point of failure." }, + "continued": { "index": 10, "kind": "expression", "displayName": "Continued", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "When continued is set to true, the exception is handled and routing continues from the point of failure. Unlike handled, which stops the original route and only runs the onException block, continued resumes the original route after the onException steps complete. The exception is considered handled as well." }, "onRedeliveryRef": { "index": 11, "kind": "attribute", "displayName": "On Redelivery Ref", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Sets a reference to a processor that is invoked before each redelivery attempt. Can be used to change the exchange before it is redelivered." }, "onExceptionOccurredRef": { "index": 12, "kind": "attribute", "displayName": "On Exception Occurred Ref", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Sets a reference to a processor that is invoked just after an exception occurred. Can be used to perform custom logging. Any exception thrown from this processor is ignored." }, "useOriginalMessage": { "index": 13, "kind": "attribute", "displayName": "Use Original Message", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled, uses the original input message (body and headers) when the exchange is moved to the dead letter queue after all redelivery attempts have been exhausted. Cannot be used together with useOriginalBody." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/onWhen.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/onWhen.json index c3a724a63f5c3..65b02b1ca1d94 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/onWhen.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/onWhen.json @@ -15,6 +15,6 @@ "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node" }, "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, - "expression": { "index": 3, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to evaluate." } + "expression": { "index": 3, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to evaluate." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/pollEnrich.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/pollEnrich.json index 2e7d3b6974529..6f0f77d21a78a 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/pollEnrich.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/pollEnrich.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the endpoint URI to poll-enrich from." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the endpoint URI to poll-enrich from." }, "variableReceive": { "index": 5, "kind": "attribute", "displayName": "Variable Receive", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "To use a variable to store the received message body (only body, not headers). This makes it handy to use variables for user data and to easily control what data to use for sending and receiving." }, "aggregationStrategy": { "index": 6, "kind": "attribute", "displayName": "Aggregation Strategy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the AggregationStrategy to be used to merge the reply from the external service, into a single outgoing message. By default Camel will use the reply from the external service as outgoing message." }, "aggregationStrategyMethodName": { "index": 7, "kind": "attribute", "displayName": "Aggregation Strategy Method Name", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "This option can be used to explicitly declare the method name to use, when using POJOs as the AggregationStrategy." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/propertyExpression.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/propertyExpression.json index 53c30ae235a6d..9c3015a2b0427 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/propertyExpression.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/propertyExpression.json @@ -13,6 +13,6 @@ }, "properties": { "key": { "index": 0, "kind": "attribute", "displayName": "Key", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The property key." }, - "expression": { "index": 1, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The property value as an expression." } + "expression": { "index": 1, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The property value as an expression." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/recipientList.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/recipientList.json index 1415f07766d02..0397c4dc6ae30 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/recipientList.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/recipientList.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the list of recipient endpoint URIs. The result can be a comma-separated string, a Collection, or an Iterator of endpoint URIs." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the list of recipient endpoint URIs. The result can be a comma-separated string, a Collection, or an Iterator of endpoint URIs." }, "delimiter": { "index": 5, "kind": "attribute", "displayName": "Delimiter", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", "description": "Delimiter used if the Expression returned multiple endpoints. Can be turned off using the value false." }, "aggregationStrategy": { "index": 6, "kind": "attribute", "displayName": "Aggregation Strategy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "Sets the AggregationStrategy to be used to assemble the replies from the recipients, into a single outgoing message." }, "aggregationStrategyMethodName": { "index": 7, "kind": "attribute", "displayName": "Aggregation Strategy Method Name", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "This option can be used to explicitly declare the method name to use, when using POJOs as the AggregationStrategy." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/resequence.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/resequence.json index a001f1f6d674c..09bf29d6f0f7a 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/resequence.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/resequence.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression to use for re-ordering the messages, such as a header with a sequence number." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression to use for re-ordering the messages, such as a header with a sequence number." }, "resequencerConfig": { "index": 5, "kind": "element", "displayName": "Resequencer Config", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.config.ResequencerConfig", "oneOf": [ "batchConfig", "streamConfig" ], "deprecated": false, "autowired": false, "secret": false, "description": "Resequencer configuration using either batch or stream mode. Defaults to batch mode." }, "outputs": { "index": 6, "kind": "element", "displayName": "Outputs", "group": "common", "required": true, "type": "array", "javaType": "java.util.List", "oneOf": [ "a2aSubTask", "aggregate", "bean", "cache", "choice", "circuitBreaker", "claimCheck", "convertBodyTo", "convertHeaderTo", "convertVariableTo", "delay", "doCatch", "doFinally", "doTry", "dynamicRouter", "enrich", "filter", "idempotentConsumer", "intercept", "interceptFrom", "interceptSendToEndpoint", "kamelet", "loadBalance", "log", "loop", "marshal", "multicast", "onCompletion", "onException", "pausable", "pipeline", "policy", "poll", "pollEnrich", "process", "recipientList", "removeHeader", "removeHeaders", "removeProperties", "removeProperty", "removeVariable", "resequence", "resumable", "rollback", "routingSlip", "saga", "sample", "script", "setBody", "setExchangePattern", "setHeader", "setHeaders", "setProperty", "setVariable", "setVariables", "sort", "split", "step", "stop", "switch", "threads", "throttle", "throwException", "to", "toD", "tokenizer", "transacted", "transform", "transformDataType", "unmarshal", "validate", "wireTap" ], "deprecated": false, "autowired": false, "secret": false } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/routingSlip.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/routingSlip.json index 55e085f625415..2ca6a67784d4a 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/routingSlip.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/routingSlip.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the routing slip of endpoint URIs. The result is a delimited list of endpoint URIs that defines the series of processing steps." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to compute the routing slip of endpoint URIs. The result is a delimited list of endpoint URIs that defines the series of processing steps." }, "uriDelimiter": { "index": 5, "kind": "attribute", "displayName": "Uri Delimiter", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", "description": "The delimiter used to separate endpoint URIs in the routing slip expression. Default is comma." }, "ignoreInvalidEndpoints": { "index": 6, "kind": "attribute", "displayName": "Ignore Invalid Endpoints", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled then invalid endpoint URIs are ignored and logged instead of throwing an exception." }, "cacheSize": { "index": 7, "kind": "attribute", "displayName": "Cache Size", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, "description": "Configures the cache size for ProducerCache which caches producers for reuse. The default cache size is 1000. Set to -1 to turn off caching." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/script.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/script.json index ed1908279726f..498f16f9ae011 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/script.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/script.json @@ -16,6 +16,6 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to evaluate as a script. The script result does not change the message body (use transform instead if that is desired)." } + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to evaluate as a script. The script result does not change the message body (use transform instead if that is desired)." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setBody.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setBody.json index 59124a53de246..3c1320e00ab66 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setBody.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setBody.json @@ -17,6 +17,6 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the new message body." } + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the new message body." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setHeader.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setHeader.json index a56e8690c8ddd..a71ab721b5bf8 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setHeader.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setHeader.json @@ -17,6 +17,6 @@ "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, "name": { "index": 4, "kind": "attribute", "displayName": "Name", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Name of message header to set a new value. The simple language can be used to define a dynamic evaluated header name. Otherwise a constant name will be used." }, - "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the header value." } + "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the header value." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setProperty.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setProperty.json index 6d2e41ecc3a2d..cffb8d5d7c8d4 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setProperty.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setProperty.json @@ -17,6 +17,6 @@ "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, "name": { "index": 4, "kind": "attribute", "displayName": "Name", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Name of exchange property to set a new value. The simple language can be used to define a dynamic evaluated property name. Otherwise a constant name will be used." }, - "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the exchange property value." } + "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the exchange property value." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setVariable.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setVariable.json index cffc0d6c94e68..79f57c636c2c5 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setVariable.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/setVariable.json @@ -17,6 +17,6 @@ "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, "name": { "index": 4, "kind": "attribute", "displayName": "Name", "group": "common", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Name of variable to set a new value. The simple language can be used to define a dynamic evaluated variable name. Otherwise a constant name will be used." }, - "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the variable value." } + "expression": { "index": 5, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result is used as the variable value." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/sort.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/sort.json index 012f5e7f4582a..c9dcd74b87c0a 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/sort.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/sort.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to use for sorting. The message body is split into a list, sorted using this expression as the comparator key, and then reassembled." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to use for sorting. The message body is split into a list, sorted using this expression as the comparator key, and then reassembled." }, "comparator": { "index": 5, "kind": "attribute", "displayName": "Comparator", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.util.Comparator", "deprecated": false, "autowired": false, "secret": false, "description": "Sets a reference to lookup for the comparator to use for sorting." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/split.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/split.json index 9ac5f17714ad1..c3bc403d60600 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/split.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/split.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that returns the value to use for splitting. The result can be an Iterator, Iterable, Array, Collection, Map, NodeList, or a delimited String." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression that returns the value to use for splitting. The result can be an Iterator, Iterable, Array, Collection, Map, NodeList, or a delimited String." }, "delimiter": { "index": 5, "kind": "attribute", "displayName": "Delimiter", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": ",", "description": "Delimiter used in splitting messages. Can be turned off using the value false. To force not splitting then the delimiter can be set to single to use the value as a single list. The default value is comma." }, "aggregationStrategy": { "index": 6, "kind": "attribute", "displayName": "Aggregation Strategy", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.AggregationStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "Reference to the AggregationStrategy to assemble the replies from the split messages into a single outgoing message. By default Camel uses the original incoming message." }, "aggregationStrategyMethodName": { "index": 7, "kind": "attribute", "displayName": "Aggregation Strategy Method Name", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The method name to use when using a POJO as the AggregationStrategy." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/switch.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/switch.json index b0a91281d33dd..3fb9b28b75e69 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/switch.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/switch.json @@ -18,7 +18,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "selector": { "index": 4, "kind": "expression", "displayName": "Selector", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression evaluated once per entry. Returns a scalar value to match against the literal cases." }, + "selector": { "index": 4, "kind": "expression", "displayName": "Selector", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "Expression evaluated once per entry. Returns a scalar value to match against the literal cases." }, "case": { "index": 5, "kind": "element", "displayName": "Case", "group": "common", "required": false, "type": "array", "javaType": "java.util.List", "deprecated": false, "autowired": false, "secret": false, "description": "Literal cases. Duplicate values are rejected at startup, ignoring case." }, "otherwise": { "index": 6, "kind": "element", "displayName": "Otherwise", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.SwitchOtherwiseDefinition", "oneOf": [ "otherwise" ], "deprecated": false, "autowired": false, "secret": false, "description": "Fixed fallback URI for null or unmatched selector results. Without a fallback processing continues." } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/throttle.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/throttle.json index 027a30aeddbaf..e1c1079fa3c65 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/throttle.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/throttle.json @@ -17,9 +17,9 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to set the maximum request count (for TotalRequests mode) or the maximum number of concurrent requests (for ConcurrentRequests mode)." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression to set the maximum request count (for TotalRequests mode) or the maximum number of concurrent requests (for ConcurrentRequests mode)." }, "mode": { "index": 5, "kind": "attribute", "displayName": "Mode", "group": "common", "required": false, "type": "enum", "javaType": "org.apache.camel.model.ThrottlingMode", "enum": [ "TotalRequests", "ConcurrentRequests" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "TotalRequests", "description": "Sets the throttling mode. TotalRequests limits the total number of requests within a time period. ConcurrentRequests uses a leaky-bucket algorithm to limit the number of concurrent requests being processed at the same time." }, - "correlationExpression": { "index": 6, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The correlation expression to use for throttle grouping. Exchanges with the same correlation key are throttled together." }, + "correlationExpression": { "index": 6, "kind": "expression", "displayName": "Correlation Expression", "group": "common", "required": false, "type": "object", "javaType": "org.apache.camel.model.ExpressionSubElementDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The correlation expression to use for throttle grouping. Exchanges with the same correlation key are throttled together." }, "executorService": { "index": 7, "kind": "attribute", "displayName": "Executor Service", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.util.concurrent.ExecutorService", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom thread pool (ScheduledExecutorService) by the throttler." }, "asyncDelayed": { "index": 8, "kind": "attribute", "displayName": "Async Delayed", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Enables asynchronous delay which means the thread will not block while delaying." }, "callerRunsWhenRejected": { "index": 9, "kind": "attribute", "displayName": "Caller Runs When Rejected", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether or not the caller should run the task when it was rejected by the thread pool." }, diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/transform.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/transform.json index cf53b151e5faf..fa8649dc61fff 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/transform.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/transform.json @@ -17,6 +17,6 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result replaces the message body." } + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "description": "The expression whose result replaces the message body." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/validate.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/validate.json index 19423bee06c99..aa65030c329a4 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/validate.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/validate.json @@ -17,7 +17,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether to disable this EIP from the route during build time. Once an EIP has been disabled then it cannot be enabled later at runtime." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to validate against the current message. If the predicate returns false, a PredicateValidationException is thrown." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to validate against the current message. If the predicate returns false, a PredicateValidationException is thrown." }, "predicateExceptionFactory": { "index": 5, "kind": "attribute", "displayName": "Predicate Exception Factory", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.spi.PredicateExceptionFactory", "deprecated": false, "autowired": false, "secret": false, "description": "Reference to a custom PredicateExceptionFactory for creating the exception when validation fails." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/validator/predicateValidator.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/validator/predicateValidator.json index f595bbb22f1d2..8cbbb2bd06d34 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/validator/predicateValidator.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/validator/predicateValidator.json @@ -12,7 +12,7 @@ "output": false }, "properties": { - "expression": { "index": 0, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to use for validation." }, + "expression": { "index": 0, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "The predicate expression to use for validation." }, "type": { "index": 1, "kind": "attribute", "displayName": "Type", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The data type name to validate. If you specify 'xml:XYZ', the validator is picked up when message type is 'xml:XYZ'. If you specify just 'xml', the validator matches all xml message types." } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/when.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/when.json index 44b0e97480e41..473d7716e8e9f 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/when.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/model/when.json @@ -16,7 +16,7 @@ "note": { "index": 1, "kind": "attribute", "displayName": "Note", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The note for this node" }, "description": { "index": 2, "kind": "attribute", "displayName": "Description", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The description for this node" }, "disabled": { "index": 3, "kind": "attribute", "displayName": "Disabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Disables this EIP from the route." }, - "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "wasm", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "Expression used as the predicate to evaluate whether this when should trigger and route the message or not." }, + "expression": { "index": 4, "kind": "expression", "displayName": "Expression", "group": "common", "required": true, "type": "object", "javaType": "org.apache.camel.model.language.ExpressionDefinition", "oneOf": [ "constant", "datasonnet", "exchangeProperty", "groovy", "header", "hl7terser", "jactl", "java", "jq", "js", "jsonpath", "language", "method", "mvel", "ognl", "python", "python3", "quickjs", "ref", "simple", "spel", "tokenize", "variable", "xpath", "xquery", "xtokenize" ], "deprecated": false, "autowired": false, "secret": false, "asPredicate": true, "description": "Expression used as the predicate to evaluate whether this when should trigger and route the message or not." }, "outputs": { "index": 5, "kind": "element", "displayName": "Outputs", "group": "common", "required": true, "type": "array", "javaType": "java.util.List>", "oneOf": [ "a2aSubTask", "aggregate", "bean", "cache", "choice", "circuitBreaker", "claimCheck", "convertBodyTo", "convertHeaderTo", "convertVariableTo", "delay", "doCatch", "doFinally", "doTry", "dynamicRouter", "enrich", "filter", "idempotentConsumer", "intercept", "interceptFrom", "interceptSendToEndpoint", "kamelet", "loadBalance", "log", "loop", "marshal", "multicast", "onCompletion", "onException", "pausable", "pipeline", "policy", "poll", "pollEnrich", "process", "recipientList", "removeHeader", "removeHeaders", "removeProperties", "removeProperty", "removeVariable", "resequence", "resumable", "rollback", "routingSlip", "saga", "sample", "script", "setBody", "setExchangePattern", "setHeader", "setHeaders", "setProperty", "setVariable", "setVariables", "sort", "split", "step", "stop", "switch", "threads", "throttle", "throwException", "to", "toD", "tokenizer", "transacted", "transform", "transformDataType", "unmarshal", "validate", "wireTap" ], "deprecated": false, "autowired": false, "secret": false } } } diff --git a/core/camel-core-model/src/generated/resources/META-INF/services/org/apache/camel/model.properties b/core/camel-core-model/src/generated/resources/META-INF/services/org/apache/camel/model.properties index b03878ae40e5f..40cb662821e2b 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/services/org/apache/camel/model.properties +++ b/core/camel-core-model/src/generated/resources/META-INF/services/org/apache/camel/model.properties @@ -231,7 +231,6 @@ validate validators value variable -wasm weightedLoadBalancer when wireTap diff --git a/core/camel-core-model/src/generated/resources/org/apache/camel/model/language/jaxb.index b/core/camel-core-model/src/generated/resources/org/apache/camel/model/language/jaxb.index index ebc5ca88678a7..16655f41fb173 100644 --- a/core/camel-core-model/src/generated/resources/org/apache/camel/model/language/jaxb.index +++ b/core/camel-core-model/src/generated/resources/org/apache/camel/model/language/jaxb.index @@ -23,7 +23,6 @@ SimpleExpression SpELExpression TokenizerExpression VariableExpression -WasmExpression XMLTokenizerExpression XPathExpression XQueryExpression diff --git a/core/camel-core-model/src/main/java/org/apache/camel/builder/Builder.java b/core/camel-core-model/src/main/java/org/apache/camel/builder/Builder.java index 1cfd1d2eb9193..ae7bf95517a6e 100644 --- a/core/camel-core-model/src/main/java/org/apache/camel/builder/Builder.java +++ b/core/camel-core-model/src/main/java/org/apache/camel/builder/Builder.java @@ -28,7 +28,6 @@ import org.apache.camel.model.language.MethodCallExpression; import org.apache.camel.model.language.SimpleExpression; import org.apache.camel.model.language.VariableExpression; -import org.apache.camel.model.language.WasmExpression; import org.apache.camel.util.ObjectHelper; /** @@ -323,21 +322,4 @@ public static ValueBuilder regexReplaceAll(Expression content, String regex, Exp Expression newExp = ExpressionBuilder.regexReplaceAll(content, regex, replacement); return new ValueBuilder(newExp); } - - /** - * Call a wasm (web assembly) function. - */ - public static ValueBuilder wasm(String value) { - WasmExpression exp = new WasmExpression(value); - return new ValueBuilder(exp); - } - - /** - * Call a wasm (web assembly) function. - */ - public static ValueBuilder wasm(String value, Class resultType) { - WasmExpression exp = new WasmExpression(value); - exp.setResultType(resultType); - return new ValueBuilder(exp); - } } diff --git a/core/camel-core-model/src/main/java/org/apache/camel/builder/ExpressionClause.java b/core/camel-core-model/src/main/java/org/apache/camel/builder/ExpressionClause.java index 43df80a21bc55..5046eb6f9b594 100644 --- a/core/camel-core-model/src/main/java/org/apache/camel/builder/ExpressionClause.java +++ b/core/camel-core-model/src/main/java/org/apache/camel/builder/ExpressionClause.java @@ -1047,29 +1047,6 @@ public T xquery(String text, Map namespaces) { return delegate.xquery(text, namespaces); } - /** - * Evaluates a Wasm expression - * - * @param functionName the name of the Wasm function to be evaluated - * @param module the Wasm module providing the expression function - * @return the builder to continue processing the DSL - */ - public T wasm(String functionName, String module) { - return delegate.wasm(functionName, module); - } - - /** - * Evaluates a Wasm expression - * - * @param functionName the name of the Wasm function to be evaluated - * @param module the Wasm module providing the expression function - * @param resultType the return type expected by the expression - * @return the builder to continue processing the DSL - */ - public T wasm(String functionName, String module, Class resultType) { - return delegate.wasm(functionName, module, resultType); - } - /** * Evaluates a given language name with the expression text * diff --git a/core/camel-core-model/src/main/java/org/apache/camel/builder/ExpressionClauseSupport.java b/core/camel-core-model/src/main/java/org/apache/camel/builder/ExpressionClauseSupport.java index 9e95800abb37a..8b14501a11381 100644 --- a/core/camel-core-model/src/main/java/org/apache/camel/builder/ExpressionClauseSupport.java +++ b/core/camel-core-model/src/main/java/org/apache/camel/builder/ExpressionClauseSupport.java @@ -48,7 +48,6 @@ import org.apache.camel.model.language.SpELExpression; import org.apache.camel.model.language.TokenizerExpression; import org.apache.camel.model.language.VariableExpression; -import org.apache.camel.model.language.WasmExpression; import org.apache.camel.model.language.XMLTokenizerExpression; import org.apache.camel.model.language.XPathExpression; import org.apache.camel.model.language.XQueryExpression; @@ -1213,31 +1212,6 @@ public T xquery(String text, Map namespaces) { return result; } - /** - * Evaluates Wasm expression - * - * @param functionName the name of the Wasm function to be evaluated - * @param module the Wasm module providing the expression function - * @return the builder to continue processing the DSL - */ - public T wasm(String functionName, String module) { - return expression(new WasmExpression(functionName, module)); - } - - /** - * Evaluates Wasm expression - * - * @param functionName the name of the Wasm function to be evaluated - * @param module the Wasm module providing the expression function - * @param resultType the return type expected by the expression - * @return the builder to continue processing the DSL - */ - public T wasm(String functionName, String module, Class resultType) { - WasmExpression exp = new WasmExpression(functionName, module); - exp.setResultType(resultType); - return expression(exp); - } - /** * Evaluates a given language name with the expression text * diff --git a/core/camel-core-model/src/main/java/org/apache/camel/builder/LanguageBuilderFactory.java b/core/camel-core-model/src/main/java/org/apache/camel/builder/LanguageBuilderFactory.java index bf906a200c060..cf938320a5f0c 100644 --- a/core/camel-core-model/src/main/java/org/apache/camel/builder/LanguageBuilderFactory.java +++ b/core/camel-core-model/src/main/java/org/apache/camel/builder/LanguageBuilderFactory.java @@ -39,7 +39,6 @@ import org.apache.camel.model.language.SpELExpression; import org.apache.camel.model.language.TokenizerExpression; import org.apache.camel.model.language.VariableExpression; -import org.apache.camel.model.language.WasmExpression; import org.apache.camel.model.language.XMLTokenizerExpression; import org.apache.camel.model.language.XPathExpression; import org.apache.camel.model.language.XQueryExpression; @@ -484,21 +483,4 @@ public XQueryExpression.Builder xquery(String expression) { builder.expression(expression); return builder; } - - /** - * Uses the Wasm language - */ - public WasmExpression.Builder wasm() { - return new WasmExpression.Builder(); - } - - /** - * Uses the Wasm language - */ - public WasmExpression.Builder wasm(String module, String expression) { - var builder = wasm(); - builder.module(module); - builder.expression(expression); - return builder; - } } diff --git a/core/camel-core-model/src/main/java/org/apache/camel/model/language/WasmExpression.java b/core/camel-core-model/src/main/java/org/apache/camel/model/language/WasmExpression.java deleted file mode 100644 index a77e470335175..0000000000000 --- a/core/camel-core-model/src/main/java/org/apache/camel/model/language/WasmExpression.java +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.model.language; - -import jakarta.xml.bind.annotation.XmlAccessType; -import jakarta.xml.bind.annotation.XmlAccessorType; -import jakarta.xml.bind.annotation.XmlAttribute; -import jakarta.xml.bind.annotation.XmlRootElement; -import jakarta.xml.bind.annotation.XmlTransient; - -import org.apache.camel.spi.Metadata; - -/** - * Call a wasm (web assembly) function. - */ -@Metadata(firstVersion = "4.5.0", label = "language", title = "Wasm", description = "Call a wasm (web assembly) function") -@XmlRootElement(name = "wasm") -@XmlAccessorType(XmlAccessType.FIELD) -public class WasmExpression extends TypedExpressionDefinition { - - @XmlAttribute - @Metadata(required = true, - description = "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function.") - private String module; - - public WasmExpression() { - } - - protected WasmExpression(WasmExpression source) { - super(source); - this.module = source.module; - } - - public WasmExpression(String expression) { - super(expression); - } - - public WasmExpression(String expression, String module) { - super(expression); - this.module = module; - } - - private WasmExpression(Builder builder) { - super(builder); - this.module = builder.module; - } - - @Override - public WasmExpression copyDefinition() { - return new WasmExpression(this); - } - - public String getModule() { - return module; - } - - public void setModule(String module) { - this.module = module; - } - - @Override - public String getLanguage() { - return "wasm"; - } - - /** - * {@code Builder} is a specific builder for {@link WasmExpression}. - */ - @XmlTransient - public static class Builder extends AbstractBuilder { - - private String module; - - /** - * Set the module, the distributable, loadable, and executable unit of code in WebAssembly that provides the - * expression function. - */ - public Builder module(String module) { - this.module = module; - return this; - } - - @Override - public WasmExpression end() { - return new WasmExpression(this); - } - } -} diff --git a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/ExpressionReifier.java b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/ExpressionReifier.java index 5c46dd68d29a2..0e995ae41a00f 100644 --- a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/ExpressionReifier.java +++ b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/ExpressionReifier.java @@ -39,7 +39,6 @@ import org.apache.camel.model.language.SingleInputTypedExpressionDefinition; import org.apache.camel.model.language.TokenizerExpression; import org.apache.camel.model.language.TypedExpressionDefinition; -import org.apache.camel.model.language.WasmExpression; import org.apache.camel.model.language.XMLTokenizerExpression; import org.apache.camel.model.language.XPathExpression; import org.apache.camel.model.language.XQueryExpression; @@ -125,8 +124,6 @@ private static ExpressionReifier coreReifier( return new XPathExpressionReifier(camelContext, definition); } else if (definition instanceof XQueryExpression) { return new XQueryExpressionReifier(camelContext, definition); - } else if (definition instanceof WasmExpression) { - return new WasmExpressionReifier(camelContext, definition); } else if (definition instanceof SingleInputTypedExpressionDefinition) { return new SingleInputTypedExpressionReifier<>(camelContext, definition); } else if (definition instanceof TypedExpressionDefinition) { diff --git a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/WasmExpressionReifier.java b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/WasmExpressionReifier.java deleted file mode 100644 index 4f3093ac1379b..0000000000000 --- a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/WasmExpressionReifier.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.camel.reifier.language; - -import org.apache.camel.CamelContext; -import org.apache.camel.model.language.ExpressionDefinition; -import org.apache.camel.model.language.WasmExpression; - -public class WasmExpressionReifier extends TypedExpressionReifier { - - public WasmExpressionReifier(CamelContext camelContext, ExpressionDefinition definition) { - super(camelContext, definition); - } - - @Override - public boolean isResolveOptionalExternalScriptEnabled() { - // simple language will handle to resolve external scripts as they can be dynamic using simple language itself - return false; - } - - @Override - protected Object[] createProperties() { - Object[] properties = new Object[2]; - properties[0] = asResultType(); - properties[1] = parseString(definition.getModule()); - return properties; - } -} diff --git a/core/camel-java-io/src/generated/java/org/apache/camel/java/out/JavaDslModelWriter.java b/core/camel-java-io/src/generated/java/org/apache/camel/java/out/JavaDslModelWriter.java index 08726f2dd734a..1df84eea2a3be 100644 --- a/core/camel-java-io/src/generated/java/org/apache/camel/java/out/JavaDslModelWriter.java +++ b/core/camel-java-io/src/generated/java/org/apache/camel/java/out/JavaDslModelWriter.java @@ -1419,13 +1419,6 @@ public String writeVariableExpression(VariableExpression def) { doWriteVariableExpression(sb, def); return sb.toString(); } - public String writeWasmExpression(WasmExpression def) { - resetState(); - StringBuilder sb = new StringBuilder(); - beginStep(sb, "wasm", def); - doWriteWasmExpression(sb, def); - return sb.toString(); - } public String writeXMLTokenizerExpression(XMLTokenizerExpression def) { resetState(); StringBuilder sb = new StringBuilder(); @@ -3677,11 +3670,6 @@ protected void doWriteVariableExpression(StringBuilder sb, VariableExpression de doWriteExpressionDefinitionAttributes(sb, def); doWriteValue(sb, def.getExpression()); } - protected void doWriteWasmExpression(StringBuilder sb, WasmExpression def) { - doWriteTypedExpressionDefinitionAttributes(sb, def); - doWriteAttribute(sb, "module", def.getModule(), null); - doWriteValue(sb, def.getExpression()); - } protected void doWriteXMLTokenizerExpression(StringBuilder sb, XMLTokenizerExpression def) { doWriteNamespaceAwareExpressionAttributes(sb, def); doWriteAttribute(sb, "mode", def.getMode(), "i"); @@ -6581,11 +6569,6 @@ protected void doWriteExpressionDefinitionRef(StringBuilder sb, ExpressionDefini doWriteVariableExpression(sb, (VariableExpression) v); endStep(sb, "variable", v); } - case "WasmExpression" -> { - beginStep(sb, "wasm", v); - doWriteWasmExpression(sb, (WasmExpression) v); - endStep(sb, "wasm", v); - } case "XMLTokenizerExpression" -> { beginStep(sb, "xtokenize", v); doWriteXMLTokenizerExpression(sb, (XMLTokenizerExpression) v); diff --git a/core/camel-java-io/src/main/java/org/apache/camel/java/out/JavaDslModelWriterSupport.java b/core/camel-java-io/src/main/java/org/apache/camel/java/out/JavaDslModelWriterSupport.java index 1a83c60b86937..259ff3780570b 100644 --- a/core/camel-java-io/src/main/java/org/apache/camel/java/out/JavaDslModelWriterSupport.java +++ b/core/camel-java-io/src/main/java/org/apache/camel/java/out/JavaDslModelWriterSupport.java @@ -92,7 +92,6 @@ import org.apache.camel.model.language.TokenizerExpression; import org.apache.camel.model.language.TypedExpressionDefinition; import org.apache.camel.model.language.VariableExpression; -import org.apache.camel.model.language.WasmExpression; import org.apache.camel.model.language.XMLTokenizerExpression; import org.apache.camel.model.language.XPathExpression; import org.apache.camel.model.language.XQueryExpression; @@ -1557,9 +1556,6 @@ private String expressionBuilderMethod(ExpressionDefinition expr) { if (expr instanceof RefExpression) { return "ref"; } - if (expr instanceof WasmExpression) { - return "wasm"; - } String factoryMethod = languageFactoryMethod(expr); if (factoryMethod != null) { return factoryMethod; @@ -1648,8 +1644,6 @@ private String expressionBuilderOptions(ExpressionDefinition expr) { } else if (expr instanceof XMLTokenizerExpression xt) { appendNonDefaultOption(opts, "mode", xt.getMode(), "i"); appendOption(opts, "group", xt.getGroup()); - } else if (expr instanceof WasmExpression w) { - appendOption(opts, "module", w.getModule()); } return opts.toString(); diff --git a/core/camel-java-io/src/test/resources/org/apache/camel/java/in/replay-builder-methods.txt b/core/camel-java-io/src/test/resources/org/apache/camel/java/in/replay-builder-methods.txt index 9bea8183c16c9..fbea2e183975d 100644 --- a/core/camel-java-io/src/test/resources/org/apache/camel/java/in/replay-builder-methods.txt +++ b/core/camel-java-io/src/test/resources/org/apache/camel/java/in/replay-builder-methods.txt @@ -41,8 +41,6 @@ Builder.simple,java.lang.String,java.lang.Class,boolean,boolean Builder.systemProperty,java.lang.String Builder.systemProperty,java.lang.String,java.lang.String Builder.variable,java.lang.String -Builder.wasm,java.lang.String -Builder.wasm,java.lang.String,java.lang.Class BuilderSupport.body BuilderSupport.bodyAs,java.lang.Class BuilderSupport.constant,[Ljava.lang.Object; diff --git a/core/camel-main/src/generated/resources/org/apache/camel/main/languages.properties b/core/camel-main/src/generated/resources/org/apache/camel/main/languages.properties index 96c24835cd37d..1ecd8457f67cb 100644 --- a/core/camel-main/src/generated/resources/org/apache/camel/main/languages.properties +++ b/core/camel-main/src/generated/resources/org/apache/camel/main/languages.properties @@ -24,7 +24,6 @@ spel tokenize typesafe-ai variable -wasm xpath xquery xtokenize diff --git a/core/camel-util/src/main/java/org/apache/camel/util/ArtifactUtils.java b/core/camel-util/src/main/java/org/apache/camel/util/ArtifactUtils.java index a600dfc7a8f9b..da151cdbdc49d 100644 --- a/core/camel-util/src/main/java/org/apache/camel/util/ArtifactUtils.java +++ b/core/camel-util/src/main/java/org/apache/camel/util/ArtifactUtils.java @@ -479,7 +479,6 @@ public final class ArtifactUtils { Map.entry("tokenize", "camel-core-languages"), Map.entry("typesafe-ai", "camel-typesafe-ai"), Map.entry("variable", "camel-core-languages"), - Map.entry("wasm", "camel-wasm"), Map.entry("xpath", "camel-xpath"), Map.entry("xquery", "camel-saxon"), Map.entry("xtokenize", "camel-stax") diff --git a/core/camel-xml-io/src/generated/java/org/apache/camel/xml/in/ModelParser.java b/core/camel-xml-io/src/generated/java/org/apache/camel/xml/in/ModelParser.java index 8beb70e5816d3..fe26844ade6b2 100644 --- a/core/camel-xml-io/src/generated/java/org/apache/camel/xml/in/ModelParser.java +++ b/core/camel-xml-io/src/generated/java/org/apache/camel/xml/in/ModelParser.java @@ -2395,12 +2395,6 @@ protected TokenizerExpression doParseTokenizerExpression() throws IOException, X protected VariableExpression doParseVariableExpression() throws IOException, XmlPullParserException { return doParse(new VariableExpression(), expressionDefinitionAttributeHandler(), noElementHandler(), expressionDefinitionValueHandler()); } - protected WasmExpression doParseWasmExpression() throws IOException, XmlPullParserException { - return doParse(new WasmExpression(), (def, key, val) -> switch (key) { - case "module": def.setModule(val); yield true; - default: yield typedExpressionDefinitionAttributeHandler().accept(def, key, val); - }, noElementHandler(), expressionDefinitionValueHandler()); - } protected XMLTokenizerExpression doParseXMLTokenizerExpression() throws IOException, XmlPullParserException { return doParse(new XMLTokenizerExpression(), (def, key, val) -> switch (key) { case "group": def.setGroup(val); yield true; @@ -2902,7 +2896,6 @@ protected ExpressionDefinition doParseExpressionDefinitionRef(String key) throws case "spel": return doParseSpELExpression(); case "tokenize": return doParseTokenizerExpression(); case "variable": return doParseVariableExpression(); - case "wasm": return doParseWasmExpression(); case "xtokenize": return doParseXMLTokenizerExpression(); case "xpath": return doParseXPathExpression(); case "xquery": return doParseXQueryExpression(); diff --git a/core/camel-xml-io/src/generated/java/org/apache/camel/xml/out/ModelWriter.java b/core/camel-xml-io/src/generated/java/org/apache/camel/xml/out/ModelWriter.java index 554ece49b2586..824c2a5978089 100644 --- a/core/camel-xml-io/src/generated/java/org/apache/camel/xml/out/ModelWriter.java +++ b/core/camel-xml-io/src/generated/java/org/apache/camel/xml/out/ModelWriter.java @@ -645,9 +645,6 @@ public void writeTokenizerExpression(TokenizerExpression def) throws IOException public void writeVariableExpression(VariableExpression def) throws IOException { doWriteVariableExpression("variable", def); } - public void writeWasmExpression(WasmExpression def) throws IOException { - doWriteWasmExpression("wasm", def); - } public void writeXMLTokenizerExpression(XMLTokenizerExpression def) throws IOException { doWriteXMLTokenizerExpression("xtokenize", def); } @@ -3152,13 +3149,6 @@ protected void doWriteVariableExpression(String name, VariableExpression def) th doWriteValue(def.getExpression()); endElement(name); } - protected void doWriteWasmExpression(String name, WasmExpression def) throws IOException { - startElement(name); - doWriteTypedExpressionDefinitionAttributes(def); - doWriteAttribute("module", def.getModule(), null); - doWriteValue(def.getExpression()); - endElement(name); - } protected void doWriteXMLTokenizerExpression(String name, XMLTokenizerExpression def) throws IOException { startElement(name); doWriteNamespaceAwareExpressionAttributes(def); @@ -3973,7 +3963,6 @@ protected void doWriteExpressionDefinitionRef(String n, ExpressionDefinition v) case "SpELExpression" -> doWriteSpELExpression("spel", (SpELExpression) v); case "TokenizerExpression" -> doWriteTokenizerExpression("tokenize", (TokenizerExpression) v); case "VariableExpression" -> doWriteVariableExpression("variable", (VariableExpression) v); - case "WasmExpression" -> doWriteWasmExpression("wasm", (WasmExpression) v); case "XMLTokenizerExpression" -> doWriteXMLTokenizerExpression("xtokenize", (XMLTokenizerExpression) v); case "XPathExpression" -> doWriteXPathExpression("xpath", (XPathExpression) v); case "XQueryExpression" -> doWriteXQueryExpression("xquery", (XQueryExpression) v); diff --git a/core/camel-yaml-io/src/generated/java/org/apache/camel/yaml/out/YamlModelWriter.java b/core/camel-yaml-io/src/generated/java/org/apache/camel/yaml/out/YamlModelWriter.java index 85612baebdc6a..7a1096e27a801 100644 --- a/core/camel-yaml-io/src/generated/java/org/apache/camel/yaml/out/YamlModelWriter.java +++ b/core/camel-yaml-io/src/generated/java/org/apache/camel/yaml/out/YamlModelWriter.java @@ -637,9 +637,6 @@ public JsonObject writeTokenizerExpression(TokenizerExpression def) { public JsonObject writeVariableExpression(VariableExpression def) { return wrapNode("variable", doWriteVariableExpression(def)); } - public JsonObject writeWasmExpression(WasmExpression def) { - return wrapNode("wasm", doWriteWasmExpression(def)); - } public JsonObject writeXMLTokenizerExpression(XMLTokenizerExpression def) { return wrapNode("xtokenize", doWriteXMLTokenizerExpression(def)); } @@ -3153,13 +3150,6 @@ protected JsonObject doWriteVariableExpression(VariableExpression def) { doWriteValue(jo, def.getExpression()); return jo; } - protected JsonObject doWriteWasmExpression(WasmExpression def) { - JsonObject jo = new JsonObject(); - doWriteTypedExpressionDefinitionAttributes(jo, def); - doWriteAttribute(jo, "module", def.getModule(), null); - doWriteValue(jo, def.getExpression()); - return jo; - } protected JsonObject doWriteXMLTokenizerExpression(XMLTokenizerExpression def) { JsonObject jo = new JsonObject(); doWriteNamespaceAwareExpressionAttributes(jo, def); @@ -4006,7 +3996,6 @@ protected JsonObject doWriteExpressionDefinitionRef(ExpressionDefinition v) { case "SpELExpression" -> wrapNode("spel", doWriteSpELExpression((SpELExpression) v)); case "TokenizerExpression" -> wrapNode("tokenize", doWriteTokenizerExpression((TokenizerExpression) v)); case "VariableExpression" -> wrapNode("variable", doWriteVariableExpression((VariableExpression) v)); - case "WasmExpression" -> wrapNode("wasm", doWriteWasmExpression((WasmExpression) v)); case "XMLTokenizerExpression" -> wrapNode("xtokenize", doWriteXMLTokenizerExpression((XMLTokenizerExpression) v)); case "XPathExpression" -> wrapNode("xpath", doWriteXPathExpression((XPathExpression) v)); case "XQueryExpression" -> wrapNode("xquery", doWriteXQueryExpression((XQueryExpression) v)); diff --git a/docs/components/modules/languages/examples/json/wasm.json b/docs/components/modules/languages/examples/json/wasm.json deleted file mode 120000 index 49ec420960e5e..0000000000000 --- a/docs/components/modules/languages/examples/json/wasm.json +++ /dev/null @@ -1 +0,0 @@ -../../../../../../components/camel-wasm/src/generated/resources/META-INF/org/apache/camel/language/wasm/wasm.json \ No newline at end of file diff --git a/docs/components/modules/languages/nav.adoc b/docs/components/modules/languages/nav.adoc index d82a164af5625..923ffe7383326 100644 --- a/docs/components/modules/languages/nav.adoc +++ b/docs/components/modules/languages/nav.adoc @@ -32,7 +32,6 @@ ** xref:tokenize-language.adoc[Tokenize] ** xref:typesafe-ai-language.adoc[TypeSafe AI] ** xref:variable-language.adoc[Variable] -** xref:wasm-language.adoc[Wasm] ** xref:xtokenize-language.adoc[XML Tokenize] ** xref:xpath-language.adoc[XPath] ** xref:xquery-language.adoc[XQuery] diff --git a/docs/components/modules/languages/pages/wasm-language.adoc b/docs/components/modules/languages/pages/wasm-language.adoc deleted file mode 120000 index ef311001e30b5..0000000000000 --- a/docs/components/modules/languages/pages/wasm-language.adoc +++ /dev/null @@ -1 +0,0 @@ -../../../../../components/camel-wasm/src/main/docs/wasm-language.adoc \ No newline at end of file diff --git a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_24.adoc b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_24.adoc index b4812a11b4e91..aea05f938b29b 100644 --- a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_24.adoc +++ b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_24.adoc @@ -547,11 +547,15 @@ body, the exit code and standard error are in `CamelWasmExitCode` and `CamelWasm custom `alloc`/`dealloc` and JSON message ABI. The URI path is now the module (`wasm:classpath:upper.wasm`); the function name and the `module` option are removed, and a header reaches the module only when listed in `environmentHeaders`. To migrate, turn the function into a program that reads standard input and writes standard -output, built for `wasm32-wasip1` (Rust) or with `GOOS=wasip1 GOARCH=wasm` (Go). The `wasm` language is unchanged. +output, built for `wasm32-wasip1` (Rust) or with `GOOS=wasip1 GOARCH=wasm` (Go). The endpoint runs every exchange on a new instance of the module, so a module can no longer keep state from one -message to the next. The 4.23 note that a failed call discards the Wasm instance therefore now only applies to the -`wasm` expression. +message to the next. The 4.23 note that a failed call discards the Wasm instance no longer applies. + +The `wasm` language is removed: the `wasm` expression of the Java, XML and YAML DSLs, `WasmExpression` of the model, +and `WasmLanguage`, `WasmFunction`, `WasmSupport`, `Wasm.FN_ALLOC` and `Wasm.FN_DEALLOC` of `camel-wasm`. Call the +module with the `wasm` endpoint as a route step instead, for example `.to("wasm:classpath:transform.wasm")`, built as a +WASI command module as described above, and use its output (the new message body) in the next steps. The following API of `camel-wasm` is removed or changed with the old ABI: diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java index 85d6a1c5b689c..f722f9ef34a2a 100644 --- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java +++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java @@ -11130,10 +11130,10 @@ public static LangChain4jWebSearchEndpointBuilderFactory.LangChain4jWebSearchEnd * * Path parameter: languageName (required) * Sets the name of the language to use - * There are 27 enums and the value can be one of: bean, constant, + * There are 26 enums and the value can be one of: bean, constant, * datasonnet, exchangeProperty, file, groovy, header, hl7terser, java, * joor, jq, js, jsonpath, mvel, ognl, python, python3, quickjs, ref, - * simple, spel, tokenize, variable, wasm, xpath, xquery, xtokenize + * simple, spel, tokenize, variable, xpath, xquery, xtokenize * * Path parameter: resourceUri * Path to the resource, or a reference to lookup a bean in the Registry to @@ -11159,10 +11159,10 @@ public static LanguageEndpointBuilderFactory.LanguageEndpointBuilder language(St * * Path parameter: languageName (required) * Sets the name of the language to use - * There are 27 enums and the value can be one of: bean, constant, + * There are 26 enums and the value can be one of: bean, constant, * datasonnet, exchangeProperty, file, groovy, header, hl7terser, java, * joor, jq, js, jsonpath, mvel, ognl, python, python3, quickjs, ref, - * simple, spel, tokenize, variable, wasm, xpath, xquery, xtokenize + * simple, spel, tokenize, variable, xpath, xquery, xtokenize * * Path parameter: resourceUri * Path to the resource, or a reference to lookup a bean in the Registry to diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/LanguageEndpointBuilderFactory.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/LanguageEndpointBuilderFactory.java index 453791461a2a0..e7e63d89e8cfe 100644 --- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/LanguageEndpointBuilderFactory.java +++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/LanguageEndpointBuilderFactory.java @@ -362,10 +362,10 @@ default LanguageHeaderNameBuilder language() { * * Path parameter: languageName (required) * Sets the name of the language to use - * There are 27 enums and the value can be one of: bean, constant, + * There are 26 enums and the value can be one of: bean, constant, * datasonnet, exchangeProperty, file, groovy, header, hl7terser, java, * joor, jq, js, jsonpath, mvel, ognl, python, python3, quickjs, ref, - * simple, spel, tokenize, variable, wasm, xpath, xquery, xtokenize + * simple, spel, tokenize, variable, xpath, xquery, xtokenize * * Path parameter: resourceUri * Path to the resource, or a reference to lookup a bean in the Registry @@ -391,10 +391,10 @@ default LanguageEndpointBuilder language(String path) { * * Path parameter: languageName (required) * Sets the name of the language to use - * There are 27 enums and the value can be one of: bean, constant, + * There are 26 enums and the value can be one of: bean, constant, * datasonnet, exchangeProperty, file, groovy, header, hl7terser, java, * joor, jq, js, jsonpath, mvel, ognl, python, python3, quickjs, ref, - * simple, spel, tokenize, variable, wasm, xpath, xquery, xtokenize + * simple, spel, tokenize, variable, xpath, xquery, xtokenize * * Path parameter: resourceUri * Path to the resource, or a reference to lookup a bean in the Registry diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ai/BeanRefChecks.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ai/BeanRefChecks.java index d92d0ce65886f..8fc7bdd66067c 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ai/BeanRefChecks.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ai/BeanRefChecks.java @@ -614,7 +614,7 @@ public static List validateResourceRefs(String content, Path directory) /** The languages whose text is a script that returns a value (a returned 'resource:...' string stays text). */ private static final Set SCRIPT_LANGUAGES = Set.of("groovy", "jq", "js", "javascript", "python", "mvel", - "ognl", "java", "spel", "jactl", "quickjs", "datasonnet", "wasm"); + "ognl", "java", "spel", "jactl", "quickjs", "datasonnet"); /** A quoted resource:... literal inside a script: the script returns that text. */ private static final Pattern QUOTED_RESOURCE_LITERAL = Pattern.compile("['\"](resource:(?:classpath:|file:|ref:|bean:)?[^'\"\\\\\\s]+)['\"]"); diff --git a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteRefactorings.java b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteRefactorings.java index 10be7500e3e18..c4da017c54757 100644 --- a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteRefactorings.java +++ b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteRefactorings.java @@ -50,7 +50,7 @@ record Value(int start, int end, String text) { "routes", "route", "camel", "beans", "from", "when", "otherwise", "doCatch", "doFinally", "onFallback", "expression", "simple", "constant", "header", "exchangeProperty", "variable", "jsonpath", "xpath", "groovy", "language", "method", "tokenize", "jq", "ref", "datasonnet", "spel", "mvel", "ognl", "js", - "python", "java", "wasm", "xquery", "xtokenize", "hl7terser", "jactl", "csimple", "joor"); + "python", "java", "xquery", "xtokenize", "hl7terser", "jactl", "csimple", "joor"); private RouteRefactorings() { } diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ExpressionDeserializers.java b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ExpressionDeserializers.java index 07f8d5c0579db..70eac89be8036 100644 --- a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ExpressionDeserializers.java +++ b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ExpressionDeserializers.java @@ -115,9 +115,6 @@ public static ExpressionDefinition constructExpressionType(String id, Node node) case "variable": { return asType(node, org.apache.camel.model.language.VariableExpression.class); } - case "wasm": { - return asType(node, org.apache.camel.model.language.WasmExpression.class); - } case "xpath": { return asType(node, org.apache.camel.model.language.XPathExpression.class); } @@ -167,7 +164,6 @@ public static ExpressionDefinition constructExpressionType(String id, Node node) @YamlProperty(name = "spel", type = "object:org.apache.camel.model.language.SpELExpression", oneOf = "expression"), @YamlProperty(name = "tokenize", type = "object:org.apache.camel.model.language.TokenizerExpression", oneOf = "expression"), @YamlProperty(name = "variable", type = "object:org.apache.camel.model.language.VariableExpression", oneOf = "expression"), - @YamlProperty(name = "wasm", type = "object:org.apache.camel.model.language.WasmExpression", oneOf = "expression"), @YamlProperty(name = "xpath", type = "object:org.apache.camel.model.language.XPathExpression", oneOf = "expression"), @YamlProperty(name = "xquery", type = "object:org.apache.camel.model.language.XQueryExpression", oneOf = "expression"), @YamlProperty(name = "xtokenize", type = "object:org.apache.camel.model.language.XMLTokenizerExpression", oneOf = "expression") @@ -207,7 +203,6 @@ public Object construct(Node node) { @YamlProperty(name = "spel", type = "object:org.apache.camel.model.language.SpELExpression", oneOf = "expression"), @YamlProperty(name = "tokenize", type = "object:org.apache.camel.model.language.TokenizerExpression", oneOf = "expression"), @YamlProperty(name = "variable", type = "object:org.apache.camel.model.language.VariableExpression", oneOf = "expression"), - @YamlProperty(name = "wasm", type = "object:org.apache.camel.model.language.WasmExpression", oneOf = "expression"), @YamlProperty(name = "xpath", type = "object:org.apache.camel.model.language.XPathExpression", oneOf = "expression"), @YamlProperty(name = "xquery", type = "object:org.apache.camel.model.language.XQueryExpression", oneOf = "expression"), @YamlProperty(name = "xtokenize", type = "object:org.apache.camel.model.language.XMLTokenizerExpression", oneOf = "expression") 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 cc102eea2e2e0..1aed45545458b 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 @@ -204,7 +204,6 @@ import org.apache.camel.model.language.SpELExpression; import org.apache.camel.model.language.TokenizerExpression; import org.apache.camel.model.language.VariableExpression; -import org.apache.camel.model.language.WasmExpression; import org.apache.camel.model.language.XMLTokenizerExpression; import org.apache.camel.model.language.XPathExpression; import org.apache.camel.model.language.XQueryExpression; @@ -20960,91 +20959,6 @@ protected boolean setProperty(VariableExpression target, String propertyKey, } } - @YamlType( - nodes = "wasm", - inline = true, - types = org.apache.camel.model.language.WasmExpression.class, - order = org.apache.camel.dsl.yaml.common.YamlDeserializerResolver.ORDER_LOWEST - 1, - displayName = "Wasm", - description = "Call a wasm (web assembly) function", - deprecated = false, - properties = { - @YamlProperty(name = "expression", type = "string", required = true, description = "The expression value in your chosen language syntax.", displayName = "Expression"), - @YamlProperty(name = "id", type = "string", description = "The id of this node.", displayName = "Id"), - @YamlProperty(name = "module", type = "string", required = true, description = "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function.", displayName = "Module"), - @YamlProperty(name = "resolveResource", type = "boolean", defaultValue = "false", description = "Whether a result of the expression that is a String starting with resource: is loaded as a resource and its content becomes the result, e.g. a script that returns resource:file:order.json or resource:classpath:templates/order.json (a name without a scheme is a classpath resource). Off by default; the resource: prefix on the expression text itself is always resolved. Applies to the expression used as a value, not as a predicate.", displayName = "Resolve Resource"), - @YamlProperty(name = "resultType", type = "string", description = "The class of the result type (type from output).", displayName = "Result Type"), - @YamlProperty(name = "trim", type = "boolean", defaultValue = "true", description = "Whether to trim the source code to remove leading and trailing whitespaces and line breaks.", displayName = "Trim") - } - ) - public static class WasmExpressionDeserializer extends YamlDeserializerBase { - public WasmExpressionDeserializer() { - super(WasmExpression.class); - } - - @Override - protected WasmExpression newInstance() { - return new WasmExpression(); - } - - @Override - protected WasmExpression newInstance(String value) { - return new WasmExpression(value); - } - - @Override - protected boolean setProperty(WasmExpression target, String propertyKey, - String propertyName, Node node) { - propertyKey = org.apache.camel.util.StringHelper.dashToCamelCase(propertyKey); - switch(propertyKey) { - case "expression": { - String val = asText(node); - target.setExpression(val); - break; - } - case "id": { - String val = asText(node); - target.setId(val); - break; - } - case "module": { - String val = asText(node); - target.setModule(val); - break; - } - case "resolveResource": { - String val = asText(node); - target.setResolveResource(val); - break; - } - case "resultType": { - String val = asText(node); - target.setResultTypeName(val); - break; - } - case "trim": { - String val = asText(node); - target.setTrim(val); - break; - } - default: { - ExpressionDefinition ed = target.getExpressionType(); - if (ed != null) { - throw new org.apache.camel.dsl.yaml.common.exception.DuplicateFieldException(node, propertyName, "as an expression"); - } - ed = ExpressionDeserializers.constructExpressionType(propertyKey, node); - if (ed != null) { - target.setExpressionType(ed); - warnCompactNotation(node); - } else { - return false; - } - } - } - return true; - } - } - @YamlType( nodes = "weightedLoadBalancer", types = org.apache.camel.model.loadbalancer.WeightedLoadBalancerDefinition.class, diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ModelDeserializersResolver.java b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ModelDeserializersResolver.java index 853a854e8332f..f9dc87a03a8c0 100644 --- a/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ModelDeserializersResolver.java +++ b/dsl/camel-yaml-dsl/camel-yaml-dsl-deserializers/src/generated/java/org/apache/camel/dsl/yaml/deserializers/ModelDeserializersResolver.java @@ -468,8 +468,6 @@ public ConstructNode resolve(String id) { case "org.apache.camel.model.ValueDefinition": return new ModelDeserializers.ValueDefinitionDeserializer(); case "variable": return new ModelDeserializers.VariableExpressionDeserializer(); case "org.apache.camel.model.language.VariableExpression": return new ModelDeserializers.VariableExpressionDeserializer(); - case "wasm": return new ModelDeserializers.WasmExpressionDeserializer(); - case "org.apache.camel.model.language.WasmExpression": return new ModelDeserializers.WasmExpressionDeserializer(); case "weightedLoadBalancer": return new ModelDeserializers.WeightedLoadBalancerDefinitionDeserializer(); case "org.apache.camel.model.loadbalancer.WeightedLoadBalancerDefinition": return new ModelDeserializers.WeightedLoadBalancerDefinitionDeserializer(); case "when": return new ModelDeserializers.WhenDefinitionDeserializer(); diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl-validator/src/main/java/org/apache/camel/dsl/yaml/validator/YamlValidator.java b/dsl/camel-yaml-dsl/camel-yaml-dsl-validator/src/main/java/org/apache/camel/dsl/yaml/validator/YamlValidator.java index 55829a6d6a896..6e94906e8dc3d 100644 --- a/dsl/camel-yaml-dsl/camel-yaml-dsl-validator/src/main/java/org/apache/camel/dsl/yaml/validator/YamlValidator.java +++ b/dsl/camel-yaml-dsl/camel-yaml-dsl-validator/src/main/java/org/apache/camel/dsl/yaml/validator/YamlValidator.java @@ -841,7 +841,7 @@ String languageForm(String language) { "delay", "delay: {expression: {constant: {expression: \"1000\"}}}"); private static final Set SCRIPT_LANGUAGES = Set.of("groovy", "js", "python", "python3", "mvel", "ognl", - "jq", "jsonpath", "xpath", "xquery", "spel", "jactl", "java", "joor", "quickjs", "wasm", "datasonnet"); + "jq", "jsonpath", "xpath", "xquery", "spel", "jactl", "java", "joor", "quickjs", "datasonnet"); /** * ${body.value} < 1 written as a groovy expression: Simple syntax inside another language, which groovy reads as a diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl-canonical.json b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl-canonical.json index ae62903636aad..d00487c75d8ab 100644 --- a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl-canonical.json +++ b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl-canonical.json @@ -1436,9 +1436,6 @@ "variable" : { "$ref" : "#/items/definitions/org.apache.camel.model.language.VariableExpression" }, - "wasm" : { - "$ref" : "#/items/definitions/org.apache.camel.model.language.WasmExpression" - }, "xpath" : { "$ref" : "#/items/definitions/org.apache.camel.model.language.XPathExpression" }, @@ -9887,9 +9884,6 @@ "variable" : { "$ref" : "#/items/definitions/org.apache.camel.model.language.VariableExpression" }, - "wasm" : { - "$ref" : "#/items/definitions/org.apache.camel.model.language.WasmExpression" - }, "xpath" : { "$ref" : "#/items/definitions/org.apache.camel.model.language.XPathExpression" }, @@ -10764,47 +10758,6 @@ }, "required" : [ "expression" ] }, - "org.apache.camel.model.language.WasmExpression" : { - "title" : "Wasm", - "description" : "Call a wasm (web assembly) function", - "type" : "object", - "additionalProperties" : false, - "properties" : { - "expression" : { - "type" : "string", - "title" : "Expression", - "description" : "The expression value in your chosen language syntax." - }, - "id" : { - "type" : "string", - "title" : "Id", - "description" : "The id of this node." - }, - "module" : { - "type" : "string", - "title" : "Module", - "description" : "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function." - }, - "resolveResource" : { - "type" : "boolean", - "title" : "Resolve Resource", - "description" : "Whether a result of the expression that is a String starting with resource: is loaded as a resource and its content becomes the result, e.g. a script that returns resource:file:order.json or resource:classpath:templates/order.json (a name without a scheme is a classpath resource). Off by default; the resource: prefix on the expression text itself is always resolved. Applies to the expression used as a value, not as a predicate.", - "default" : false - }, - "resultType" : { - "type" : "string", - "title" : "Result Type", - "description" : "The class of the result type (type from output)." - }, - "trim" : { - "type" : "boolean", - "title" : "Trim", - "description" : "Whether to trim the source code to remove leading and trailing whitespaces and line breaks.", - "default" : true - } - }, - "required" : [ "expression", "module" ] - }, "org.apache.camel.model.language.XMLTokenizerExpression" : { "title" : "XML Tokenize", "description" : "Tokenize XML payloads", diff --git a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl-model.json b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl-model.json index 60af524015b79..52a9a833e1cd4 100644 --- a/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl-model.json +++ b/dsl/camel-yaml-dsl/camel-yaml-dsl/src/generated/resources/schema/camelYamlDsl-model.json @@ -761,13 +761,6 @@ "title" : "Variable", "description" : "Gets a variable", "label" : "language,core" - }, { - "name" : "wasm", - "type" : "object", - "ref" : "wasm", - "title" : "Wasm", - "description" : "Call a wasm (web assembly) function", - "label" : "language" }, { "name" : "xpath", "type" : "object", @@ -2730,10 +2723,6 @@ "name" : "variable", "type" : "object", "ref" : "variable" - }, { - "name" : "wasm", - "type" : "object", - "ref" : "wasm" }, { "name" : "xpath", "type" : "object", @@ -16326,72 +16315,6 @@ "label" : "advanced" } ] }, - "wasm" : { - "title" : "Wasm", - "description" : "Call a wasm (web assembly) function", - "label" : "language", - "children" : [ { - "name" : "id", - "type" : "string", - "description" : "The id of this node.", - "title" : "Id", - "displayName" : "Id", - "kind" : "attribute", - "index" : 0, - "group" : "common" - }, { - "name" : "expression", - "type" : "string", - "description" : "The expression value in your chosen language syntax.", - "title" : "Expression", - "required" : true, - "displayName" : "Expression", - "kind" : "value", - "index" : 1, - "group" : "common" - }, { - "name" : "module", - "type" : "string", - "description" : "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function.", - "title" : "Module", - "required" : true, - "displayName" : "Module", - "kind" : "attribute", - "index" : 2, - "group" : "common" - }, { - "name" : "resultType", - "type" : "string", - "description" : "The class of the result type (type from output).", - "title" : "Result Type", - "displayName" : "Result Type", - "kind" : "attribute", - "index" : 3, - "group" : "common" - }, { - "name" : "trim", - "type" : "boolean", - "description" : "Whether to trim the source code to remove leading and trailing whitespaces and line breaks.", - "title" : "Trim", - "default" : "true", - "displayName" : "Trim", - "kind" : "attribute", - "index" : 4, - "group" : "advanced", - "label" : "advanced" - }, { - "name" : "resolveResource", - "type" : "boolean", - "description" : "Whether a result of the expression that is a String starting with resource: is loaded as a resource and its content becomes the result, e.g. a script that returns resource:file:order.json or resource:classpath:templates/order.json (a name without a scheme is a classpath resource). Off by default; the resource: prefix on the expression text itself is always resolved. Applies to the expression used as a value, not as a predicate.", - "title" : "Resolve Resource", - "default" : "false", - "displayName" : "Resolve Resource", - "kind" : "attribute", - "index" : 5, - "group" : "advanced", - "label" : "advanced" - } ] - }, "xMLTokenizer" : { "title" : "XML Tokenize", "description" : "Tokenize XML payloads", 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 fb5f7c8b3b381..76323a11e6f17 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 @@ -838,7 +838,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -1341,7 +1340,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -1435,7 +1433,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -1572,7 +1569,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -1725,8 +1721,6 @@ "required" : [ "tokenize" ] }, { "required" : [ "variable" ] - }, { - "required" : [ "wasm" ] }, { "required" : [ "xpath" ] }, { @@ -1911,14 +1905,6 @@ "$ref" : "#/items/definitions/org.apache.camel.model.language.VariableExpression" } } - }, { - "type" : "object", - "required" : [ "wasm" ], - "properties" : { - "wasm" : { - "$ref" : "#/items/definitions/org.apache.camel.model.language.WasmExpression" - } - } }, { "type" : "object", "required" : [ "xpath" ], @@ -1969,7 +1955,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { } @@ -2128,7 +2113,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -2336,7 +2320,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -2837,7 +2820,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -3712,7 +3694,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -4176,7 +4157,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -4286,7 +4266,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -4450,7 +4429,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -4915,7 +4893,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -5599,7 +5576,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -5793,7 +5769,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -5865,7 +5840,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -5982,7 +5956,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -6097,7 +6070,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -6175,7 +6147,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -6278,8 +6249,6 @@ "required" : [ "tokenize" ] }, { "required" : [ "variable" ] - }, { - "required" : [ "wasm" ] }, { "required" : [ "xpath" ] }, { @@ -6350,7 +6319,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -6533,7 +6501,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -7013,7 +6980,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -7453,7 +7419,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -8076,7 +8041,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -8171,7 +8135,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }, @@ -12225,14 +12188,6 @@ "$ref" : "#/items/definitions/org.apache.camel.model.language.VariableExpression" } } - }, { - "type" : "object", - "required" : [ "wasm" ], - "properties" : { - "wasm" : { - "$ref" : "#/items/definitions/org.apache.camel.model.language.WasmExpression" - } - } }, { "type" : "object", "required" : [ "xpath" ], @@ -12283,7 +12238,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { } @@ -13228,51 +13182,6 @@ } ], "required" : [ "expression" ] }, - "org.apache.camel.model.language.WasmExpression" : { - "title" : "Wasm", - "description" : "Call a wasm (web assembly) function", - "oneOf" : [ { - "type" : "string" - }, { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "expression" : { - "type" : "string", - "title" : "Expression", - "description" : "The expression value in your chosen language syntax." - }, - "id" : { - "type" : "string", - "title" : "Id", - "description" : "The id of this node." - }, - "module" : { - "type" : "string", - "title" : "Module", - "description" : "Set the module (the distributable, loadable, and executable unit of code in WebAssembly) resource that provides the expression function." - }, - "resolveResource" : { - "type" : "boolean", - "title" : "Resolve Resource", - "description" : "Whether a result of the expression that is a String starting with resource: is loaded as a resource and its content becomes the result, e.g. a script that returns resource:file:order.json or resource:classpath:templates/order.json (a name without a scheme is a classpath resource). Off by default; the resource: prefix on the expression text itself is always resolved. Applies to the expression used as a value, not as a predicate.", - "default" : false - }, - "resultType" : { - "type" : "string", - "title" : "Result Type", - "description" : "The class of the result type (type from output)." - }, - "trim" : { - "type" : "boolean", - "title" : "Trim", - "description" : "Whether to trim the source code to remove leading and trailing whitespaces and line breaks.", - "default" : true - } - } - } ], - "required" : [ "expression", "module" ] - }, "org.apache.camel.model.language.XMLTokenizerExpression" : { "title" : "XML Tokenize", "description" : "Tokenize XML payloads", @@ -16919,14 +16828,6 @@ "$ref" : "#/items/definitions/org.apache.camel.model.language.VariableExpression" } } - }, { - "type" : "object", - "required" : [ "wasm" ], - "properties" : { - "wasm" : { - "$ref" : "#/items/definitions/org.apache.camel.model.language.WasmExpression" - } - } }, { "type" : "object", "required" : [ "xpath" ], @@ -16977,7 +16878,6 @@ "spel" : { }, "tokenize" : { }, "variable" : { }, - "wasm" : { }, "xpath" : { }, "xquery" : { }, "xtokenize" : { }