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-spring-boot.git
The following commit(s) were added to refs/heads/main by this push:
new a41f8d0e910 Regen
a41f8d0e910 is described below
commit a41f8d0e910655ff7b20899b6e65fa33acdb8fe2
Author: Claus Ibsen <[email protected]>
AuthorDate: Sun Aug 24 09:58:10 2025 +0200
Regen
---
.../springboot/catalog/components/graphql.json | 12 +++--
.../springboot/catalog/dataformats/groovyXml.json | 5 +-
.../src/main/docs/graphql.json | 6 +++
.../GraphqlComponentAutoConfiguration.java | 2 +-
.../springboot/GraphqlComponentConfiguration.java | 16 ++++++
.../springboot/GraphqlComponentConverter.java | 63 ++++++++++++++++++++++
...rk.boot.autoconfigure.AutoConfiguration.imports | 3 +-
.../src/main/docs/groovy-xml.json | 7 +++
.../GroovyXmlDataFormatConfiguration.java | 16 +++++-
9 files changed, 120 insertions(+), 10 deletions(-)
diff --git
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/graphql.json
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/graphql.json
index bd0bed3fa49..f8de2f806fa 100644
---
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/graphql.json
+++
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/graphql.json
@@ -25,7 +25,8 @@
},
"componentProperties": {
"lazyStartProducer": { "index": 0, "kind": "property", "displayName":
"Lazy Start Producer", "group": "producer", "label": "producer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether the producer should be started lazy (on the first message). By
starting lazy you can use this to allow CamelContext and routes to startup in
situations where a producer may otherwise fail [...]
- "autowiredEnabled": { "index": 1, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching t [...]
+ "autowiredEnabled": { "index": 1, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching t [...]
+ "httpClient": { "index": 2, "kind": "property", "displayName": "Http
Client", "group": "advanced", "label": "advanced", "required": false, "type":
"object", "javaType": "org.apache.hc.client5.http.classic.HttpClient",
"deprecated": false, "autowired": false, "secret": false, "description": "To
use a custom pre-existing Http Client. Beware that when using this, then other
configurations such as proxy, access token, is not applied and all this must be
pre-configured on the Http Client." }
},
"properties": {
"httpUri": { "index": 0, "kind": "path", "displayName": "Http Uri",
"group": "producer", "label": "", "required": true, "type": "string",
"javaType": "java.net.URI", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": false, "description": "The GraphQL server URI." },
@@ -37,9 +38,10 @@
"variables": { "index": 6, "kind": "parameter", "displayName":
"Variables", "group": "producer", "label": "", "required": false, "type":
"object", "javaType": "org.apache.camel.util.json.JsonObject", "deprecated":
false, "autowired": false, "secret": false, "description": "The JsonObject
instance containing the operation variables." },
"variablesHeader": { "index": 7, "kind": "parameter", "displayName":
"Variables Header", "group": "producer", "label": "", "required": false,
"type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "description": "The name of a header
containing a JsonObject instance containing the operation variables." },
"lazyStartProducer": { "index": 8, "kind": "parameter", "displayName":
"Lazy Start Producer", "group": "producer (advanced)", "label":
"producer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Whether the producer should be started
lazy (on the first message). By starting lazy you can use this to allow
CamelContext and routes to startup in situations where a produc [...]
- "accessToken": { "index": 9, "kind": "parameter", "displayName": "Access
Token", "group": "security", "label": "security", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": true, "description": "The access token sent in the
Authorization header." },
- "jwtAuthorizationType": { "index": 10, "kind": "parameter", "displayName":
"Jwt Authorization Type", "group": "security", "label": "security", "required":
false, "type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": "Bearer", "description":
"The JWT Authorization type. Default is Bearer." },
- "password": { "index": 11, "kind": "parameter", "displayName": "Password",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": true, "description": "The password for Basic authentication." },
- "username": { "index": 12, "kind": "parameter", "displayName": "Username",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": true, "description": "The username for Basic authentication." }
+ "httpClient": { "index": 9, "kind": "parameter", "displayName": "Http
Client", "group": "advanced", "label": "advanced", "required": false, "type":
"object", "javaType": "org.apache.hc.client5.http.classic.HttpClient",
"deprecated": false, "autowired": false, "secret": false, "description": "To
use a custom pre-existing Http Client. Beware that when using this, then other
configurations such as proxy, access token, is not applied and all this must be
pre-configured on the Http Client." },
+ "accessToken": { "index": 10, "kind": "parameter", "displayName": "Access
Token", "group": "security", "label": "security", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false, "autowired":
false, "secret": true, "description": "The access token sent in the
Authorization header." },
+ "jwtAuthorizationType": { "index": 11, "kind": "parameter", "displayName":
"Jwt Authorization Type", "group": "security", "label": "security", "required":
false, "type": "string", "javaType": "java.lang.String", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": "Bearer", "description":
"The JWT Authorization type. Default is Bearer." },
+ "password": { "index": 12, "kind": "parameter", "displayName": "Password",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": true, "description": "The password for Basic authentication." },
+ "username": { "index": 13, "kind": "parameter", "displayName": "Username",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": true, "description": "The username for Basic authentication." }
}
}
diff --git
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/dataformats/groovyXml.json
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/dataformats/groovyXml.json
index 85f2bcb63dc..2aea64dd785 100644
---
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/dataformats/groovyXml.json
+++
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/dataformats/groovyXml.json
@@ -3,7 +3,7 @@
"kind": "dataformat",
"name": "groovyXml",
"title": "Groovy XML",
- "description": "Transform between XML and Java Map via Groovy",
+ "description": "Transform between XML and Groovy Node (Map structure)
objects.",
"deprecated": false,
"firstVersion": "4.15.0",
"label": "dataformat,transformation,xml",
@@ -16,6 +16,7 @@
"modelJavaType": "org.apache.camel.model.dataformat.GroovyXmlDataFormat"
},
"properties": {
- "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group":
"common", "required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": false, "description": "The
id of this node" }
+ "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group":
"common", "required": false, "type": "string", "javaType": "java.lang.String",
"deprecated": false, "autowired": false, "secret": false, "description": "The
id of this node" },
+ "attributeMapping": { "index": 1, "kind": "attribute", "displayName":
"Attribute Mapping", "group": "common", "required": false, "type": "boolean",
"javaType": "java.lang.Boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": true, "description": "To turn on or off
attribute mapping. When enabled then keys that start with _ or character will
be mapped to an XML attribute, and vise versa. This rule is what Jackson and
other XML or JSon libraries uses." }
}
}
diff --git
a/components-starter/camel-graphql-starter/src/main/docs/graphql.json
b/components-starter/camel-graphql-starter/src/main/docs/graphql.json
index 3ce46568579..0bf56ebea59 100644
--- a/components-starter/camel-graphql-starter/src/main/docs/graphql.json
+++ b/components-starter/camel-graphql-starter/src/main/docs/graphql.json
@@ -31,6 +31,12 @@
"description": "Whether to enable auto configuration of the graphql
component. This is enabled by default.",
"sourceType":
"org.apache.camel.component.graphql.springboot.GraphqlComponentConfiguration"
},
+ {
+ "name": "camel.component.graphql.http-client",
+ "type": "org.apache.hc.client5.http.classic.HttpClient",
+ "description": "To use a custom pre-existing Http Client. Beware that
when using this, then other configurations such as proxy, access token, is not
applied and all this must be pre-configured on the Http Client. The option is a
org.apache.hc.client5.http.classic.HttpClient type.",
+ "sourceType":
"org.apache.camel.component.graphql.springboot.GraphqlComponentConfiguration"
+ },
{
"name": "camel.component.graphql.lazy-start-producer",
"type": "java.lang.Boolean",
diff --git
a/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentAutoConfiguration.java
b/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentAutoConfiguration.java
index 8b3dcdfaecb..6c7c4eaffae 100644
---
a/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentAutoConfiguration.java
+++
b/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentAutoConfiguration.java
@@ -42,7 +42,7 @@ import org.springframework.context.annotation.Lazy;
@Conditional(ConditionalOnCamelContextAndAutoConfigurationBeans.class)
@EnableConfigurationProperties({ComponentConfigurationProperties.class,GraphqlComponentConfiguration.class})
@ConditionalOnHierarchicalProperties({"camel.component",
"camel.component.graphql"})
-@AutoConfigureAfter(CamelAutoConfiguration.class)
+@AutoConfigureAfter({CamelAutoConfiguration.class,
GraphqlComponentConverter.class})
public class GraphqlComponentAutoConfiguration {
@Autowired
diff --git
a/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentConfiguration.java
b/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentConfiguration.java
index 40dd2688842..766de576b7b 100644
---
a/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentConfiguration.java
+++
b/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentConfiguration.java
@@ -17,6 +17,7 @@
package org.apache.camel.component.graphql.springboot;
import org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon;
+import org.apache.hc.client5.http.classic.HttpClient;
import org.springframework.boot.context.properties.ConfigurationProperties;
/**
@@ -54,6 +55,13 @@ public class GraphqlComponentConfiguration
* etc.
*/
private Boolean autowiredEnabled = true;
+ /**
+ * To use a custom pre-existing Http Client. Beware that when using this,
+ * then other configurations such as proxy, access token, is not applied
and
+ * all this must be pre-configured on the Http Client. The option is a
+ * org.apache.hc.client5.http.classic.HttpClient type.
+ */
+ private HttpClient httpClient;
public Boolean getLazyStartProducer() {
return lazyStartProducer;
@@ -70,4 +78,12 @@ public class GraphqlComponentConfiguration
public void setAutowiredEnabled(Boolean autowiredEnabled) {
this.autowiredEnabled = autowiredEnabled;
}
+
+ public HttpClient getHttpClient() {
+ return httpClient;
+ }
+
+ public void setHttpClient(HttpClient httpClient) {
+ this.httpClient = httpClient;
+ }
}
\ No newline at end of file
diff --git
a/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentConverter.java
b/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentConverter.java
new file mode 100644
index 00000000000..86a9844af71
--- /dev/null
+++
b/components-starter/camel-graphql-starter/src/main/java/org/apache/camel/component/graphql/springboot/GraphqlComponentConverter.java
@@ -0,0 +1,63 @@
+/*
+ * 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.component.graphql.springboot;
+
+import java.util.LinkedHashSet;
+import java.util.Set;
+import org.springframework.beans.factory.annotation.Autowired;
+import
org.springframework.boot.context.properties.ConfigurationPropertiesBinding;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.core.convert.TypeDescriptor;
+import org.springframework.core.convert.converter.GenericConverter;
+import org.springframework.stereotype.Component;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration(proxyBeanMethods = false)
+@ConfigurationPropertiesBinding
+@Component
+public class GraphqlComponentConverter implements GenericConverter {
+
+ @Autowired
+ private ApplicationContext applicationContext;
+
+ public Set<ConvertiblePair> getConvertibleTypes() {
+ Set<ConvertiblePair> answer = new LinkedHashSet<>();
+ answer.add(new ConvertiblePair(String.class,
org.apache.hc.client5.http.classic.HttpClient.class));
+ return answer;
+ }
+
+ public Object convert(
+ Object source,
+ TypeDescriptor sourceType,
+ TypeDescriptor targetType) {
+ if (source == null) {
+ return null;
+ }
+ String ref = source.toString();
+ if (!ref.startsWith("#")) {
+ return null;
+ }
+ ref = ref.startsWith("#bean:") ? ref.substring(6) : ref.substring(1);
+ switch (targetType.getName()) {
+ case "org.apache.hc.client5.http.classic.HttpClient": return
applicationContext.getBean(ref,
org.apache.hc.client5.http.classic.HttpClient.class);
+ }
+ return null;
+ }
+}
\ No newline at end of file
diff --git
a/components-starter/camel-graphql-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
b/components-starter/camel-graphql-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index 12b2359e31e..63e737c2e1d 100644
---
a/components-starter/camel-graphql-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++
b/components-starter/camel-graphql-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -15,4 +15,5 @@
## limitations under the License.
## ---------------------------------------------------------------------------
-org.apache.camel.component.graphql.springboot.GraphqlComponentAutoConfiguration
\ No newline at end of file
+org.apache.camel.component.graphql.springboot.GraphqlComponentAutoConfiguration
+org.apache.camel.component.graphql.springboot.GraphqlComponentConverter
diff --git
a/components-starter/camel-groovy-xml-starter/src/main/docs/groovy-xml.json
b/components-starter/camel-groovy-xml-starter/src/main/docs/groovy-xml.json
index f42d3dba574..81888f28605 100644
--- a/components-starter/camel-groovy-xml-starter/src/main/docs/groovy-xml.json
+++ b/components-starter/camel-groovy-xml-starter/src/main/docs/groovy-xml.json
@@ -13,6 +13,13 @@
}
],
"properties": [
+ {
+ "name": "camel.dataformat.groovy-xml.attribute-mapping",
+ "type": "java.lang.Boolean",
+ "description": "To turn on or off attribute mapping. When enabled then
keys that start with _ or character will be mapped to an XML attribute, and
vise versa. This rule is what Jackson and other XML or JSon libraries uses.",
+ "sourceType":
"org.apache.camel.groovy.xml.springboot.GroovyXmlDataFormatConfiguration",
+ "defaultValue": true
+ },
{
"name": "camel.dataformat.groovy-xml.customizer.enabled",
"type": "java.lang.Boolean",
diff --git
a/components-starter/camel-groovy-xml-starter/src/main/java/org/apache/camel/groovy/xml/springboot/GroovyXmlDataFormatConfiguration.java
b/components-starter/camel-groovy-xml-starter/src/main/java/org/apache/camel/groovy/xml/springboot/GroovyXmlDataFormatConfiguration.java
index 5d4e5597f50..947dcd876d2 100644
---
a/components-starter/camel-groovy-xml-starter/src/main/java/org/apache/camel/groovy/xml/springboot/GroovyXmlDataFormatConfiguration.java
+++
b/components-starter/camel-groovy-xml-starter/src/main/java/org/apache/camel/groovy/xml/springboot/GroovyXmlDataFormatConfiguration.java
@@ -20,7 +20,7 @@ import
org.apache.camel.spring.boot.DataFormatConfigurationPropertiesCommon;
import org.springframework.boot.context.properties.ConfigurationProperties;
/**
- * Transform between XML and Java Map via Groovy
+ * Transform between XML and Groovy Node (Map structure) objects.
*
* Generated by camel-package-maven-plugin - do not edit this file!
*/
@@ -34,4 +34,18 @@ public class GroovyXmlDataFormatConfiguration
* is enabled by default.
*/
private Boolean enabled;
+ /**
+ * To turn on or off attribute mapping. When enabled then keys that start
+ * with _ or character will be mapped to an XML attribute, and vise versa.
+ * This rule is what Jackson and other XML or JSon libraries uses.
+ */
+ private Boolean attributeMapping = true;
+
+ public Boolean getAttributeMapping() {
+ return attributeMapping;
+ }
+
+ public void setAttributeMapping(Boolean attributeMapping) {
+ this.attributeMapping = attributeMapping;
+ }
}
\ No newline at end of file