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)

Reply via email to