Thread: [Quickfix-developers] Problem with Message craker
Brought to you by:
orenmnero
From: Raja <sra...@ga...> - 2008-12-02 18:17:45
|
I am using C++ version of quick fix. I am using message cracker. I have defined the following in my application void onMessage( const FIX42::NewOrderSingle&, const FIX::SessionID& ); void onMessage( const FIX42::OrderCancelRequest&, const FIX::SessionID& ); void onMessage( const FIX42::OrderCancelReplaceRequest&, const FIX::SessionID& ); void onMessage( const FIX42::SecurityDefinitionRequest&, const FIX::SessionID& ); I have coded the logic for these in my cpp. For 35=D my code gets executed properly. But when there is a cancel 35=F, the message cracker throws a "Unsupported message" error. It does not come to my code at all. I was debugging Message cracker. This code gets executed. virtual void onMessage( const OrderCancelRequest&, const FIX::SessionID& ) { throw FIX::UnsupportedMessageType(); } Why my function overload is not working. I have verfied the signature. What am I doing wrong? I would appreciate any help on this. Regards, Raja Phone 312-928-8006 GatewayCapital Group Chicago |
From: Malinka R. <ael...@gm...> - 2008-12-02 20:10:17
|
we would need to see more of your code, what you're providing is not enough, how are you initializing the Connection (SocketInitiator/SocketAcceptor)? and can you post code for your ApplicationObject being passed into the Acceptor/Initiator (should be your message cracker object you mentioned below) On Tue, Dec 2, 2008 at 12:56, Raja <sra...@ga...> wrote: > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > I am using C++ version of quick fix. > > I am using message cracker. I have defined the following in my application > > void onMessage( const FIX42::NewOrderSingle&, const FIX::SessionID& ); > > void onMessage( const FIX42::OrderCancelRequest&, const FIX::SessionID& ); > > void onMessage( const FIX42::OrderCancelReplaceRequest&, const > FIX::SessionID& ); > > void onMessage( const FIX42::SecurityDefinitionRequest&, const > FIX::SessionID& ); > > I have coded the logic for these in my cpp. > > For 35=D my code gets executed properly. > > But when there is a cancel 35=F, the message cracker throws a "Unsupported > message" error. It does not come to my code at all. > > I was debugging Message cracker. This code gets executed. > > virtual void onMessage( const OrderCancelRequest&, const FIX::SessionID& ) > > > { throw FIX::UnsupportedMessageType(); } > > Why my function overload is not working. I have verfied the signature. What > am I doing wrong? > > I would appreciate any help on this. > > Regards, > > Raja > > Phone 312-928-8006 > > GatewayCapital Group Chicago > > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's > challenge > Build the coolest Linux based applications with Moblin SDK & win great > prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > |
From: <And...@rb...> - 2008-12-03 09:06:20
|
Hi Raja, Are these different function overloads? void onMessage( const FIX42::OrderCancelRequest&, const FIX::SessionID& ); and virtual void onMessage( const OrderCancelRequest&, const FIX::SessionID& ) Are you inheriting from QuickFix42::MessageCracker ? I think you'd get a compiler error if this wasn't the case but wanted to check. Do your other onMessage() overloads get executed correctly? When you are debugging and you enter the MessageCracker::onMessage() { throw notSupported; } Is your "this" pointer as expected? i.e. Do you see your derived object, and does your vtable show the onMessage(const FIX42::OrderCancelRequest) ? -----Original Message----- From: Raja [mailto:sra...@ga...] Sent: 02 December 2008 17:56 To: qui...@li... Subject: [Quickfix-developers] Problem with Message craker QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html QuickFIX Support: http://www.quickfixengine.org/services.html *********************************************************************************** The Royal Bank of Scotland plc. Registered in Scotland No 90312. Registered Office: 36 St Andrew Square, Edinburgh EH2 2YB. Authorised and regulated by the Financial Services Authority This e-mail message is confidential and for use by the addressee only. If the message is received by anyone other than the addressee, please return the message to the sender by replying to it and then delete the message from your computer. Internet e-mails are not necessarily secure. The Royal Bank of Scotland plc does not accept responsibility for changes made to this message after it was sent. Whilst all reasonable care has been taken to avoid the transmission of viruses, it is the responsibility of the recipient to ensure that the onward transmission, opening or use of this message and any attachments will not adversely affect its systems or data. No responsibility is accepted by The Royal Bank of Scotland plc in this regard and the recipient should carry out such virus and other checks as it considers appropriate. Visit our websites at: www.rbs.com www.rbs.com/gbm www.rbsgc.com *********************************************************************************** |
From: Raja <sra...@ga...> - 2008-12-03 14:39:52
|
They are not different overloads for FIX42::MessageCracker. I need that because my App is going to Handle Multiple versions. I am inheriting FIX::MessageCracker which inherits FIX42::MessageCracker. Yes My onMessage for New order single and security definitions are working properly. That adds the whole cofusion to this problem. Yes . I strongly suspect some VC++ run time problem we have. I will send it to Microsoft. Thanks for all your help, Raja Phone 312-928-8006 GatewayCapital Group Chicago -----Original Message----- From: And...@rb... [mailto:And...@rb...] Sent: Wednesday, December 03, 2008 2:37 AM To: sra...@ga... Cc: qui...@li... Subject: RE: [Quickfix-developers] Problem with Message craker Hi Raja, Are these different function overloads? void onMessage( const FIX42::OrderCancelRequest&, const FIX::SessionID& ); and virtual void onMessage( const OrderCancelRequest&, const FIX::SessionID& ) Are you inheriting from QuickFix42::MessageCracker ? I think you'd get a compiler error if this wasn't the case but wanted to check. Do your other onMessage() overloads get executed correctly? When you are debugging and you enter the MessageCracker::onMessage() { throw notSupported; } Is your "this" pointer as expected? i.e. Do you see your derived object, and does your vtable show the onMessage(const FIX42::OrderCancelRequest) ? -----Original Message----- From: Raja [mailto:sra...@ga...] Sent: 02 December 2008 17:56 To: qui...@li... Subject: [Quickfix-developers] Problem with Message craker QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html QuickFIX Support: http://www.quickfixengine.org/services.html **************************************************************************** ******* The Royal Bank of Scotland plc. Registered in Scotland No 90312. Registered Office: 36 St Andrew Square, Edinburgh EH2 2YB. Authorised and regulated by the Financial Services Authority This e-mail message is confidential and for use by the addressee only. If the message is received by anyone other than the addressee, please return the message to the sender by replying to it and then delete the message from your computer. Internet e-mails are not necessarily secure. The Royal Bank of Scotland plc does not accept responsibility for changes made to this message after it was sent. Whilst all reasonable care has been taken to avoid the transmission of viruses, it is the responsibility of the recipient to ensure that the onward transmission, opening or use of this message and any attachments will not adversely affect its systems or data. No responsibility is accepted by The Royal Bank of Scotland plc in this regard and the recipient should carry out such virus and other checks as it considers appropriate. Visit our websites at: www.rbs.com www.rbs.com/gbm www.rbsgc.com **************************************************************************** ******* |