The Simple XML Socket Transport Adaptor (hereinafter SXS) is intended for communication with FIXEdge from third-part applications. The main goal of this adaptor is quick and easy building of the network applications that communicates using XML messages.
SXS adaptor is distributed as a zip-archive with the name SXSAdaptor_xx.zip, where xx stands for SXS adaptor version. To install SXS adaptor unpack the .zip file and copy SXSAdaptorAddin.dll into the FIXEdge's \bin folder. See the sections Configuration in order to learn how to configure SXS adaptor. After the SXS adaptor is configured the FIXEdge need to be started.
SXS adaptor configured using following properties:
Contains path and name of the SXS adaptor dll. Property is required
Adaptor's name. Property is required
Type of the adaptor library, has contains value 'DLL'. Property is required
Listen port, that SXS adaptor use to accept client's connections. Integer value, should be > 0. Property is required
This parameter controls how often SXS adaptor sends HeardBeat messages. HeardBeat messages used to verify that the another peer is alive. Time is seconds.
This parameter controls how long SXS adaptor waits for the HeardBeat message responce. When HeardBeat message response weren't receivedheartbeatInterval*(1 + reasonableTransmissionTime/100) time interval, SXS adaptor makes decision that client isn't alive and closes session. Value in percents, > 0 and <100.
Note that all changes in properties file are applied only after FIXEdge restart.
Integration with FIXEdge
To integrate SXS adaptor into the FIXEdge, the following steps have to be executed:
- Open FixEdge properties file (FIXEdge.properties by default).
- Find 'TransportLayer.TransportAdapters' property
- Add 'TransportLayer.TransportAdapters' property in case it isn't exists
Set 'TransportLayer.SXSAdaptorDLL' to the value of the 'TransportLayer.TransportAdapters' property:
- If 'TransportLayer.TransportAdapters' property already has value - append ',TransportLayer.SXSAdaptorDLL' to the value:
Add property 'TransportLayer.SXSAdaptorDLL.Description' with value - SXS adaptor name:
Add property 'TransportLayer.SXSAdaptorDLL.DllName' with value - path to the SXS adaptor dll:
Add property 'TransportLayer.SXSAdaptorDLL.Type' with value 'DLL':
Add property 'TransportLayer.SXSAdaptorDLL.listenPort' with value - port where SXS adaptor will accept incoming connections:
Add property 'TransportLayer.SXSAdaptorDLL.heartbeatInterval' with value - delay between 2 HeardBeat message sending:
Add property 'TransportLayer.SXSAdaptorDLL.reasonableTransmissionTime, like this:
- Restart FixEdge to apply changes
After changes the FixEdge properties file may looks like this:
Monitoring (view logs)
By default SXS adaptor puts log messages into the FIXEdge log. To configure SXS adaptor logging into the separate file following step need to execute:
- Open FixEdge property file
Add property 'Log.SXSAdaptor.File.Name' with value - path and name of the SXS adaptor log file.
- Restart FixEdge
When SXS adaptor start succeeds following record will be wrote into the log file (xxx - the version of the SXS adaptor):