Re: [Quickfix-developers] Order routing best practices?
Brought to you by:
orenmnero
From: Oren M. <or...@qu...> - 2006-09-14 17:50:38
|
sendToTarget will return false if it is unable to pass the message to the session for some reason (database failure for instance). The session not being logged on is not an error condition since the message would be potentially resent at the next available time. You can check to see if the session is logged on by looking up the session and calling isLoggedOn(). Since FIX is an asynchronous protocol, you can never be 100% sure that a transaction can/has/will go through. Even if you are logged on when the message is sent, if the sequence numbers are out of sync, there is no way to know when the counterparty will process the message, if they process it at all. In any case you can certainly positively identify when a session is not logged on and re-route appropriately. You just will not be able to assume success until the counterparty responds with an ExecutionReport. --oren > What's the safest/best way to test that a session is logged on and available? Does SendToTarget return an error code if the=20 > target is not available? Is there a Session Logon status I can query prior to calling SendToTarget? Any suggestions would be=20 > greatly appreciated. |