Andrea Cosentino created CAMEL-25019:
----------------------------------------
Summary: camel-quickfix - InOut consumer should reply on the
originating session
Key: CAMEL-25019
URL: https://issues.apache.org/jira/browse/CAMEL-25019
Project: Camel
Issue Type: Improvement
Components: camel-quickfix
Reporter: Andrea Cosentino
Assignee: Andrea Cosentino
Fix For: 4.23.0
With {{exchangePattern=InOut}}, {{QuickfixjConsumer.sendOutMessage}} picks the
session for the reply from the {{SessionID}} header on the IN message when the
route completes. Any step later in the route that sets or replaces that header
therefore changes which session receives the reply. The originating session is
already known when {{QuickfixjEndpoint.onEvent}} creates the exchange, so the
reply should go there.
Proposed change:
* Carry the originating {{SessionID}} from {{QuickfixjEndpoint.onEvent}} into
the reply path (for example as an internal exchange property) and use it in
{{sendOutMessage}} instead of the header.
* Add a unit test asserting the reply goes to the originating session even if
the {{SessionID}} header changes during routing.
* Docs: the Usage section of {{quickfix-component.adoc}} refers to a
"DataDictionary header", but {{QuickfixjConverters}} reads {{DataDictionary}}
from an exchange property. Correct the wording.
* Upgrade-guide note for routes that relied on changing the header to redirect
the reply.
_Claude Code on behalf of oscerd_
--
This message was sent by Atlassian Jira
(v8.20.10#820010)