Claus Ibsen created CAMEL-25739:
-----------------------------------
Summary: tooling - a multiEnum flag for options that take several
enum values separated by comma
Key: CAMEL-25739
URL: https://issues.apache.org/jira/browse/CAMEL-25739
Project: Camel
Issue Type: Improvement
Components: camel-catalog, tooling
Reporter: Claus Ibsen
Fix For: 4.24.0
Some options take several values of their enum, separated by comma, but their
metadata is a plain enum. The catalog validator compares the whole value with
each enum value, so it rejects a valid list such as
{{ehcache:orders?eventTypes=CREATED,UPDATED}}. The YAML DSL schema has the same
problem for jsonpath: {{option: ALWAYS_RETURN_LIST,SUPPRESS_EXCEPTIONS}} fails
schema validation. And tools can only offer one value to pick.
The options:
* ehcache {{eventTypes}}
* jcache {{filteredEvents}}
* coap, coaps, coap+tcp and coaps+tcp {{coapMethodRestrict}}
* aws2-athena {{retry}}
* jsonpath language {{option}}
Proposal: a {{multiEnum}} attribute on {{@UriParam}} and {{@Metadata}}. The
JSON metadata of the option gets {{"multiEnum": true}}. The catalog validator
checks each value of the list, the YAML DSL schema accepts a comma-separated
list of the values, and tools can offer to pick several values. Spaces around
the commas are allowed: ehcache, jcache and aws2-athena then trim the values,
as coap and jsonpath already do.
Also: the description of the http {{authMethod}} option says it takes a
comma-separated list, but the component uses one value (Basic, Bearer or NTLM).
Found while writing the YAML examples of CAMEL-25736.
_Claude Code on behalf of davsclaus_
--
This message was sent by Atlassian Jira
(v8.20.10#820010)