This is an automated email from the ASF dual-hosted git repository.
oscerd 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 2371b7fd5821 CAMEL-23585: camel-arangodb - align Exchange header
constant names with Camel naming convention (#23469)
2371b7fd5821 is described below
commit 2371b7fd5821c198709b91700f24ddf1a73c1a1d
Author: Andrea Cosentino <[email protected]>
AuthorDate: Fri May 22 18:34:10 2026 +0200
CAMEL-23585: camel-arangodb - align Exchange header constant names with
Camel naming convention (#23469)
Renames the two Exchange header string values in ArangoDbConstants that were
not in the Camel namespace (key, ResultClassType) to CamelArangoDb<Name>,
following the convention used across the rest of the Camel component catalog
and matching the pattern established in CAMEL-23526 (camel-cxf), CAMEL-23522
(camel-mail), CAMEL-23461 (camel-aws-bedrock), CAMEL-23532
(camel-vertx-websocket / camel-atmosphere-websocket / camel-iggy), and
CAMEL-23576 (camel-jira).
- ARANGO_KEY: "key" -> "CamelArangoDbKey"
- RESULT_CLASS_TYPE: "ResultClassType" -> "CamelArangoDbResultClassType"
The Java field names are unchanged so routes referencing the constants
symbolically continue to work; routes using the literal string values must
be
updated (documented in the 4.21 upgrade guide). The remaining constants
(MULTI_UPDATE, MULTI_INSERT, MULTI_DELETE, AQL_QUERY,
AQL_QUERY_BIND_PARAMETERS, AQL_QUERY_OPTIONS) were already Camel-prefixed
and
are unchanged.
The generated Endpoint DSL header accessors on ArangoDbHeaderNameBuilder
have
been renamed: key() -> arangoDbKey() and resultClassType() ->
arangoDbResultClassType().
All existing tests use symbolic constant references and continue to pass.
Tracker: CAMEL-23577
Reported by Claude Code on behalf of Andrea Cosentino
Signed-off-by: Andrea Cosentino <[email protected]>
---
.../apache/camel/catalog/components/arangodb.json | 4 +--
.../apache/camel/component/arangodb/arangodb.json | 4 +--
.../component/arangodb/ArangoDbConstants.java | 4 +--
.../ROOT/pages/camel-4x-upgrade-guide-4_21.adoc | 29 ++++++++++++++++++++++
.../dsl/ArangoDbEndpointBuilderFactory.java | 12 ++++-----
5 files changed, 41 insertions(+), 12 deletions(-)
diff --git
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/arangodb.json
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/arangodb.json
index 01b89282e543..b4da9282f1c2 100644
---
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/arangodb.json
+++
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/arangodb.json
@@ -43,8 +43,8 @@
"CamelArangoDbMultiUpdate": { "index": 0, "kind": "header", "displayName":
"", "group": "producer", "label": "", "required": false, "javaType":
"java.lang.Boolean", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": false, "description": "Indicates if
there are multiple documents to update. If set to true, the body of the message
must be a Collection of documents to update.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbCo [...]
"CamelArangoDbMultiInsert": { "index": 1, "kind": "header", "displayName":
"", "group": "producer", "label": "", "required": false, "javaType":
"java.lang.Boolean", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": false, "description": "Indicates if
there are multiple documents to insert. If set to true, the body of the message
must be a Collection of documents to insert.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbCo [...]
"CamelArangoDbMultiDelete": { "index": 2, "kind": "header", "displayName":
"", "group": "producer", "label": "", "required": false, "javaType":
"java.lang.Boolean", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": false, "description": "Indicates if
there are multiple documents to delete. If set to true, the body of the message
must be a Collection of key of documents to delete.", "constantName":
"org.apache.camel.component.arangodb.Ara [...]
- "key": { "index": 3, "kind": "header", "displayName": "", "group":
"producer", "label": "", "required": false, "javaType": "java.lang.String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Arango key to use for the operation.",
"constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#ARANGO_KEY" },
- "ResultClassType": { "index": 4, "kind": "header", "displayName": "",
"group": "producer", "label": "", "required": false, "javaType":
"java.lang.Class", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": "BaseDocument.class or
BaseEdgeDocument.class", "description": "The type of the result of the
operation.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#RESULT_CLASS_TYPE" },
+ "CamelArangoDbKey": { "index": 3, "kind": "header", "displayName": "",
"group": "producer", "label": "", "required": false, "javaType":
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The Arango key to use for the
operation.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#ARANGO_KEY" },
+ "CamelArangoDbResultClassType": { "index": 4, "kind": "header",
"displayName": "", "group": "producer", "label": "", "required": false,
"javaType": "java.lang.Class", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": false, "defaultValue": "BaseDocument.class or
BaseEdgeDocument.class", "description": "The type of the result of the
operation.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#RESULT_CLASS_TYPE" },
"CamelArangoDbAqlQuery": { "index": 5, "kind": "header", "displayName":
"", "group": "producer", "label": "", "required": false, "javaType":
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The AQL query to execute.",
"constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#AQL_QUERY" },
"CamelArangoDbAqlParameters": { "index": 6, "kind": "header",
"displayName": "", "group": "producer", "label": "", "required": false,
"javaType": "java.util.Map", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": false, "description": "The key\/value pairs
defining the variables to bind the query to.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#AQL_QUERY_BIND_PARAMETERS"
},
"CamelArangoDbAqlOptions": { "index": 7, "kind": "header", "displayName":
"", "group": "advanced", "label": "advanced", "required": false, "javaType":
"com.arangodb.model.AqlQueryOptions", "deprecated": false, "deprecationNote":
"", "autowired": false, "secret": false, "description": "The additional options
that will be passed to the query API.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#AQL_QUERY_OPTIONS" }
diff --git
a/components/camel-arangodb/src/generated/resources/META-INF/org/apache/camel/component/arangodb/arangodb.json
b/components/camel-arangodb/src/generated/resources/META-INF/org/apache/camel/component/arangodb/arangodb.json
index 01b89282e543..b4da9282f1c2 100644
---
a/components/camel-arangodb/src/generated/resources/META-INF/org/apache/camel/component/arangodb/arangodb.json
+++
b/components/camel-arangodb/src/generated/resources/META-INF/org/apache/camel/component/arangodb/arangodb.json
@@ -43,8 +43,8 @@
"CamelArangoDbMultiUpdate": { "index": 0, "kind": "header", "displayName":
"", "group": "producer", "label": "", "required": false, "javaType":
"java.lang.Boolean", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": false, "description": "Indicates if
there are multiple documents to update. If set to true, the body of the message
must be a Collection of documents to update.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbCo [...]
"CamelArangoDbMultiInsert": { "index": 1, "kind": "header", "displayName":
"", "group": "producer", "label": "", "required": false, "javaType":
"java.lang.Boolean", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": false, "description": "Indicates if
there are multiple documents to insert. If set to true, the body of the message
must be a Collection of documents to insert.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbCo [...]
"CamelArangoDbMultiDelete": { "index": 2, "kind": "header", "displayName":
"", "group": "producer", "label": "", "required": false, "javaType":
"java.lang.Boolean", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": false, "description": "Indicates if
there are multiple documents to delete. If set to true, the body of the message
must be a Collection of key of documents to delete.", "constantName":
"org.apache.camel.component.arangodb.Ara [...]
- "key": { "index": 3, "kind": "header", "displayName": "", "group":
"producer", "label": "", "required": false, "javaType": "java.lang.String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Arango key to use for the operation.",
"constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#ARANGO_KEY" },
- "ResultClassType": { "index": 4, "kind": "header", "displayName": "",
"group": "producer", "label": "", "required": false, "javaType":
"java.lang.Class", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": "BaseDocument.class or
BaseEdgeDocument.class", "description": "The type of the result of the
operation.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#RESULT_CLASS_TYPE" },
+ "CamelArangoDbKey": { "index": 3, "kind": "header", "displayName": "",
"group": "producer", "label": "", "required": false, "javaType":
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The Arango key to use for the
operation.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#ARANGO_KEY" },
+ "CamelArangoDbResultClassType": { "index": 4, "kind": "header",
"displayName": "", "group": "producer", "label": "", "required": false,
"javaType": "java.lang.Class", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": false, "defaultValue": "BaseDocument.class or
BaseEdgeDocument.class", "description": "The type of the result of the
operation.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#RESULT_CLASS_TYPE" },
"CamelArangoDbAqlQuery": { "index": 5, "kind": "header", "displayName":
"", "group": "producer", "label": "", "required": false, "javaType":
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The AQL query to execute.",
"constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#AQL_QUERY" },
"CamelArangoDbAqlParameters": { "index": 6, "kind": "header",
"displayName": "", "group": "producer", "label": "", "required": false,
"javaType": "java.util.Map", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": false, "description": "The key\/value pairs
defining the variables to bind the query to.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#AQL_QUERY_BIND_PARAMETERS"
},
"CamelArangoDbAqlOptions": { "index": 7, "kind": "header", "displayName":
"", "group": "advanced", "label": "advanced", "required": false, "javaType":
"com.arangodb.model.AqlQueryOptions", "deprecated": false, "deprecationNote":
"", "autowired": false, "secret": false, "description": "The additional options
that will be passed to the query API.", "constantName":
"org.apache.camel.component.arangodb.ArangoDbConstants#AQL_QUERY_OPTIONS" }
diff --git
a/components/camel-arangodb/src/main/java/org/apache/camel/component/arangodb/ArangoDbConstants.java
b/components/camel-arangodb/src/main/java/org/apache/camel/component/arangodb/ArangoDbConstants.java
index 47758a951d21..1fdf5550fb86 100644
---
a/components/camel-arangodb/src/main/java/org/apache/camel/component/arangodb/ArangoDbConstants.java
+++
b/components/camel-arangodb/src/main/java/org/apache/camel/component/arangodb/ArangoDbConstants.java
@@ -29,10 +29,10 @@ public final class ArangoDbConstants {
javaType = "java.lang.Boolean", defaultValue = "false")
public static final String MULTI_DELETE = "CamelArangoDbMultiDelete";
@Metadata(description = "The Arango key to use for the operation.",
javaType = "java.lang.String")
- public static final String ARANGO_KEY = "key";
+ public static final String ARANGO_KEY = "CamelArangoDbKey";
@Metadata(description = "The type of the result of the operation.",
javaType = "java.lang.Class",
defaultValue = "BaseDocument.class or BaseEdgeDocument.class")
- public static final String RESULT_CLASS_TYPE = "ResultClassType";
+ public static final String RESULT_CLASS_TYPE =
"CamelArangoDbResultClassType";
@Metadata(description = "The AQL query to execute.", javaType =
"java.lang.String")
public static final String AQL_QUERY = "CamelArangoDbAqlQuery";
@Metadata(description = "The key/value pairs defining the variables to
bind the query to.",
diff --git
a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
index ecd4734aff38..6d440e5f44a1 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
@@ -1224,6 +1224,35 @@ The generated Endpoint DSL header accessor names are
unchanged (for example
deriving the accessor name; the accessors now return the new `Camel`-prefixed
values.
+=== camel-arangodb
+
+Two Exchange header constants in `ArangoDbConstants` that were not in the
+`Camel` namespace (and therefore not filtered by the default
+`HeaderFilterStrategy`) have been renamed to follow the Camel naming
+convention. The Java field names are unchanged; only the header string values
+have changed:
+
+[options="header"]
+|===
+| Constant | Previous value | New value
+| `ArangoDbConstants.ARANGO_KEY` | `key` | `CamelArangoDbKey`
+| `ArangoDbConstants.RESULT_CLASS_TYPE` | `ResultClassType` |
`CamelArangoDbResultClassType`
+|===
+
+The remaining constants (`MULTI_UPDATE`, `MULTI_INSERT`, `MULTI_DELETE`,
+`AQL_QUERY`, `AQL_QUERY_BIND_PARAMETERS`, `AQL_QUERY_OPTIONS`) were already
+`Camel`-prefixed and are unchanged.
+
+Routes that reference the constants symbolically (for example
+`setHeader(ArangoDbConstants.ARANGO_KEY, ...)`) continue to work without
+changes. Routes that set the header by its literal string value (for example
+`setHeader("key", ...)`) must be updated to use the new value
+(`setHeader("CamelArangoDbKey", ...)`).
+
+As a consequence, the generated Endpoint DSL header accessors on
+`ArangoDbHeaderNameBuilder` have been renamed: `key()` -> `arangoDbKey()` and
+`resultClassType()` -> `arangoDbResultClassType()`.
+
=== Jackson dataformat documentation pages renamed
The Jackson 2.x and Jackson 3.x lines ship the same dataformat names
(`jackson`, `jacksonXml`,
diff --git
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ArangoDbEndpointBuilderFactory.java
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ArangoDbEndpointBuilderFactory.java
index e29da8d9b0b6..affc221f79c8 100644
---
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ArangoDbEndpointBuilderFactory.java
+++
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ArangoDbEndpointBuilderFactory.java
@@ -457,10 +457,10 @@ public interface ArangoDbEndpointBuilderFactory {
*
* Group: producer
*
- * @return the name of the header {@code key}.
+ * @return the name of the header {@code ArangoDbKey}.
*/
- public String key() {
- return "key";
+ public String arangoDbKey() {
+ return "CamelArangoDbKey";
}
/**
* The type of the result of the operation.
@@ -470,10 +470,10 @@ public interface ArangoDbEndpointBuilderFactory {
* Default: BaseDocument.class or BaseEdgeDocument.class
* Group: producer
*
- * @return the name of the header {@code ResultClassType}.
+ * @return the name of the header {@code ArangoDbResultClassType}.
*/
- public String resultClassType() {
- return "ResultClassType";
+ public String arangoDbResultClassType() {
+ return "CamelArangoDbResultClassType";
}
/**
* The AQL query to execute.