oscerd opened a new pull request, #24724:
URL: https://github.com/apache/camel/pull/24724

   ## Summary
   
   The Knative consumer filters inbound HTTP headers through 
`KnativeHttpHeaderFilterStrategy`, so Camel-internal headers (`Camel*`) are not 
mapped onto the message. When a CloudEvent is received in **structured content 
mode** (`application/cloudevents+json`), 
`CloudEventProcessors.decodeStructuredContent` mapped the remaining event 
fields (extensions) directly onto the message headers **without** applying any 
`HeaderFilterStrategy` — inconsistent with the binary/HTTP-header path.
   
   This routes structured-mode extension fields through a 
`HeaderFilterStrategy` before setting them as headers, so `Camel*` headers 
(matched case-insensitively) are filtered consistently on both content modes. 
Ordinary CloudEvent extension attributes are unaffected.
   
   ## Changes
   - `AbstractCloudEventProcessor`: add a `HeaderFilterStrategy` and a shared 
`mapExtensionAsHeader(...)` helper.
   - `CloudEventProcessors`: route the extension mapping (all spec versions) 
through the helper.
   - `KnativeHttpTest`: new test asserting a regular extension is propagated 
and a `Camel*`-named field is filtered.
   - Upgrade guide (4.22): documents the consistency change.
   
   ## Notes
   - On `main`/`4.21.x`, `DefaultHeaderFilterStrategy` filters `Camel*` inbound 
by default; the `4.18.x`/`4.14.x` backports will set 
`setInFilterStartsWith(CAMEL_FILTER_STARTS_WITH)` explicitly.
   - JIRA: [CAMEL-24084](https://issues.apache.org/jira/browse/CAMEL-24084)
   
   _Claude Code on behalf of Andrea Cosentino (@oscerd)_
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to