Note: The component can be used to send/receives messages to a FIX server.
URI format
quickfix-server:config file
quickfix-client:config file
Where config file is the location (in your classpath) of the quickfix configuration file used to configure the engine at the startup.
Note: Information about parameters available for quickfix can be found on QuickFixJ web site.
The quickfix-server endpoint must be used to receive from FIX server FIX messages and quickfix-client endpoint in the case that you want to send messages to a FIX gateway.
Warning: You cannot use a quickfix engine to send or receive messages in both direction as the FIX protocol handle logon/logout sessions with heartbeat messages which are send to verify if the server or client is still alive in only one direction.
Exchange data format
The QuickFixJ engine is like CXF component a messaging bus using MINA as protocol layer to create the socket connection with the FIX engine gateway.
When QuickFixJ engine receives a message, then it create a QuickFix.Message instance which is next received by the camel endpoint. This object is a 'mapping object' created from a FIX message formatted initially as a collection of key value pairs data. You can use this object or you can use the method 'toString' to retrieve the original FIX message.
Note: Alternatively, you can use camel bindy dataformat to transform the FIX message into your own java POJO
When a message must be send to QuickFix, then you must create a QuickFix.Message instance.
Samples
Direction : to FIX gateway
<route>
<from uri="activemq:queue:fix"/>
<bean ref="fixService" method="createFixMessage" /> <to uri="quickfix-client:META-INF/quickfix/client.cfg" />
Direction : from FIX gateway
<from uri="quickfix-server:META-INF/quickfix/server.cfg"/> <bean ref="fixService" method="parseFixMessage" /> <to uri="uri="activemq:queue:fix"/>" />
See Also