question

Upvotes
Accepted
1 1 1 1

Multiple servers and services in a single RFA configuration file

Hi everyone,

If we have just one RFA configuration file, is it possible to specify 2 different servers that provide 2 different feeds?

For example, is it possible to include the following details in one RFA configuration file:

# Connection to serverC to get feed C

connectionType = "SSLED"
PortNumber = 8201
serverList = "IP address of serverC that provides feed C"
serviceList = feed C

# Connection to serverX to get feed X
connectionType = "SSLED"
PortNumber = 8101
serverList = "IP address of serverX that provide feed X"
serviceList = feed X

And if this is possible, would someone kindly guide me on how to use RFA API to look at this single RFA file and the 2 feeds C and X?
For example, what parameters do we specify in the RFA methods, to distinguish between feed C and feed X etc


Thank you very much.

treprfarfa-apijavaconfiguration
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
Accepted
23.7k 84 10 22

Hi @s0nny

Assuming that feed C and feed X are published using different service names, you can create two Connections and then reference those two connections in the Session that you acquire() in your code

e.g.

\Connections\Connection_SSLED1\PortNumber             = 8101
\Connections\Connection_SSLED1\UserName               = "<username>"
\Connections\Connection_SSLED1\ServerList             = "<serverList>"
\Connections\Connection_SSLED1\connectionType         = "SSLED"

\Connections\Connection_SSLED2\PortNumber             = 8201
\Connections\Connection_SSLED2\UserName               = "<username>"
\Connections\Connection_SSLED2\ServerList             = "<serverList>"
\Connections\Connection_SSLED2\connectionType         = "SSLED"

\Sessions\Session1\connectionList  = "Connection_SSLED1,Connection_SSLED2"

In your code

pSession = Session::acquire(RFA_String("Session1", 0, false));

Note that the serviceList parameter is normally only used for remapping service names e.g. if two servers are both publishing services with the same name.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
1 1 1 1

Thank you very much Umer,


As i don't have access to the RFA folders belonging to other teams, would you share or let me know where to find the RFA Java document?


So as to understand more about the acquire() method.
I assume 0 means the first parameter in connectionList?


icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvote
23.7k 84 10 22

Hi @s0nny

The RFA Java documentation is available at Documentation | Refinitiv Developers

However, as you are working with the Legacy SSLED interface, you may find you have to download an older RFA version and extract the documentation from the Legacy\Docs folder on the zip file.

The RFA config guide will contain further details on the config file parameters and the Developer guide will have more details on the Session::acquire usage.

The above config and code snippet I quoted was for RFA C++, for RFA Java the code would be something like:

_session = Session.acquire("Session1");

Not sure what you mean about first parameter in the Session list?

When you acquire a session, you are 'establishing a connection' between your application and both the servers. Once you acquire this single session, you can use that session to subscribe instruments from both services by setting the required service name in the MarketDataItemSub request.

If, however, you want to use separate sessions for each server - you are can do so, by defining 2 sessions - one for each connection and then acquiring each session individually.


icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.