synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hiranya Jayathilaka (JIRA)" <j...@apache.org>
Subject [jira] Updated: (SYNAPSE-265) Samples for FIX Transport Implementation
Date Tue, 01 Apr 2008 05:50:24 GMT

     [ https://issues.apache.org/jira/browse/SYNAPSE-265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Hiranya Jayathilaka updated SYNAPSE-265:
----------------------------------------

    Attachment: fix-sample.patch

Attached herewith is an svn diff of the samples module.

A possible configuration to be used with this sample (FIXClient) is;

<proxy name="FIXProxy">
        
        <target>
	    <endpoint>
		<address uri="fix://localhost:19876?BeginString=FIX.4.0&amp;SenderCompID=SYNAPSE&amp;TargetCompID=EXEC"/>
	    </endpoint>
	
            <inSequence>
            	<property name="transport.fix.ServiceName" value="FIXProxy" scope="axis2-client"
/>
            	<log level="full"/>
            </inSequence>
             
            <outSequence>
            	<log level="full"/>
            	<send/>
            </outSequence>
            
        </target>

       	<parameter name="transport.fix.InitiatorConfigURL">file:/home/hiranya/Desktop/fix-tests/fix-config/synapse-sender.cfg</parameter>
	<parameter name="transport.fix.InitiatorMessageStore">file</parameter>
	<parameter name="transport.fix.SendAllToInSequence">false</parameter>
	
</proxy>

The FIXClient sends a FIX order request embedded in a SOAP message over HTTP. Synapse extracts
the FIX message and sends it to the target EPR over FIX using an initiator. The first response
coming from the order processing application at the other end will be sent back via HTTP to
the FIXClient.

The property transport.fix.ServiceName at the in sequence is required by the transport and
its value must be equal to the service name. The parameter transport.fix.SendAllToInSequence
should be set to false otherwise Synapse will inject all the messages (including responses)
to the in sequence.

This sample has been tested against the 'Executor' sample application that ships with Quickfix/J

> Samples for FIX Transport Implementation
> ----------------------------------------
>
>                 Key: SYNAPSE-265
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-265
>             Project: Synapse
>          Issue Type: Improvement
>          Components: Transports
>    Affects Versions: 1.2
>         Environment: Any
>            Reporter: Hiranya Jayathilaka
>             Fix For: 1.2
>
>         Attachments: fix-sample.patch
>
>
> Introduction to FIX Proxy Services
> <proxy name="OrderProcesserProxy40" transports="fix">
>         <target>
> 	        <endpoint>
>                 	<address uri="fix://localhost:19876?BeginString=FIX.4.0&amp;SenderCompID=SYNAPSE&amp;TargetCompID=EXEC"/>
>                 </endpoint>
>         	<inSequence><log level="full"/></inSequence>
>         	<outSequence><log level="full"/><send/></outSequence>
>         </target>
>         
>         <parameter name="transport.fix.AcceptorConfigURL">file:/home/hiranya/Desktop/fix-tests/fix-config/fix-synapse.cfg</parameter>
>         <parameter name="transport.fix.AcceptorMessageStore">file</parameter>
              
>         <parameter name="transport.fix.InitiatorConfigURL">file:/home/hiranya/Desktop/fix-tests/fix-config/synapse-sender.cfg</parameter>
>         <parameter name="transport.fix.InitiatorMessageStore">file</parameter>
          
> </proxy>
> Objective: Introduction to FIX proxy services. Shows how two FIX applications (an initiator
and an acceptor) can be made to communicate via Synapse
> =======
> Description
> =======
> This proxy service will listen for incoming FIX messages using an acceptor and then will
forward them using an initiator.
> The transport.fix.AcceptorConfigURL parameter points to a FIX configuration file for
the acceptor. The transport.fix.InitiatorConfigURL parameter points to a FIX configuration
file for the initiator. Both these configuration files must be valid Quickfix/J configuration
files as specified in the Quickfix/J documentation (http://www.quickfixj.org/quickfixj/usermanual/usage/configuration.html).
> The configuration file for acceptor could contain something like the following.
> [default]
> FileStorePath=/home/hiranya/Desktop/fix-tests/fix-sessions/synapse
> FileLogPath=/home/hiranya/Desktop/fix-log
> ConnectionType=acceptor
> StartTime=00:00:00
> EndTime=00:00:00
> HeartBtInt=30
> ValidOrderTypes=1,2,F
> SenderCompID=SYNAPSE
> TargetCompID=BANZAI
> UseDataDictionary=Y
> DefaultMarketPrice=12.30
> [session]
> BeginString=FIX.4.0
> SocketAcceptPort=9876
> The configuration file for initiator could contain something like the following.
> [default]
> FileStorePath=/home/hiranya/Desktop/fix-tests/fix-sessions/synapse-sender
> StartTime=00:00:00
> EndTime=00:00:00
> HeartBtInt=30
> ReconnectInterval=5
> Parameters defined in the target EPR of the proxy service also contains some parameter
definitions. These will be used to create the initiator and hence those values can be omitted
from the initiator configuration file.
> The transport.fix.AcceptorMessageStore and transport.fix.InitiatorMessageStore parameters
indicate that a file based message store should be used with both the acceptor and initiator.
These are optional parameters and in absence of them Synapse will use memory based message
stores. Other acceptable values for these parameters are 'jdbc','memory' and 'sleepycat'.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Mime
View raw message