[QFJ-416] Support Header/Trailer field ordering in code generation Created: 16/Mar/09  Updated: 15/Oct/12

Status: Open
Project: QuickFIX/J
Component/s: Engine
Affects Version/s: 1.4.0
Fix Version/s: Future Releases

Type: Improvement Priority: Default
Reporter: Laurent Danesi Assignee: Laurent Danesi
Resolution: Unresolved Votes: 2
Labels: None

Issue Links:
Relates
relates to QFJ-512 How do I change the order of the head... Closed
Requires
requires QFJ-709 expose field order constructor for me... Resolved

 Description   

To fully support custom FIX dictionary, we should take care of header fields defined in XML dictionary.



 Comments   
Comment by Jörg Thönnes [ 16/Mar/09 ]

In reply to QFJ-416:
> To fully support custom FIX dictionary, we should take care of header fields
> defined in XML dictionary.

I would like to add that the ordering as defined in the data dictionary should be honoured.
Same applies to trailer fields.

Do you think this should be separate tickets?

Comment by Laurent Danesi [ 16/Mar/09 ]

Yes, please.

Comment by Steve Bate [ 16/Mar/09 ]

Ordering by default will lead to a potential performance hit for users that don't care about ordering.

Comment by Jörg Thönnes [ 16/Mar/09 ]

In reply to comment #3:
>
> Ordering by default will lead to a potential performance hit for users that
> don't care about ordering.

Yes, but at the moment it is not possible to generate ordered Header and Trailer fields since the FieldMap constructor is not exposed.

My suggestion is to expose the field order constructor and extend the message generation to honour the generator option to create ordered messages.

In addition, the field sort is generated for every single message instance, but could by generated by a factory to use a single instance for every message type.

Comment by Jörg Thönnes [ 16/Mar/09 ]

Sorry for the duplicate comments.

The JIRA version used by QuickFIX/J has a bug which triggers errors with my Eclipse Mylyn plugin. So I did not know that I already submitted the comment.

Comment by Steve Bate [ 05/Apr/10 ]

It appears the request is also to validate the ordering.

Comment by Phill Dixon [ 27/Sep/10 ]

To add a custom field to a Trailer I also found that I had to edit the quickfix.Message object as the Trailer class has a hardcoded field order and any tag added to it which did not appear resulted in an invalid tag error. This occured when sending the Logon message with the new custom field in the trailer. The DataDictionary xml file had been modified but was apparently ignored.

There is also a hardcoded case statement for isTrailerField which needs modifying.

It would be useful if the XML file was respected.

Generated at Sat Nov 23 12:39:54 UTC 2024 using JIRA 7.5.2#75007-sha1:9f5725bb824792b3230a5d8716f0c13e296a3cae.