Skip to content

Fix group factory generation through nested components - #33

Merged
chrjohn merged 2 commits into
quickfix-j:masterfrom
6democratickim9:fix/nested-component-group-factory
Nov 10, 2026
Merged

chrjohn merged 2 commits into
quickfix-j:masterfrom
6democratickim9:fix/nested-component-group-factory

Conversation

@6democratickim9

Copy link
Copy Markdown
Contributor

MessageFactory generation skips groups reached through a component nested inside another component. In QuickFIX/J #34, creating group 457 for a FIX50SP2 TradeCaptureReport consequently returns null.

Traverse both group and component children when resolving component references, preserving the enclosing Java group path. Add a small dictionary and regression test covering the outer group and nested group factory entry.

Also strip trailing whitespace from generated MessageFactory sources and update the FIX42/FIX44 golden files. Ignoring end-of-line whitespace, FIX42 is unchanged and FIX44 gains 59 previously missing NoUnderlyingStips factory branches; existing branches are retained.

Validation on macOS with JDK 17:

  • ./mvnw clean install -B -V -Dmaven.javadoc.skip=true -Dgpg.skip=true: all 8 tests passed after the final changes.
  • git show --format= --check HEAD: passed.
  • Downstream QuickFIX/J reproduction: group 457 returned null with generator 3.0.4; the nested-component fix passed the same test with local 3.0.5-SNAPSHOT, including group tag 457 and delimiter 458. This downstream run preceded the whitespace-only output cleanup; the generator suite was rerun after that cleanup.

Related to #34. QuickFIX/J will need to adopt a generator release containing this fix.

Traverse nested component references while preserving direct group handling. Add regression coverage for quickfix-j/quickfixj#822.

Remove trailing whitespace from generated message factories and update the FIX42 and FIX44 golden files.
@chrjohn

chrjohn commented Nov 7, 2026

Copy link
Copy Markdown
Member

Hey @6democratickim9 , thanks for the PR. 👍
Will have a look...

@chrjohn chrjohn linked an issue Nov 7, 2026 that may be closed by this pull request
@chrjohn chrjohn added this to the 3.0.5 milestone Nov 10, 2026
@chrjohn
chrjohn merged commit ca36c58 into quickfix-j:master Nov 10, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MessageFactory returns null on nested components

2 participants