This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 556abf4a6960 CAMEL-26297: camel-main - the configurers of the
languages, and camel.language.<name> options set through them (#28444)
556abf4a6960 is described below
commit 556abf4a69606f8e440ba74b9b31338f5aadd8f7
Author: Claus Ibsen <[email protected]>
AuthorDate: Sun Oct 25 12:59:59 2026 +0100
CAMEL-26297: camel-main - the configurers of the languages, and
camel.language.<name> options set through them (#28444)
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
---
.../semantic/SemanticLanguageConfigurer.java | 63 +++++++++
.../org/apache/camel/configurer/semantic-language | 2 +
.../typesafeai/TypeSafeAiLanguageConfigurer.java | 79 +++++++++++
.../apache/camel/configurer/typesafe-ai-language | 2 +
.../language/bean/BeanLanguageConfigurer.java | 60 ++++++++
.../org/apache/camel/configurer/bean-language | 2 +
.../datasonnet/DatasonnetLanguageConfigurer.java | 48 +++++++
.../apache/camel/configurer/datasonnet-language | 2 +
.../language/groovy/GroovyLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/groovy-language | 2 +
.../component/hl7/Hl7TerserLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/hl7terser-language | 2 +
.../language/jactl/JactlLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/jactl-language | 2 +
.../language/js/JavaScriptLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/js-language | 2 +
.../language/joor/JavaLanguageConfigurer.java | 77 +++++++++++
.../org/apache/camel/configurer/java-language | 2 +
.../camel/language/jq/JqLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/jq-language | 2 +
.../camel/jsonpath/JsonPathLanguageConfigurer.java | 95 +++++++++++++
.../org/apache/camel/configurer/jsonpath-language | 2 +
.../apache/camel/jsonpath/JsonPathOptionsTest.java | 19 +++
.../language/mvel/MvelLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/mvel-language | 2 +
.../language/ognl/OgnlLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/ognl-language | 2 +
.../openfeature/OpenFeatureLanguageConfigurer.java | 60 ++++++++
.../apache/camel/configurer/openfeature-language | 2 +
.../language/python/PythonLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/python-language | 2 +
.../python3/Python3LanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/python3-language | 2 +
.../quickjs/QuickjsLanguageConfigurer.java | 70 ++++++++++
.../org/apache/camel/configurer/quickjs-language | 2 +
.../language/xquery/XQueryLanguageConfigurer.java | 60 ++++++++
.../org/apache/camel/configurer/xquery-language | 2 +
.../language/spel/SpelLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/spel-language | 2 +
.../xtokenizer/XMLTokenizeLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/xtokenize-language | 2 +
.../language/xpath/XPathLanguageConfigurer.java | 109 +++++++++++++++
.../org/apache/camel/configurer/xpath-language | 2 +
.../constant/ConstantLanguageConfigurer.java | 48 +++++++
.../language/header/HeaderLanguageConfigurer.java | 48 +++++++
.../ExchangePropertyLanguageConfigurer.java | 48 +++++++
.../camel/language/ref/RefLanguageConfigurer.java | 48 +++++++
.../language/simple/FileLanguageConfigurer.java | 48 +++++++
.../language/simple/SimpleLanguageConfigurer.java | 48 +++++++
.../tokenizer/TokenizeLanguageConfigurer.java | 48 +++++++
.../variable/VariableLanguageConfigurer.java | 48 +++++++
.../org/apache/camel/configurer/constant-language | 2 +
.../camel/configurer/exchangeProperty-language | 2 +
.../org/apache/camel/configurer/file-language | 2 +
.../org/apache/camel/configurer/header-language | 2 +
.../org/apache/camel/configurer/ref-language | 2 +
.../org/apache/camel/configurer/simple-language | 2 +
.../org/apache/camel/configurer/tokenize-language | 2 +
.../org/apache/camel/configurer/variable-language | 2 +
.../org/apache/camel/main/BaseMainSupport.java | 3 +-
.../java/org/apache/camel/main/MainHelper.java | 46 ++++++-
.../camel/main/MainConfigurerByNameTest.java | 152 +++++++++++++++++++++
.../org/apache/camel/configurer/mydf-dataformat | 1 +
.../org/apache/camel/configurer/mylang-language | 1 +
.../org/apache/camel/configurer/otherlang-language | 1 +
.../maven/packaging/AbstractGeneratorMojo.java | 33 +++++
.../maven/packaging/PackageDataFormatMojo.java | 31 -----
.../camel/maven/packaging/PackageLanguageMojo.java | 27 ++++
.../maven/packaging/PrepareComponentMojo.java | 2 +-
.../maven/packaging/PackageLanguageMojoTest.java | 31 ++++-
70 files changed, 2001 insertions(+), 37 deletions(-)
diff --git
a/components/camel-ai/camel-semantic/src/generated/java/org/apache/camel/language/semantic/SemanticLanguageConfigurer.java
b/components/camel-ai/camel-semantic/src/generated/java/org/apache/camel/language/semantic/SemanticLanguageConfigurer.java
new file mode 100644
index 000000000000..7be98f4b72a6
--- /dev/null
+++
b/components/camel-ai/camel-semantic/src/generated/java/org/apache/camel/language/semantic/SemanticLanguageConfigurer.java
@@ -0,0 +1,63 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.semantic;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class SemanticLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("DefaultState", java.lang.String.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ SemanticLanguage target = (SemanticLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "defaultstate":
+ case "defaultState": target.setDefaultState(property(camelContext,
java.lang.String.class, value)); return true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "defaultstate":
+ case "defaultState": return java.lang.String.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ SemanticLanguage target = (SemanticLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "defaultstate":
+ case "defaultState": return target.getDefaultState();
+ default: return null;
+ }
+ }
+}
+
diff --git
a/components/camel-ai/camel-semantic/src/generated/resources/META-INF/services/org/apache/camel/configurer/semantic-language
b/components/camel-ai/camel-semantic/src/generated/resources/META-INF/services/org/apache/camel/configurer/semantic-language
new file mode 100644
index 000000000000..7e7dcdf2310c
--- /dev/null
+++
b/components/camel-ai/camel-semantic/src/generated/resources/META-INF/services/org/apache/camel/configurer/semantic-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.semantic.SemanticLanguageConfigurer
diff --git
a/components/camel-ai/camel-typesafe-ai/src/generated/java/org/apache/camel/language/typesafeai/TypeSafeAiLanguageConfigurer.java
b/components/camel-ai/camel-typesafe-ai/src/generated/java/org/apache/camel/language/typesafeai/TypeSafeAiLanguageConfigurer.java
new file mode 100644
index 000000000000..5dd88beae20c
--- /dev/null
+++
b/components/camel-ai/camel-typesafe-ai/src/generated/java/org/apache/camel/language/typesafeai/TypeSafeAiLanguageConfigurer.java
@@ -0,0 +1,79 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.typesafeai;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class TypeSafeAiLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("Endpoint", java.lang.String.class);
+ map.put("State", java.lang.String.class);
+ map.put("Threshold", java.lang.Double.class);
+ map.put("Uncertainty", java.lang.Double.class);
+ map.put("UncertaintyPolicy",
org.apache.camel.language.typesafeai.TypeSafeAiLanguage.UncertaintyPolicy.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ TypeSafeAiLanguage target = (TypeSafeAiLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "endpoint": target.setEndpoint(property(camelContext,
java.lang.String.class, value)); return true;
+ case "state": target.setState(property(camelContext,
java.lang.String.class, value)); return true;
+ case "threshold": target.setThreshold(property(camelContext,
java.lang.Double.class, value)); return true;
+ case "uncertainty": target.setUncertainty(property(camelContext,
java.lang.Double.class, value)); return true;
+ case "uncertaintypolicy":
+ case "uncertaintyPolicy":
target.setUncertaintyPolicy(property(camelContext,
org.apache.camel.language.typesafeai.TypeSafeAiLanguage.UncertaintyPolicy.class,
value)); return true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "endpoint": return java.lang.String.class;
+ case "state": return java.lang.String.class;
+ case "threshold": return java.lang.Double.class;
+ case "uncertainty": return java.lang.Double.class;
+ case "uncertaintypolicy":
+ case "uncertaintyPolicy": return
org.apache.camel.language.typesafeai.TypeSafeAiLanguage.UncertaintyPolicy.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ TypeSafeAiLanguage target = (TypeSafeAiLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "endpoint": return target.getEndpoint();
+ case "state": return target.getState();
+ case "threshold": return target.getThreshold();
+ case "uncertainty": return target.getUncertainty();
+ case "uncertaintypolicy":
+ case "uncertaintyPolicy": return target.getUncertaintyPolicy();
+ default: return null;
+ }
+ }
+}
+
diff --git
a/components/camel-ai/camel-typesafe-ai/src/generated/resources/META-INF/services/org/apache/camel/configurer/typesafe-ai-language
b/components/camel-ai/camel-typesafe-ai/src/generated/resources/META-INF/services/org/apache/camel/configurer/typesafe-ai-language
new file mode 100644
index 000000000000..7f0eb6e72cbb
--- /dev/null
+++
b/components/camel-ai/camel-typesafe-ai/src/generated/resources/META-INF/services/org/apache/camel/configurer/typesafe-ai-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.typesafeai.TypeSafeAiLanguageConfigurer
diff --git
a/components/camel-bean/src/generated/java/org/apache/camel/language/bean/BeanLanguageConfigurer.java
b/components/camel-bean/src/generated/java/org/apache/camel/language/bean/BeanLanguageConfigurer.java
new file mode 100644
index 000000000000..be813181eb46
--- /dev/null
+++
b/components/camel-bean/src/generated/java/org/apache/camel/language/bean/BeanLanguageConfigurer.java
@@ -0,0 +1,60 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.bean;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class BeanLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("Validate", boolean.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ BeanLanguage target = (BeanLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "validate": target.setValidate(property(camelContext,
boolean.class, value)); return true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "validate": return boolean.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ BeanLanguage target = (BeanLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "validate": return target.isValidate();
+ default: return null;
+ }
+ }
+}
+
diff --git
a/components/camel-bean/src/generated/resources/META-INF/services/org/apache/camel/configurer/bean-language
b/components/camel-bean/src/generated/resources/META-INF/services/org/apache/camel/configurer/bean-language
new file mode 100644
index 000000000000..5428997576d4
--- /dev/null
+++
b/components/camel-bean/src/generated/resources/META-INF/services/org/apache/camel/configurer/bean-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.bean.BeanLanguageConfigurer
diff --git
a/components/camel-datasonnet/src/generated/java/org/apache/camel/language/datasonnet/DatasonnetLanguageConfigurer.java
b/components/camel-datasonnet/src/generated/java/org/apache/camel/language/datasonnet/DatasonnetLanguageConfigurer.java
new file mode 100644
index 000000000000..5b3a6648340d
--- /dev/null
+++
b/components/camel-datasonnet/src/generated/java/org/apache/camel/language/datasonnet/DatasonnetLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.datasonnet;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class DatasonnetLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-datasonnet/src/generated/resources/META-INF/services/org/apache/camel/configurer/datasonnet-language
b/components/camel-datasonnet/src/generated/resources/META-INF/services/org/apache/camel/configurer/datasonnet-language
new file mode 100644
index 000000000000..471d63221592
--- /dev/null
+++
b/components/camel-datasonnet/src/generated/resources/META-INF/services/org/apache/camel/configurer/datasonnet-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.datasonnet.DatasonnetLanguageConfigurer
diff --git
a/components/camel-groovy/src/generated/java/org/apache/camel/language/groovy/GroovyLanguageConfigurer.java
b/components/camel-groovy/src/generated/java/org/apache/camel/language/groovy/GroovyLanguageConfigurer.java
new file mode 100644
index 000000000000..6d81701ddfb1
--- /dev/null
+++
b/components/camel-groovy/src/generated/java/org/apache/camel/language/groovy/GroovyLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.groovy;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class GroovyLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-groovy/src/generated/resources/META-INF/services/org/apache/camel/configurer/groovy-language
b/components/camel-groovy/src/generated/resources/META-INF/services/org/apache/camel/configurer/groovy-language
new file mode 100644
index 000000000000..f92e66b92a81
--- /dev/null
+++
b/components/camel-groovy/src/generated/resources/META-INF/services/org/apache/camel/configurer/groovy-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.groovy.GroovyLanguageConfigurer
diff --git
a/components/camel-hl7/src/generated/java/org/apache/camel/component/hl7/Hl7TerserLanguageConfigurer.java
b/components/camel-hl7/src/generated/java/org/apache/camel/component/hl7/Hl7TerserLanguageConfigurer.java
new file mode 100644
index 000000000000..8655d00babb6
--- /dev/null
+++
b/components/camel-hl7/src/generated/java/org/apache/camel/component/hl7/Hl7TerserLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.component.hl7;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class Hl7TerserLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-hl7/src/generated/resources/META-INF/services/org/apache/camel/configurer/hl7terser-language
b/components/camel-hl7/src/generated/resources/META-INF/services/org/apache/camel/configurer/hl7terser-language
new file mode 100644
index 000000000000..79951fa30863
--- /dev/null
+++
b/components/camel-hl7/src/generated/resources/META-INF/services/org/apache/camel/configurer/hl7terser-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.component.hl7.Hl7TerserLanguageConfigurer
diff --git
a/components/camel-jactl/src/generated/java/org/apache/camel/language/jactl/JactlLanguageConfigurer.java
b/components/camel-jactl/src/generated/java/org/apache/camel/language/jactl/JactlLanguageConfigurer.java
new file mode 100644
index 000000000000..afabef57ffc2
--- /dev/null
+++
b/components/camel-jactl/src/generated/java/org/apache/camel/language/jactl/JactlLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.jactl;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class JactlLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-jactl/src/generated/resources/META-INF/services/org/apache/camel/configurer/jactl-language
b/components/camel-jactl/src/generated/resources/META-INF/services/org/apache/camel/configurer/jactl-language
new file mode 100644
index 000000000000..dd24320cdec2
--- /dev/null
+++
b/components/camel-jactl/src/generated/resources/META-INF/services/org/apache/camel/configurer/jactl-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.jactl.JactlLanguageConfigurer
diff --git
a/components/camel-javascript/src/generated/java/org/apache/camel/language/js/JavaScriptLanguageConfigurer.java
b/components/camel-javascript/src/generated/java/org/apache/camel/language/js/JavaScriptLanguageConfigurer.java
new file mode 100644
index 000000000000..2f24b02f680e
--- /dev/null
+++
b/components/camel-javascript/src/generated/java/org/apache/camel/language/js/JavaScriptLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.js;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class JavaScriptLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-javascript/src/generated/resources/META-INF/services/org/apache/camel/configurer/js-language
b/components/camel-javascript/src/generated/resources/META-INF/services/org/apache/camel/configurer/js-language
new file mode 100644
index 000000000000..c223b798a835
--- /dev/null
+++
b/components/camel-javascript/src/generated/resources/META-INF/services/org/apache/camel/configurer/js-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.js.JavaScriptLanguageConfigurer
diff --git
a/components/camel-joor/src/generated/java/org/apache/camel/language/joor/JavaLanguageConfigurer.java
b/components/camel-joor/src/generated/java/org/apache/camel/language/joor/JavaLanguageConfigurer.java
new file mode 100644
index 000000000000..cc828da29ff0
--- /dev/null
+++
b/components/camel-joor/src/generated/java/org/apache/camel/language/joor/JavaLanguageConfigurer.java
@@ -0,0 +1,77 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.joor;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class JavaLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("ConfigResource", java.lang.String.class);
+ map.put("PreCompile", boolean.class);
+ map.put("SingleQuotes", boolean.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ JavaLanguage target = (JavaLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "configresource":
+ case "configResource": target.setConfigResource(property(camelContext,
java.lang.String.class, value)); return true;
+ case "precompile":
+ case "preCompile": target.setPreCompile(property(camelContext,
boolean.class, value)); return true;
+ case "singlequotes":
+ case "singleQuotes": target.setSingleQuotes(property(camelContext,
boolean.class, value)); return true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "configresource":
+ case "configResource": return java.lang.String.class;
+ case "precompile":
+ case "preCompile": return boolean.class;
+ case "singlequotes":
+ case "singleQuotes": return boolean.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ JavaLanguage target = (JavaLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "configresource":
+ case "configResource": return target.getConfigResource();
+ case "precompile":
+ case "preCompile": return target.isPreCompile();
+ case "singlequotes":
+ case "singleQuotes": return target.isSingleQuotes();
+ default: return null;
+ }
+ }
+}
+
diff --git
a/components/camel-joor/src/generated/resources/META-INF/services/org/apache/camel/configurer/java-language
b/components/camel-joor/src/generated/resources/META-INF/services/org/apache/camel/configurer/java-language
new file mode 100644
index 000000000000..c07985546f71
--- /dev/null
+++
b/components/camel-joor/src/generated/resources/META-INF/services/org/apache/camel/configurer/java-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.joor.JavaLanguageConfigurer
diff --git
a/components/camel-jq/src/generated/java/org/apache/camel/language/jq/JqLanguageConfigurer.java
b/components/camel-jq/src/generated/java/org/apache/camel/language/jq/JqLanguageConfigurer.java
new file mode 100644
index 000000000000..cf57ebf8bc81
--- /dev/null
+++
b/components/camel-jq/src/generated/java/org/apache/camel/language/jq/JqLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.jq;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class JqLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-jq/src/generated/resources/META-INF/services/org/apache/camel/configurer/jq-language
b/components/camel-jq/src/generated/resources/META-INF/services/org/apache/camel/configurer/jq-language
new file mode 100644
index 000000000000..196bbc3344ab
--- /dev/null
+++
b/components/camel-jq/src/generated/resources/META-INF/services/org/apache/camel/configurer/jq-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.jq.JqLanguageConfigurer
diff --git
a/components/camel-jsonpath/src/generated/java/org/apache/camel/jsonpath/JsonPathLanguageConfigurer.java
b/components/camel-jsonpath/src/generated/java/org/apache/camel/jsonpath/JsonPathLanguageConfigurer.java
new file mode 100644
index 000000000000..2d668e527cec
--- /dev/null
+++
b/components/camel-jsonpath/src/generated/java/org/apache/camel/jsonpath/JsonPathLanguageConfigurer.java
@@ -0,0 +1,95 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.jsonpath;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class JsonPathLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("AllowEasyPredicate", boolean.class);
+ map.put("AllowSimple", boolean.class);
+ map.put("Options", com.jayway.jsonpath.Option[].class);
+ map.put("SuppressExceptions", boolean.class);
+ map.put("UnpackArray", boolean.class);
+ map.put("WriteAsString", boolean.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ JsonPathLanguage target = (JsonPathLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "alloweasypredicate":
+ case "allowEasyPredicate":
target.setAllowEasyPredicate(property(camelContext, boolean.class, value));
return true;
+ case "allowsimple":
+ case "allowSimple": target.setAllowSimple(property(camelContext,
boolean.class, value)); return true;
+ case "options": target.setOptions(property(camelContext,
com.jayway.jsonpath.Option[].class, value)); return true;
+ case "suppressexceptions":
+ case "suppressExceptions":
target.setSuppressExceptions(property(camelContext, boolean.class, value));
return true;
+ case "unpackarray":
+ case "unpackArray": target.setUnpackArray(property(camelContext,
boolean.class, value)); return true;
+ case "writeasstring":
+ case "writeAsString": target.setWriteAsString(property(camelContext,
boolean.class, value)); return true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "alloweasypredicate":
+ case "allowEasyPredicate": return boolean.class;
+ case "allowsimple":
+ case "allowSimple": return boolean.class;
+ case "options": return com.jayway.jsonpath.Option[].class;
+ case "suppressexceptions":
+ case "suppressExceptions": return boolean.class;
+ case "unpackarray":
+ case "unpackArray": return boolean.class;
+ case "writeasstring":
+ case "writeAsString": return boolean.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ JsonPathLanguage target = (JsonPathLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "alloweasypredicate":
+ case "allowEasyPredicate": return target.isAllowEasyPredicate();
+ case "allowsimple":
+ case "allowSimple": return target.isAllowSimple();
+ case "options": return target.getOptions();
+ case "suppressexceptions":
+ case "suppressExceptions": return target.isSuppressExceptions();
+ case "unpackarray":
+ case "unpackArray": return target.isUnpackArray();
+ case "writeasstring":
+ case "writeAsString": return target.isWriteAsString();
+ default: return null;
+ }
+ }
+}
+
diff --git
a/components/camel-jsonpath/src/generated/resources/META-INF/services/org/apache/camel/configurer/jsonpath-language
b/components/camel-jsonpath/src/generated/resources/META-INF/services/org/apache/camel/configurer/jsonpath-language
new file mode 100644
index 000000000000..ab87f444abd9
--- /dev/null
+++
b/components/camel-jsonpath/src/generated/resources/META-INF/services/org/apache/camel/configurer/jsonpath-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.jsonpath.JsonPathLanguageConfigurer
diff --git
a/components/camel-jsonpath/src/test/java/org/apache/camel/jsonpath/JsonPathOptionsTest.java
b/components/camel-jsonpath/src/test/java/org/apache/camel/jsonpath/JsonPathOptionsTest.java
index 6ba8b95a0f7c..b4f1a1982ea7 100644
---
a/components/camel-jsonpath/src/test/java/org/apache/camel/jsonpath/JsonPathOptionsTest.java
+++
b/components/camel-jsonpath/src/test/java/org/apache/camel/jsonpath/JsonPathOptionsTest.java
@@ -16,18 +16,23 @@
*/
package org.apache.camel.jsonpath;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import com.jayway.jsonpath.Option;
import org.apache.camel.Exchange;
import org.apache.camel.Expression;
+import org.apache.camel.spi.PropertyConfigurer;
import org.apache.camel.support.DefaultExchange;
+import org.apache.camel.support.PluginHelper;
import org.apache.camel.support.PropertyBindingSupport;
import org.apache.camel.test.junit6.CamelTestSupport;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertInstanceOf;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -66,6 +71,20 @@ public class JsonPathOptionsTest extends CamelTestSupport {
assertEquals(List.of(), expression.evaluate(exchange(), List.class));
}
+ @Test
+ public void testTheConfigurerOfTheLanguage() {
+ // camel-main finds the configurer of camel.language.jsonpath.* by the
name of the language
+ PropertyConfigurer configurer
+ =
PluginHelper.getConfigurerResolver(context).resolvePropertyConfigurer("jsonpath-language",
context);
+ assertInstanceOf(JsonPathLanguageConfigurer.class, configurer);
+
+ JsonPathLanguage language = (JsonPathLanguage)
context.resolveLanguage("jsonpath");
+
PropertyBindingSupport.build().withConfigurer(configurer).withReflection(false)
+ .bind(context, language, new HashMap<>(Map.of("options",
"SUPPRESS_EXCEPTIONS", "writeAsString", "true")));
+ assertArrayEquals(new Option[] { Option.SUPPRESS_EXCEPTIONS },
language.getOptions());
+ assertTrue(language.isWriteAsString());
+ }
+
@Test
public void testTheOptionOfAnExpression() {
JsonPathLanguage language = (JsonPathLanguage)
context.resolveLanguage("jsonpath");
diff --git
a/components/camel-mvel/src/generated/java/org/apache/camel/language/mvel/MvelLanguageConfigurer.java
b/components/camel-mvel/src/generated/java/org/apache/camel/language/mvel/MvelLanguageConfigurer.java
new file mode 100644
index 000000000000..437f5de6a1ff
--- /dev/null
+++
b/components/camel-mvel/src/generated/java/org/apache/camel/language/mvel/MvelLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.mvel;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class MvelLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-mvel/src/generated/resources/META-INF/services/org/apache/camel/configurer/mvel-language
b/components/camel-mvel/src/generated/resources/META-INF/services/org/apache/camel/configurer/mvel-language
new file mode 100644
index 000000000000..31b063f2cc98
--- /dev/null
+++
b/components/camel-mvel/src/generated/resources/META-INF/services/org/apache/camel/configurer/mvel-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.mvel.MvelLanguageConfigurer
diff --git
a/components/camel-ognl/src/generated/java/org/apache/camel/language/ognl/OgnlLanguageConfigurer.java
b/components/camel-ognl/src/generated/java/org/apache/camel/language/ognl/OgnlLanguageConfigurer.java
new file mode 100644
index 000000000000..9664b32a9fd3
--- /dev/null
+++
b/components/camel-ognl/src/generated/java/org/apache/camel/language/ognl/OgnlLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.ognl;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class OgnlLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-ognl/src/generated/resources/META-INF/services/org/apache/camel/configurer/ognl-language
b/components/camel-ognl/src/generated/resources/META-INF/services/org/apache/camel/configurer/ognl-language
new file mode 100644
index 000000000000..d10b6c55f582
--- /dev/null
+++
b/components/camel-ognl/src/generated/resources/META-INF/services/org/apache/camel/configurer/ognl-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.ognl.OgnlLanguageConfigurer
diff --git
a/components/camel-openfeature/src/generated/java/org/apache/camel/language/openfeature/OpenFeatureLanguageConfigurer.java
b/components/camel-openfeature/src/generated/java/org/apache/camel/language/openfeature/OpenFeatureLanguageConfigurer.java
new file mode 100644
index 000000000000..40c8aa78cf7b
--- /dev/null
+++
b/components/camel-openfeature/src/generated/java/org/apache/camel/language/openfeature/OpenFeatureLanguageConfigurer.java
@@ -0,0 +1,60 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.openfeature;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class OpenFeatureLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("Endpoint", java.lang.String.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ OpenFeatureLanguage target = (OpenFeatureLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "endpoint": target.setEndpoint(property(camelContext,
java.lang.String.class, value)); return true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "endpoint": return java.lang.String.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ OpenFeatureLanguage target = (OpenFeatureLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "endpoint": return target.getEndpoint();
+ default: return null;
+ }
+ }
+}
+
diff --git
a/components/camel-openfeature/src/generated/resources/META-INF/services/org/apache/camel/configurer/openfeature-language
b/components/camel-openfeature/src/generated/resources/META-INF/services/org/apache/camel/configurer/openfeature-language
new file mode 100644
index 000000000000..e4e1bde6f81d
--- /dev/null
+++
b/components/camel-openfeature/src/generated/resources/META-INF/services/org/apache/camel/configurer/openfeature-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.openfeature.OpenFeatureLanguageConfigurer
diff --git
a/components/camel-python/src/generated/java/org/apache/camel/language/python/PythonLanguageConfigurer.java
b/components/camel-python/src/generated/java/org/apache/camel/language/python/PythonLanguageConfigurer.java
new file mode 100644
index 000000000000..ee6d3d5153b4
--- /dev/null
+++
b/components/camel-python/src/generated/java/org/apache/camel/language/python/PythonLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.python;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class PythonLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-python/src/generated/resources/META-INF/services/org/apache/camel/configurer/python-language
b/components/camel-python/src/generated/resources/META-INF/services/org/apache/camel/configurer/python-language
new file mode 100644
index 000000000000..74711af82144
--- /dev/null
+++
b/components/camel-python/src/generated/resources/META-INF/services/org/apache/camel/configurer/python-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.python.PythonLanguageConfigurer
diff --git
a/components/camel-python3/src/generated/java/org/apache/camel/language/python3/Python3LanguageConfigurer.java
b/components/camel-python3/src/generated/java/org/apache/camel/language/python3/Python3LanguageConfigurer.java
new file mode 100644
index 000000000000..c77f9887ebbe
--- /dev/null
+++
b/components/camel-python3/src/generated/java/org/apache/camel/language/python3/Python3LanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.python3;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class Python3LanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-python3/src/generated/resources/META-INF/services/org/apache/camel/configurer/python3-language
b/components/camel-python3/src/generated/resources/META-INF/services/org/apache/camel/configurer/python3-language
new file mode 100644
index 000000000000..77686f3d1fdb
--- /dev/null
+++
b/components/camel-python3/src/generated/resources/META-INF/services/org/apache/camel/configurer/python3-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.python3.Python3LanguageConfigurer
diff --git
a/components/camel-quickjs/src/generated/java/org/apache/camel/language/quickjs/QuickjsLanguageConfigurer.java
b/components/camel-quickjs/src/generated/java/org/apache/camel/language/quickjs/QuickjsLanguageConfigurer.java
new file mode 100644
index 000000000000..ae17718262e4
--- /dev/null
+++
b/components/camel-quickjs/src/generated/java/org/apache/camel/language/quickjs/QuickjsLanguageConfigurer.java
@@ -0,0 +1,70 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.quickjs;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class QuickjsLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("EngineMaxEvaluations", int.class);
+ map.put("EngineMaxMemory", long.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ QuickjsLanguage target = (QuickjsLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "enginemaxevaluations":
+ case "engineMaxEvaluations":
target.setEngineMaxEvaluations(property(camelContext, int.class, value));
return true;
+ case "enginemaxmemory":
+ case "engineMaxMemory":
target.setEngineMaxMemory(property(camelContext, long.class, value)); return
true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "enginemaxevaluations":
+ case "engineMaxEvaluations": return int.class;
+ case "enginemaxmemory":
+ case "engineMaxMemory": return long.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ QuickjsLanguage target = (QuickjsLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "enginemaxevaluations":
+ case "engineMaxEvaluations": return target.getEngineMaxEvaluations();
+ case "enginemaxmemory":
+ case "engineMaxMemory": return target.getEngineMaxMemory();
+ default: return null;
+ }
+ }
+}
+
diff --git
a/components/camel-quickjs/src/generated/resources/META-INF/services/org/apache/camel/configurer/quickjs-language
b/components/camel-quickjs/src/generated/resources/META-INF/services/org/apache/camel/configurer/quickjs-language
new file mode 100644
index 000000000000..428e0c4ad443
--- /dev/null
+++
b/components/camel-quickjs/src/generated/resources/META-INF/services/org/apache/camel/configurer/quickjs-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.quickjs.QuickjsLanguageConfigurer
diff --git
a/components/camel-saxon/src/generated/java/org/apache/camel/language/xquery/XQueryLanguageConfigurer.java
b/components/camel-saxon/src/generated/java/org/apache/camel/language/xquery/XQueryLanguageConfigurer.java
new file mode 100644
index 000000000000..fcdf6b7b5e03
--- /dev/null
+++
b/components/camel-saxon/src/generated/java/org/apache/camel/language/xquery/XQueryLanguageConfigurer.java
@@ -0,0 +1,60 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.xquery;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class XQueryLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("Configuration", net.sf.saxon.Configuration.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ XQueryLanguage target = (XQueryLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "configuration": target.setConfiguration(property(camelContext,
net.sf.saxon.Configuration.class, value)); return true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "configuration": return net.sf.saxon.Configuration.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ XQueryLanguage target = (XQueryLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "configuration": return target.getConfiguration();
+ default: return null;
+ }
+ }
+}
+
diff --git
a/components/camel-saxon/src/generated/resources/META-INF/services/org/apache/camel/configurer/xquery-language
b/components/camel-saxon/src/generated/resources/META-INF/services/org/apache/camel/configurer/xquery-language
new file mode 100644
index 000000000000..52ea308d23c5
--- /dev/null
+++
b/components/camel-saxon/src/generated/resources/META-INF/services/org/apache/camel/configurer/xquery-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.xquery.XQueryLanguageConfigurer
diff --git
a/components/camel-spring-parent/camel-spring/src/generated/java/org/apache/camel/language/spel/SpelLanguageConfigurer.java
b/components/camel-spring-parent/camel-spring/src/generated/java/org/apache/camel/language/spel/SpelLanguageConfigurer.java
new file mode 100644
index 000000000000..dff939459078
--- /dev/null
+++
b/components/camel-spring-parent/camel-spring/src/generated/java/org/apache/camel/language/spel/SpelLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.spel;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class SpelLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-spring-parent/camel-spring/src/generated/resources/META-INF/services/org/apache/camel/configurer/spel-language
b/components/camel-spring-parent/camel-spring/src/generated/resources/META-INF/services/org/apache/camel/configurer/spel-language
new file mode 100644
index 000000000000..7ca14a4830e1
--- /dev/null
+++
b/components/camel-spring-parent/camel-spring/src/generated/resources/META-INF/services/org/apache/camel/configurer/spel-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.spel.SpelLanguageConfigurer
diff --git
a/components/camel-stax/src/generated/java/org/apache/camel/language/xtokenizer/XMLTokenizeLanguageConfigurer.java
b/components/camel-stax/src/generated/java/org/apache/camel/language/xtokenizer/XMLTokenizeLanguageConfigurer.java
new file mode 100644
index 000000000000..5758f0b1cb39
--- /dev/null
+++
b/components/camel-stax/src/generated/java/org/apache/camel/language/xtokenizer/XMLTokenizeLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.xtokenizer;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class XMLTokenizeLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/components/camel-stax/src/generated/resources/META-INF/services/org/apache/camel/configurer/xtokenize-language
b/components/camel-stax/src/generated/resources/META-INF/services/org/apache/camel/configurer/xtokenize-language
new file mode 100644
index 000000000000..7a278ee59983
--- /dev/null
+++
b/components/camel-stax/src/generated/resources/META-INF/services/org/apache/camel/configurer/xtokenize-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.xtokenizer.XMLTokenizeLanguageConfigurer
diff --git
a/components/camel-xpath/src/generated/java/org/apache/camel/language/xpath/XPathLanguageConfigurer.java
b/components/camel-xpath/src/generated/java/org/apache/camel/language/xpath/XPathLanguageConfigurer.java
new file mode 100644
index 000000000000..b74fcd6f76fc
--- /dev/null
+++
b/components/camel-xpath/src/generated/java/org/apache/camel/language/xpath/XPathLanguageConfigurer.java
@@ -0,0 +1,109 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.xpath;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class XPathLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("DocumentType", java.lang.Class.class);
+ map.put("LogNamespaces", java.lang.Boolean.class);
+ map.put("ObjectModelUri", java.lang.String.class);
+ map.put("PreCompile", java.lang.Boolean.class);
+ map.put("ResultQName", javax.xml.namespace.QName.class);
+ map.put("Saxon", java.lang.Boolean.class);
+ map.put("ThreadSafety", java.lang.Boolean.class);
+ map.put("XpathFactory", javax.xml.xpath.XPathFactory.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ XPathLanguage target = (XPathLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "documenttype":
+ case "documentType": target.setDocumentType(property(camelContext,
java.lang.Class.class, value)); return true;
+ case "lognamespaces":
+ case "logNamespaces": target.setLogNamespaces(property(camelContext,
java.lang.Boolean.class, value)); return true;
+ case "objectmodeluri":
+ case "objectModelUri": target.setObjectModelUri(property(camelContext,
java.lang.String.class, value)); return true;
+ case "precompile":
+ case "preCompile": target.setPreCompile(property(camelContext,
java.lang.Boolean.class, value)); return true;
+ case "resultqname":
+ case "resultQName": target.setResultQName(property(camelContext,
javax.xml.namespace.QName.class, value)); return true;
+ case "saxon": target.setSaxon(property(camelContext,
java.lang.Boolean.class, value)); return true;
+ case "threadsafety":
+ case "threadSafety": target.setThreadSafety(property(camelContext,
java.lang.Boolean.class, value)); return true;
+ case "xpathfactory":
+ case "xpathFactory": target.setXpathFactory(property(camelContext,
javax.xml.xpath.XPathFactory.class, value)); return true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "documenttype":
+ case "documentType": return java.lang.Class.class;
+ case "lognamespaces":
+ case "logNamespaces": return java.lang.Boolean.class;
+ case "objectmodeluri":
+ case "objectModelUri": return java.lang.String.class;
+ case "precompile":
+ case "preCompile": return java.lang.Boolean.class;
+ case "resultqname":
+ case "resultQName": return javax.xml.namespace.QName.class;
+ case "saxon": return java.lang.Boolean.class;
+ case "threadsafety":
+ case "threadSafety": return java.lang.Boolean.class;
+ case "xpathfactory":
+ case "xpathFactory": return javax.xml.xpath.XPathFactory.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ XPathLanguage target = (XPathLanguage) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "documenttype":
+ case "documentType": return target.getDocumentType();
+ case "lognamespaces":
+ case "logNamespaces": return target.getLogNamespaces();
+ case "objectmodeluri":
+ case "objectModelUri": return target.getObjectModelUri();
+ case "precompile":
+ case "preCompile": return target.getPreCompile();
+ case "resultqname":
+ case "resultQName": return target.getResultQName();
+ case "saxon": return target.getSaxon();
+ case "threadsafety":
+ case "threadSafety": return target.getThreadSafety();
+ case "xpathfactory":
+ case "xpathFactory": return target.getXpathFactory();
+ default: return null;
+ }
+ }
+}
+
diff --git
a/components/camel-xpath/src/generated/resources/META-INF/services/org/apache/camel/configurer/xpath-language
b/components/camel-xpath/src/generated/resources/META-INF/services/org/apache/camel/configurer/xpath-language
new file mode 100644
index 000000000000..f67708fa6b1a
--- /dev/null
+++
b/components/camel-xpath/src/generated/resources/META-INF/services/org/apache/camel/configurer/xpath-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.xpath.XPathLanguageConfigurer
diff --git
a/core/camel-core-languages/src/generated/java/org/apache/camel/language/constant/ConstantLanguageConfigurer.java
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/constant/ConstantLanguageConfigurer.java
new file mode 100644
index 000000000000..d97e17620528
--- /dev/null
+++
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/constant/ConstantLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.constant;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class ConstantLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/core/camel-core-languages/src/generated/java/org/apache/camel/language/header/HeaderLanguageConfigurer.java
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/header/HeaderLanguageConfigurer.java
new file mode 100644
index 000000000000..8bd512013d1b
--- /dev/null
+++
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/header/HeaderLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.header;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class HeaderLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/core/camel-core-languages/src/generated/java/org/apache/camel/language/property/ExchangePropertyLanguageConfigurer.java
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/property/ExchangePropertyLanguageConfigurer.java
new file mode 100644
index 000000000000..346ae4cd82ca
--- /dev/null
+++
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/property/ExchangePropertyLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.property;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class ExchangePropertyLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/core/camel-core-languages/src/generated/java/org/apache/camel/language/ref/RefLanguageConfigurer.java
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/ref/RefLanguageConfigurer.java
new file mode 100644
index 000000000000..eff26aadf821
--- /dev/null
+++
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/ref/RefLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.ref;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class RefLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/core/camel-core-languages/src/generated/java/org/apache/camel/language/simple/FileLanguageConfigurer.java
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/simple/FileLanguageConfigurer.java
new file mode 100644
index 000000000000..4faa0cab7999
--- /dev/null
+++
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/simple/FileLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.simple;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class FileLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/core/camel-core-languages/src/generated/java/org/apache/camel/language/simple/SimpleLanguageConfigurer.java
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/simple/SimpleLanguageConfigurer.java
new file mode 100644
index 000000000000..b3c156d9a80d
--- /dev/null
+++
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/simple/SimpleLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.simple;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class SimpleLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/core/camel-core-languages/src/generated/java/org/apache/camel/language/tokenizer/TokenizeLanguageConfigurer.java
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/tokenizer/TokenizeLanguageConfigurer.java
new file mode 100644
index 000000000000..31c81b262030
--- /dev/null
+++
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/tokenizer/TokenizeLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.tokenizer;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class TokenizeLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/core/camel-core-languages/src/generated/java/org/apache/camel/language/variable/VariableLanguageConfigurer.java
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/variable/VariableLanguageConfigurer.java
new file mode 100644
index 000000000000..d8effe195b42
--- /dev/null
+++
b/core/camel-core-languages/src/generated/java/org/apache/camel/language/variable/VariableLanguageConfigurer.java
@@ -0,0 +1,48 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.language.variable;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageLanguageMojo")
+@SuppressWarnings("unchecked")
+public class VariableLanguageConfigurer extends
org.apache.camel.support.component.PropertyConfigurerSupport implements
GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ return false;
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ return null;
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ return null;
+ }
+}
+
diff --git
a/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/constant-language
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/constant-language
new file mode 100644
index 000000000000..d8576930cf60
--- /dev/null
+++
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/constant-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.constant.ConstantLanguageConfigurer
diff --git
a/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/exchangeProperty-language
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/exchangeProperty-language
new file mode 100644
index 000000000000..809171b96e6e
--- /dev/null
+++
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/exchangeProperty-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.property.ExchangePropertyLanguageConfigurer
diff --git
a/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/file-language
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/file-language
new file mode 100644
index 000000000000..311677f0ec61
--- /dev/null
+++
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/file-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.simple.FileLanguageConfigurer
diff --git
a/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/header-language
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/header-language
new file mode 100644
index 000000000000..5e5c152039e3
--- /dev/null
+++
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/header-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.header.HeaderLanguageConfigurer
diff --git
a/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/ref-language
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/ref-language
new file mode 100644
index 000000000000..2140bd7b072c
--- /dev/null
+++
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/ref-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.ref.RefLanguageConfigurer
diff --git
a/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/simple-language
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/simple-language
new file mode 100644
index 000000000000..6b2c0ce553ec
--- /dev/null
+++
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/simple-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.simple.SimpleLanguageConfigurer
diff --git
a/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/tokenize-language
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/tokenize-language
new file mode 100644
index 000000000000..189bb64abdf9
--- /dev/null
+++
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/tokenize-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.tokenizer.TokenizeLanguageConfigurer
diff --git
a/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/variable-language
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/variable-language
new file mode 100644
index 000000000000..3a9c4136ba9c
--- /dev/null
+++
b/core/camel-core-languages/src/generated/resources/META-INF/services/org/apache/camel/configurer/variable-language
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.language.variable.VariableLanguageConfigurer
diff --git
a/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
b/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
index 09f1f0063a47..7fc74449180a 100644
--- a/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
+++ b/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
@@ -3263,7 +3263,8 @@ public abstract class BaseMainSupport extends BaseService
{
entry.getKey().getOptionPrefix(),
failFast,
true,
- autoConfiguredProperties);
+ autoConfiguredProperties,
+ MainHelper.configurerByName(camelContext,
entry.getKey().getOptionPrefix(), instance));
}
// log which options was not set
diff --git
a/core/camel-main/src/main/java/org/apache/camel/main/MainHelper.java
b/core/camel-main/src/main/java/org/apache/camel/main/MainHelper.java
index 524e8b0281b4..e26a00a1185f 100644
--- a/core/camel-main/src/main/java/org/apache/camel/main/MainHelper.java
+++ b/core/camel-main/src/main/java/org/apache/camel/main/MainHelper.java
@@ -307,14 +307,25 @@ public final class MainHelper {
CamelContext context, Object target, OrderedLocationProperties
properties,
String optionPrefix, boolean failIfNotSet, boolean ignoreCase,
OrderedLocationProperties autoConfiguredProperties) {
+ return setPropertiesOnTarget(context, target, properties,
optionPrefix, failIfNotSet, ignoreCase,
+ autoConfiguredProperties, null);
+ }
+
+ /**
+ * Sets the properties on the target, with the given configurer, or when
null, the configurer of the target found by
+ * its type.
+ */
+ public static boolean setPropertiesOnTarget(
+ CamelContext context, Object target, OrderedLocationProperties
properties,
+ String optionPrefix, boolean failIfNotSet, boolean ignoreCase,
+ OrderedLocationProperties autoConfiguredProperties,
PropertyConfigurer configurer) {
ObjectHelper.notNull(context, "context");
ObjectHelper.notNull(target, "target");
ObjectHelper.notNull(properties, "properties");
boolean rc = false;
- PropertyConfigurer configurer = null;
- if (target instanceof Component component) {
+ if (configurer == null && target instanceof Component component) {
// the component needs to be initialized to have the configurer
ready
ServiceHelper.initService(target);
configurer = component.getComponentPropertyConfigurer();
@@ -406,6 +417,37 @@ public final class MainHelper {
return rc;
}
+ /**
+ * The configurer of the data format or language that the option prefix,
such as camel.dataformat.jacksonXml. or
+ * camel.language.jsonpath., is about. They are found by their name
(jacksonXml-dataformat, jsonpath-language), as
+ * their name cannot always be told from their type.
+ *
+ * @param target the data format or language
+ * @return the configurer, or {@code null} for any other prefix,
when there is none, or when it is not the
+ * configurer of the type of the target (such as a custom
bean with the name of a data format)
+ */
+ public static PropertyConfigurer configurerByName(CamelContext context,
String optionPrefix, Object target) {
+ String kind;
+ if (optionPrefix.startsWith("camel.dataformat.")) {
+ kind = "dataformat";
+ } else if (optionPrefix.startsWith("camel.language.")) {
+ kind = "language";
+ } else {
+ return null;
+ }
+ String name = StringHelper.between(optionPrefix, "camel." + kind +
".", ".");
+ if (name == null || name.isEmpty()) {
+ return null;
+ }
+ PropertyConfigurer configurer
+ =
PluginHelper.getConfigurerResolver(context).resolvePropertyConfigurer(name +
"-" + kind, context);
+ // the configurer that PackageDataFormatMojo or PackageLanguageMojo
generates for a type is named after it
+ if (configurer != null &&
configurer.getClass().getName().equals(target.getClass().getName() +
"Configurer")) {
+ return configurer;
+ }
+ return null;
+ }
+
public static void computeProperties(
String keyPrefix, String key, OrderedLocationProperties prop,
Map<PropertyOptionKey, OrderedLocationProperties> properties,
diff --git
a/core/camel-main/src/test/java/org/apache/camel/main/MainConfigurerByNameTest.java
b/core/camel-main/src/test/java/org/apache/camel/main/MainConfigurerByNameTest.java
new file mode 100644
index 000000000000..e69b61e1b7fe
--- /dev/null
+++
b/core/camel-main/src/test/java/org/apache/camel/main/MainConfigurerByNameTest.java
@@ -0,0 +1,152 @@
+/*
+ * 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.main;
+
+import java.io.InputStream;
+import java.io.OutputStream;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.Exchange;
+import org.apache.camel.Expression;
+import org.apache.camel.Predicate;
+import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.support.LanguageSupport;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+import org.apache.camel.support.service.ServiceSupport;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+/**
+ * camel.language.<name>.<option> and camel.dataformat.<name>.<option> are set
with the configurer found by the name
+ * (<name>-language, <name>-dataformat), not by reflection. The options of
these test types have no setter, so only
+ * their configurer can set them.
+ */
+public class MainConfigurerByNameTest {
+
+ @Test
+ public void testLanguageAndDataFormat() {
+ Main main = new Main();
+ main.bind("mylang", new MyLanguage());
+ main.bind("mydf", new MyDataFormat());
+ main.addProperty("camel.language.mylang.level", "3");
+ main.addProperty("camel.dataformat.mydf.level", "5");
+ main.start();
+ try {
+ CamelContext context = main.getCamelContext();
+ assertEquals(3, ((MyLanguage)
context.resolveLanguage("mylang")).getLevel());
+ assertEquals(5, ((MyDataFormat)
context.resolveDataFormat("mydf")).getLevel());
+ } finally {
+ main.stop();
+ }
+ }
+
+ @Test
+ public void testConfigurerOfAnotherType() {
+ // a bean with the name of the language whose type is not the one of
the configurer: set by reflection
+ Main main = new Main();
+ main.bind("otherlang", new OtherLanguage());
+ main.addProperty("camel.language.otherlang.level", "7");
+ main.start();
+ try {
+ assertEquals(7, ((OtherLanguage)
main.getCamelContext().resolveLanguage("otherlang")).getLevel());
+ } finally {
+ main.stop();
+ }
+ }
+
+ public static class MyLanguage extends LanguageSupport {
+ private int level;
+
+ public int getLevel() {
+ return level;
+ }
+
+ @Override
+ public Predicate createPredicate(String expression) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public Expression createExpression(String expression) {
+ throw new UnsupportedOperationException();
+ }
+ }
+
+ public static class MyLanguageConfigurer extends PropertyConfigurerSupport
implements GeneratedPropertyConfigurer {
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ if ("level".equalsIgnoreCase(name)) {
+ ((MyLanguage) obj).level = property(camelContext, int.class,
value);
+ return true;
+ }
+ return false;
+ }
+ }
+
+ public static class OtherLanguage extends LanguageSupport {
+ private int level;
+
+ public int getLevel() {
+ return level;
+ }
+
+ public void setLevel(int level) {
+ this.level = level;
+ }
+
+ @Override
+ public Predicate createPredicate(String expression) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public Expression createExpression(String expression) {
+ throw new UnsupportedOperationException();
+ }
+ }
+
+ public static class MyDataFormat extends ServiceSupport implements
DataFormat {
+ private int level;
+
+ public int getLevel() {
+ return level;
+ }
+
+ @Override
+ public void marshal(Exchange exchange, Object graph, OutputStream
stream) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public Object unmarshal(Exchange exchange, InputStream stream) {
+ throw new UnsupportedOperationException();
+ }
+ }
+
+ public static class MyDataFormatConfigurer extends
PropertyConfigurerSupport implements GeneratedPropertyConfigurer {
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String
name, Object value, boolean ignoreCase) {
+ if ("level".equalsIgnoreCase(name)) {
+ ((MyDataFormat) obj).level = property(camelContext, int.class,
value);
+ return true;
+ }
+ return false;
+ }
+ }
+}
diff --git
a/core/camel-main/src/test/resources/META-INF/services/org/apache/camel/configurer/mydf-dataformat
b/core/camel-main/src/test/resources/META-INF/services/org/apache/camel/configurer/mydf-dataformat
new file mode 100644
index 000000000000..d2310d4e7eb0
--- /dev/null
+++
b/core/camel-main/src/test/resources/META-INF/services/org/apache/camel/configurer/mydf-dataformat
@@ -0,0 +1 @@
+class=org.apache.camel.main.MainConfigurerByNameTest$MyDataFormatConfigurer
diff --git
a/core/camel-main/src/test/resources/META-INF/services/org/apache/camel/configurer/mylang-language
b/core/camel-main/src/test/resources/META-INF/services/org/apache/camel/configurer/mylang-language
new file mode 100644
index 000000000000..6d6377a78313
--- /dev/null
+++
b/core/camel-main/src/test/resources/META-INF/services/org/apache/camel/configurer/mylang-language
@@ -0,0 +1 @@
+class=org.apache.camel.main.MainConfigurerByNameTest$MyLanguageConfigurer
diff --git
a/core/camel-main/src/test/resources/META-INF/services/org/apache/camel/configurer/otherlang-language
b/core/camel-main/src/test/resources/META-INF/services/org/apache/camel/configurer/otherlang-language
new file mode 100644
index 000000000000..6d6377a78313
--- /dev/null
+++
b/core/camel-main/src/test/resources/META-INF/services/org/apache/camel/configurer/otherlang-language
@@ -0,0 +1 @@
+class=org.apache.camel.main.MainConfigurerByNameTest$MyLanguageConfigurer
diff --git
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/AbstractGeneratorMojo.java
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/AbstractGeneratorMojo.java
index 5c71cce5f659..c6aacb5ccbd2 100644
---
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/AbstractGeneratorMojo.java
+++
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/AbstractGeneratorMojo.java
@@ -26,7 +26,9 @@ import java.nio.file.attribute.BasicFileAttributes;
import java.time.Duration;
import java.util.Collection;
import java.util.Collections;
+import java.util.Comparator;
import java.util.Date;
+import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.Map;
@@ -295,4 +297,35 @@ public abstract class AbstractGeneratorMojo extends
AbstractMojo {
.filter(o -> found.add(o.getConfigurationClass()))
.collect(Collectors.toCollection(LinkedHashSet::new));
}
+
+ /**
+ * Generates the source of the property configurer of a data format or
language, from its options.
+ */
+ public String generatePropertyConfigurer(
+ String pn, String cn, String pfqn, String en, boolean hasSuper,
+ Collection<? extends BaseOptionModel> options)
+ throws IOException {
+
+ options =
options.stream().sorted(Comparator.comparing(BaseOptionModel::getName)).toList();
+
+ Map<String, Object> ctx = new HashMap<>();
+ ctx.put("generatorClass", getClass().getName());
+ ctx.put("package", pn);
+ ctx.put("className", cn);
+ ctx.put("type", en);
+ ctx.put("pfqn", pfqn);
+ ctx.put("psn", pfqn);
+ ctx.put("hasSuper", hasSuper);
+ ctx.put("component", false);
+ ctx.put("extended", true);
+ ctx.put("bootstrap", false);
+ ctx.put("options", options);
+ ctx.put("model", null);
+ ctx.put("mojo", this);
+ return velocity("velocity/property-configurer.vm", ctx);
+ }
+
+ public static String generateMetaInfConfigurer(String fqn) {
+ return "# " + GENERATED_MSG + NL + "class=" + fqn + NL;
+ }
}
diff --git
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
index 66377f9c3cf0..ba99d781e47d 100644
---
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
+++
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
@@ -21,9 +21,7 @@ import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.ArrayList;
-import java.util.Collection;
import java.util.Collections;
-import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -37,7 +35,6 @@ import javax.inject.Inject;
import org.apache.camel.maven.packaging.generics.ClassUtil;
import org.apache.camel.spi.BodyTypes;
import org.apache.camel.spi.Metadata;
-import org.apache.camel.tooling.model.BaseOptionModel;
import org.apache.camel.tooling.model.DataFormatModel;
import org.apache.camel.tooling.model.DataFormatModel.DataFormatOptionModel;
import org.apache.camel.tooling.model.EipModel;
@@ -650,32 +647,4 @@ public class PackageDataFormatMojo extends
AbstractGeneratorMojo {
}
}
- public String generatePropertyConfigurer(
- String pn, String cn, String pfqn, String en, boolean hasSuper,
- Collection<DataFormatOptionModel> options)
- throws IOException {
-
- options =
options.stream().sorted(Comparator.comparing(BaseOptionModel::getName)).toList();
-
- Map<String, Object> ctx = new HashMap<>();
- ctx.put("generatorClass", getClass().getName());
- ctx.put("package", pn);
- ctx.put("className", cn);
- ctx.put("type", en);
- ctx.put("pfqn", pfqn);
- ctx.put("psn", pfqn);
- ctx.put("hasSuper", hasSuper);
- ctx.put("component", false);
- ctx.put("extended", true);
- ctx.put("bootstrap", false);
- ctx.put("options", options);
- ctx.put("model", null);
- ctx.put("mojo", this);
- return velocity("velocity/property-configurer.vm", ctx);
- }
-
- public static String generateMetaInfConfigurer(String fqn) {
- return "# " + GENERATED_MSG + NL + "class=" + fqn + NL;
- }
-
}
diff --git
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
index 5896f34c82ad..8edaa6b3c182 100644
---
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
+++
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
@@ -72,6 +72,18 @@ public class PackageLanguageMojo extends
AbstractGeneratorMojo {
@Parameter(defaultValue = "${project.basedir}/src/generated/resources")
protected File schemaOutDir;
+ /**
+ * The output directory for the generated language configurer java classes
+ */
+ @Parameter(defaultValue = "${project.basedir}/src/generated/java")
+ protected File configurerSourceOutDir;
+
+ /**
+ * The output directory for the generated language configurer resources
+ */
+ @Parameter(defaultValue = "${project.basedir}/src/generated/resources")
+ protected File configurerResourceOutDir;
+
/**
* The project build directory
*/
@@ -81,6 +93,7 @@ public class PackageLanguageMojo extends
AbstractGeneratorMojo {
@Inject
public PackageLanguageMojo(Log log, MavenProject project,
MavenProjectHelper projectHelper,
File buildDir, File languageOutDir, File
schemaOutDir,
+ File configurerSourceOutDir, File
configurerResourceOutDir,
BuildContext buildContext) {
super(projectHelper, buildContext);
@@ -89,6 +102,8 @@ public class PackageLanguageMojo extends
AbstractGeneratorMojo {
this.buildDir = buildDir;
this.languageOutDir = languageOutDir;
this.schemaOutDir = schemaOutDir;
+ this.configurerSourceOutDir = configurerSourceOutDir;
+ this.configurerResourceOutDir = configurerResourceOutDir;
}
/**
@@ -187,6 +202,18 @@ public class PackageLanguageMojo extends
AbstractGeneratorMojo {
if (log.isDebugEnabled()) {
log.debug("Generated " + out + " containing JSON
schema for " + name + " language");
}
+
+ // the configurer that sets the options of the
language (camel.language.<name>.<option>)
+ // without reflection, found by its name as the
configurer of a data format is
+ String cn = javaType.getSimpleName() + "Configurer";
+ String pn = javaType.getPackageName();
+ updateResource(configurerSourceOutDir.toPath(),
pn.replace('.', '/') + "/" + cn + ".java",
+ generatePropertyConfigurer(pn, cn,
+
"org.apache.camel.support.component.PropertyConfigurerSupport",
+ javaType.getSimpleName(), false,
languageModel.getLanguageOptions()));
+ updateResource(configurerResourceOutDir.toPath(),
+
"META-INF/services/org/apache/camel/configurer/" + name + "-language",
+ generateMetaInfConfigurer(pn + "." + cn));
}
} else {
throw new MojoExecutionException(
diff --git
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareComponentMojo.java
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareComponentMojo.java
index e7e22eb3015e..8ecd071cfd4b 100644
---
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareComponentMojo.java
+++
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PrepareComponentMojo.java
@@ -150,7 +150,7 @@ public class PrepareComponentMojo extends
AbstractGeneratorMojo {
configurerResourceOutDir, schemaOutDir,
buildContext).prepareDataFormat();
count += new PackageLanguageMojo(
getLog(), project, projectHelper, buildDir, languageOutDir,
- schemaOutDir, buildContext).prepareLanguage();
+ schemaOutDir, configurerSourceOutDir,
configurerResourceOutDir, buildContext).prepareLanguage();
if (count == 0 && new File(project.getBasedir(),
"src/main/java").isDirectory()) {
// okay its not any of the above then its other
new PackageOtherMojo(
diff --git
a/tooling/maven/camel-package-maven-plugin/src/test/java/org/apache/camel/maven/packaging/PackageLanguageMojoTest.java
b/tooling/maven/camel-package-maven-plugin/src/test/java/org/apache/camel/maven/packaging/PackageLanguageMojoTest.java
index 3a9bfdc52649..25262f3c72b2 100644
---
a/tooling/maven/camel-package-maven-plugin/src/test/java/org/apache/camel/maven/packaging/PackageLanguageMojoTest.java
+++
b/tooling/maven/camel-package-maven-plugin/src/test/java/org/apache/camel/maven/packaging/PackageLanguageMojoTest.java
@@ -131,18 +131,45 @@ class PackageLanguageMojoTest {
assertThrows(IllegalArgumentException.class, () ->
PackageLanguageMojo.languageOptions(UndescribedLanguage.class));
}
+ @Test
+ void theConfigurerSetsAndGetsTheOptions() throws Exception {
+ String source =
mojo(OptionsLanguage.class).generatePropertyConfigurer("org.example",
"OptionsLanguageConfigurer",
+
"org.apache.camel.support.component.PropertyConfigurerSupport",
"OptionsLanguage", false,
+ PackageLanguageMojo.languageOptions(OptionsLanguage.class));
+ assertTrue(source.contains("public class OptionsLanguageConfigurer
extends"), source);
+ assertTrue(
+ source.contains("case \"memory\":
target.setMemory(property(camelContext, long.class, value)); return true;"),
+ source);
+ assertTrue(source.contains("case \"memory\": return
target.getMemory();"), source);
+ assertTrue(source.contains("case \"base\":
target.setBase(property(camelContext, java.lang.String.class, value));"),
+ source);
+ }
+
+ @Test
+ void aLanguageWithoutOptionsHasAnEmptyConfigurer() throws Exception {
+ String source =
mojo(GenericLanguage.class).generatePropertyConfigurer("org.example",
"GenericLanguageConfigurer",
+
"org.apache.camel.support.component.PropertyConfigurerSupport",
"GenericLanguage", false,
+ PackageLanguageMojo.languageOptions(GenericLanguage.class));
+ assertTrue(source.contains("public class GenericLanguageConfigurer
extends"), source);
+ assertFalse(source.contains("case \""), source);
+ }
+
private LanguageModel extract(Class<?> type) {
+ PackageLanguageMojo mojo = mojo(type);
+ return mojo.extractLanguageModel(mojo.project, GENERIC_MODEL,
"custom", type);
+ }
+
+ private PackageLanguageMojo mojo(Class<?> type) {
MavenProject project = new MavenProject();
project.setGroupId("org.apache.camel");
project.setArtifactId("camel-custom");
project.setVersion("4.24.0-SNAPSHOT");
- PackageLanguageMojo mojo = new PackageLanguageMojo(new
SystemStreamLog(), project, null, null, null, null, null) {
+ return new PackageLanguageMojo(new SystemStreamLog(), project, null,
null, null, null, null, null, null) {
@Override
protected Class<?> loadClass(String name) {
return type;
}
};
- return mojo.extractLanguageModel(project, GENERIC_MODEL, "custom",
type);
}
@Language(value = "custom", modelName = "language")