[
https://issues.apache.org/jira/browse/CAMEL-24414?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrea Cosentino updated CAMEL-24414:
-------------------------------------
Summary: camel-core - resolve pollEnrich property placeholders at build
time (was: camel-core - resolve dynamic-URI property placeholders at build
time for recipientList, routingSlip, dynamicRouter and pollEnrich)
> camel-core - resolve pollEnrich property placeholders at build time
> -------------------------------------------------------------------
>
> Key: CAMEL-24414
> URL: https://issues.apache.org/jira/browse/CAMEL-24414
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Reporter: Andrea Cosentino
> Assignee: Andrea Cosentino
> Priority: Major
> Fix For: 4.23.0
>
>
> CAMEL-24282 changed toD and enrich so that {{...}} property placeholders are
> resolved once at build time instead of being re-expanded per message on the
> evaluated recipient, matching the documented contract that placeholder
> resolution operates on route and configuration text. That change explicitly
> left the other dynamic-URI EIPs alone - its commit message states
> "recipientList/routingSlip/dynamicRouter/pollEnrich are unchanged".
> Those EIPs still call ProcessorHelper.prepareRecipient():
> * RecipientListProcessor.java:260
> * RoutingSlip.java:265 (synchronous path) and RoutingSlip.java:469
> (asynchronous continuation path - both need the change)
> * PollEnricher.java:305
> ProcessorHelper.prepareRecipient() ends in
> ecc.getCamelContextExtension().normalizeUri(uri), and
> DefaultCamelContextExtension.normalizeUri() calls
> EndpointHelper.resolveEndpointUriPropertyPlaceholders() - so a {{...}} token
> that only appears in the per-message recipient value is still expanded.
> SendDynamicProcessor already carries its own overridden prepareRecipient()
> with the build-time behaviour (the CAMEL-24282 fix). This issue is to give
> the remaining four EIPs the same treatment so the whole dynamic-URI family
> behaves consistently.
> Note the allowedSchemes allow-list added in CAMEL-24298 is opt-in and
> orthogonal - it constrains the scheme, not placeholder expansion.
> Behaviour change, so main only, with an upgrade-guide entry mirroring the
> CAMEL-24282 one.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)