Re: [Quickfix-developers] Re: Message data dictionary initialisation
Brought to you by:
orenmnero
From: Oren M. <ore...@ya...> - 2003-08-15 03:38:00
|
Yeah. The static data dictionary for the message was definately a bit of hackery. I actually needed this for something last year and this was the simplest way to get it to work in C++, java and C# without having to write JNI and .NET wrappers for the DataDictionary. Generally, however, resetting the messages data dictionary isn't totally necessary if you just set it to the latest version you are supporting. If you are supporting versions 4.0-4.2 for instance, passing the message the 4.2 dictionary should work quite well for all of them, since later versions tend to more or less be supersets of the previous versions. This is less true since the 4.4 release since a significant number of field names have changed, however not so much that they are unrecognizable from their former incarnations. I would agree that passing a data dictionary to the message makes a good deal of sense. Actually I picture two signatures, one with and without a data dictionary. If no DD is provided, the message can pull the sessionid out of itself and pull out the appropriate DataDictionary with the lookupSession call. This second signature would also be very easy to expose to all the supported APIs. Daniel May <Dan...@ma...> wrote: I agree that as a starting point there should at least be an access method to get a pointer to the DataDictionary in the Session class. The static method FIX::Message::InitializeXML() is really only useful if your are managing sessions that all use the same (i.e. FIX4.1) FIX protocol version. Otherwise, you need to set it every time a message comes through with a different protocol version. Does FIX::Message really need to keep a pointer to a DataDictionary ? I would think the caller could be responsible for passing in that pointer, which they could pull from the appropriate Session ? Daniel From: Gene Gorokhovsky <musor102@ya...> Re: Message data dictionary initialisation 2003-04-30 09:31 Oren is aware that DataDict <-> Session <-> Message relationship needs improvement. Unfortunately getting it "right" requires significant code changes. Perhaps as the first step DataDictionary pointer could be publicly exposed in Session class. Gene --- Mark Lees <Mark.Lees@bt...> wrote: > All, > > I'm trying to get Message::toXML() to ouput the > names of the fields aswell > as the field numbers and looking at the code in > toXMLFields() it references > the static data dictionary > Message::s_dataDictionary. > > When I receive a message I have the message itself > and a sessionID. I can > get a pointer to my session using > Session::lookupSession() but the discreet > session data dictionary Session::m_dataDictionary > does not have an accessor > and it is declared private. > > It also appears strange to me that each session has > it's own data dictionary > but the Message class has a statically declared one. > It appears possible to > have a different data dictionary per session but a > Message must only have > one. > > Also, the only method that sets the Message data > dictionary is handed a URL > and not a pre-constructed data dictionary. > > Am I pushing the library too far ? Is this just not > quite complete yet? > > I'm basically after outputting the complete message > I received into a log > file in XML format with the names, numbers, > enumerations/values... > > Thanks > Mark. > **************************************************************************** > This message is confidential to the sender and > addressee, and may contain > proprietary or legally privileged information. If > you are not the intended > recipient, please delete it from your system, > destroy any copies, and notify > the sender immediately. Opinions stated herein are > not necessarily those of > BrokerTec. BrokerTec reserves the right to monitor > messages that pass > through it's networks. BrokerTec Europe Ltd is > regulated by FSA. > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Quickfix-developers mailing list > Quickfix-developers@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com Daniel May da...@ma... da...@co... > ATTACHMENT part 2 image/gif name=msg.gif --------------------------------- Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software |