In this section:

Introduction

The Parasoft FIX Message Listener enables a virtual asset to receive and respond to messages over FIX (Financial Information eXchange). FIX versions 4.0 - 5.0 SP2 and ICE 4.8 are supported.

Requirements

  • One of the following FIX Message Formats: 4.0, 4.1, 4.2, 4.4, 5.0, 5.0 SP2, or ICE 4.8. You can download a format from the Parasoft customer portal.
  • The FIX Transport is required for FIX transport support in SOAtest messaging client tools.

Installation

The tool can be installed from the UI or command line. 

UI Installation

  1. Go to Parasoft > Preferences and click System Properties.
  2. Click Add JARs and select the FIXListener.jar file. Once this jar file is added to the SOAtest/Virtualize classpath, all of the required dependencies will be loaded.
  3. Repeat this process to install any FIX formats you are using.
  4. Click Apply.
  5. Restart SOAtest/Virtualize.

Command Line Installation

Add the FIXListener.jar file to the system.properties.classpath property in your settings properties file. For example:

system.properties.classpath=<PATH_TO_JAR>/FIXListener.jar

Once the classpath is modified, all of the required dependencies will be loaded.

Usage

Once the FIX message listener is installed, FIX will be available in the Transports > Custom tab of the Virtual Asset configuration panel. Open this panel by double-clicking a virtual asset’s Virtualize Server node.

If multiple custom listeners are available, you can select the one you want to use from the Select Implementation box:

Configuration

You can configure the following settings.

Settings Options

Either Acceptor settings path or Socket accept port is required. Logging level is optional.

Accepter settings path

Specify the absolute path to the cfg properties file that defines how the FIX engine in the Virtualize server should accept connections from clients. You can review example acceptor cfg file below.

For a detailed definition of the properties, see the following documentation:

https://www.quickfixj.org/usermanual/1.5.3/usage/configuration.html

Either Acceptor settings path or Socket accept port is required.

Socket accept port

If specified, the FIX engine will accept connections on this port and the other acceptor property values would assume default values. In particular, the option would accept requests of any SenderCompID and TargetCompID values. Either Acceptor settings path or Socket accept port is required.

Reset persistent message store upon re-deploy

If set to true, the asset will reset the session on the listener so that the expected message number from the client will be set to 1 when the asset is redeployed. This allows the listener to be reset by being redeployed without restarting the entire Virtualize server.

Default is n for no.

Logging levelSpecify the logging level. You can enter 0 (least verbose), 1, or 2 (most verbose). This is optional.

Example Acceptor cfg File

The following is an example acceptor cfg file.

[default]
FileStorePath=/tmp/fix/virt/acceptor
FileLogPath=/tmp/fix/logs
ConnectionType=acceptor
StartTime=00:00:00
EndTime=00:00:00
HeartBtInt=30
ReconnectInterval=60
SenderCompID=VIRT
TargetCompID=CLIENT
UseDataDictionary=Y
ValidateIncomingMessage=N
RejectInvalidMessage=N
ResetOnLogon=Y


[session] 
BeginString=FIX.4.4 
SocketAcceptPort=9889 
DataDictionary=FIX44.xml

Recording Options

The Recording? option must be enabled for all other options to be applicable. If recording is enabled, Proxy initiator settings path and TargetCompID are required.

Recording?

Enables/disables recording. Enter y to enable recording or n to disable recording.

If recording is enabled, responders are not used and Virtualize will connect to another FIX engine for the response, instead.

Proxy initiator settings path

Specify the absolute path to the cfg properties file that defines how Virtualize should initiate connections to the FIX engine.

An example initiator cfg file is provided below. For a detailed definition of the properties, see the following documentation:

https://www.quickfixj.org/usermanual/1.5.3/usage/configuration.html

TargetCompIDSpecify the target comp ID that is used to identify the FIX client application.
Proxy response timeoutSpecify the number of milliseconds that Virtualize should wait for request responses. The default is 30000.
Number of responses to wait forSpecify the number of responses that this request is expected to trigger—and that Virtualize should wait for. The default is 1.
Record and return all responsesIf the value specified in the Number of responses to wait for option is greater than 1, this option determines whether all responses should be returned by Virtualize. Enter y for yes. Enter n for no and only the last response received will be returned. The default is n.
Traffic file pathSpecify the absolute path to the file that should record the traffic being passed between the actual client and the FIX engine.

Example Initiator cfg File

The following is an example initiator cfg file. In the FIX request message, SenderCompID and TargetCompID must match the corresponding values in the initiator cfg file.

[default]
#FileStorePath=/tmp/fix/virt/initiator
#FileLogPath=/tmp/fix/logs
ConnectionType=initiator
StartTime=00:00:00
EndTime=00:00:00
HeartBtInt=30
ReconnectInterval=60
SenderCompID=CLIENT
TargetCompID=VIRT
UseDataDictionary=Y
#ValidateIncomingMessage=N
#RejectInvalidMessage=N
SocketConnectHost=localhost
ResetOnLogon=Y
[session]
BeginString=FIX.4.4
SocketConnectPort=9889
DataDictionary=FIX44.xml

Third-party Content

This extension includes items that have been sourced from third parties as outlined below. 

Additional license details are available in this plugin's licenses folder.

  • No labels