Motivation
Mule
is an ESB and it would be useful to embed QuickFIX/J as a transport. We could then leverage the routing capability of Mule to and from JMS, databases etc to provide the integration features available in commercal FIX engines like TransactTools
and CameronFIX
Implementation Notes
A transport connector
gets configured directly from the Mule XML and then it would register each session as an endpoint
such as:
- fix://SenderCompID.TargetCompID&version=4.2
When defining the inbound endpoints for a Mule component, we can support wildcards to let multiple sessions route to a single component:
- fix://SenderCompID.*&version=4.2
- fix://*.*&version=4.2
If the component implemented Application then it could then crack the message, letting existing code be more easily migrated into Mule.
Message Payload
The message would be passed around internally in its raw byte[] form. Fields would be exposed as properties and repeating groups as attachment.