OnixS Euronext XDP Handler for C++  1.29.2.6
Public Member Functions | Public Attributes | Friends
Settings Struct Reference

Handler's configuration settings. More...

List of all members.

Public Member Functions

ONIXS_API Settings ()
 Constructor.
virtual ONIXS_API ~Settings ()
 Destructor.
std::string ONIXS_API toString () const
 Returns the text representation.

Public Attributes

std::string servicesConfigurationFile
 Path to the channels configuration XML file.
std::string fastTemplatesFile
 Path to Euronext FAST templates XML file.
std::string standingDataDirectory
 Path to folder with latest standing data files.
std::string licenseDirectory
 Path to the License directory.
std::string logDirectory
 Log files are stored in this directory.
std::string logFileNamePrefix
 Log file name will be <prefix><service ##>.log.
LogSettings::Enum logSettings
 Combine LogSettings enum values to configure the logger.
LogLevel::Enum logLevel
 Log verbosity.
uint64_t logFileMaxSize
 Log file max size.
bool buildInternalOrderBook
 Option to manage the internal Order Book.
uint32_t maximumNumberOfRepeatingGroupEntries
 Maximum number of repeating group entries.
std::string networkInterface
 Specifies one or more network interfaces to use while joining the multicast group or sending TCP requests; use semi-colon delimited list if more than one.
std::string networkInterfaceA
 Specifies one or more network interfaces to use for "A" feeds while joining the multicast group; use semi-colon delimited list if more than one.
std::string networkInterfaceB
 Specifies one or more network interfaces to use for "B" feeds while joining the multicast group; use semi-colon delimited list if more than one.
std::string tcpNetworkInterface
 Specifies one or more network interfaces to use for TCP connections while sending Refresh or Retransmission request;.
bool recordReceivingTimestamp
 Option to record the first time the source multicast packet is received from the kernel - before it is decompressed or processed.
bool useRealtimeFeedA
 Option to use the Realtime feed "A".
bool useRealtimeFeedB
 Option to use the Realtime feed "B".
bool useRefreshFeedA
 Option to use the Refresh feed "A".
bool useRefreshFeedB
 Option to use the Refresh feed "B".
size_t tcpReceiveBufferSize
 Option to determine the size of a TCP socket's receive buffer that is used by the underlying transport.
unsigned tcpReceiveTimeout
 Option to determine the timeout (in seconds) between incoming TCP data to detect the "zombie" state of TCP connection.
size_t udpBufferSize
 Option to determine the size of a UDP socket's receive buffer that is used by the underlying transport.
UdpSourceSettings::Enum udpSourceSettings
 Configure the behavior of the multicast feeds in case of receiving of UDP packets from unknown source (not mentioned in Euronext feed configuration file).
uint32_t udpFeedTimeout
 Timeout in seconds to wait packets on UDP feeds. Default value is 60 sec.
uint32_t retransmissionMaxPackets
 Upper bound of packet gap for retransmission.
uint32_t retransmissionReconnectNumber
 Number of attempts to connect to retransmission.
uint32_t retransmissionReconnectTimeout
 Timeout in seconds between attempts to connect to retransmission. Default value is 1 sec.
uint32_t refreshReconnectNumber
 Number of attempts to connect to refresh.
uint32_t maximumInternalQueueLength
 Maximum length of internal data queue (in packets).
bool ignoreStandingDataUpdates
 Ignore updates on Standing Data feed.
SourceIdPoolsourceIdPool
 Source Id Pool.
bool useNaturalRefresh
 Use natural refresh if refresh service is unavailable.
bool skipRecoveryIfNaturalRefreshUsed
 Dont used recovery services if natural refresh is activated (useNaturalRefresh == true).
uint32_t responseTimeout
 Timeout in seconds to wait retransmission or refresh response. Default value is 60 sec.

Friends

ONIXS_API std::ostream & operator<< (std::ostream &os, const Settings &settings)
 Stream output operator.

Detailed Description

Handler's configuration settings.


Member Data Documentation

Option to manage the internal Order Book.

Default value is true, it means Handler builds own internal Order Book. If this value is set to false then Handler will not build own Order Book, so referenced security objects in the user callbacks will contain empty Order Books collections.

std::string fastTemplatesFile

Path to Euronext FAST templates XML file.

Note:
The default value is "EuronextXdpFastTemplates.xml".

Ignore updates on Standing Data feed.

Given Handler will not connect to Sanding Data feed if this option is true. Should be be used for diagnostic purposes only. Default value is false.

uint64_t logFileMaxSize

Log file max size.

Note:
The default value is 1GB

Log verbosity.

Note:
The default value is LogLevel::Info

Maximum length of internal data queue (in packets).

This setting could be used to limit the length of realtime data queue during refresh procedure. According to Euronext XDP specs the Handler should accumulate realtime data during refresh cycle. This settings can help avoid an infinite growth of queue in case of any network troubles in the Refresh channel, while the Realtime channel will generate a lot of traffic.

Note:
The default value is 100000. Zero value means no any limitation (is not recommended).

Maximum number of repeating group entries.

This setting could be used to detect mismatch between the FAST template that was used for message encoding and the FAST template that is used for message decoding.

Note:
The default value is 1000.
std::string networkInterface

Specifies one or more network interfaces to use while joining the multicast group or sending TCP requests; use semi-colon delimited list if more than one.

Note:
On Linux the network interface is specified by its name, on Windows - by IP address.
If the value is empty or absent then the default networking interface is used.
See also:
networkInterfaceA_, networkInterfaceB_.
std::string networkInterfaceA

Specifies one or more network interfaces to use for "A" feeds while joining the multicast group; use semi-colon delimited list if more than one.

Note:
On Linux the network interface is specified by its name, on Windows - by IP address.
If the value is empty or absent then the Settings::networkInterface_ value is used.
std::string networkInterfaceB

Specifies one or more network interfaces to use for "B" feeds while joining the multicast group; use semi-colon delimited list if more than one.

Note:
On Linux the network interface is specified by its name, on Windows - by IP address.
If the value is empty or absent then the Settings::networkInterface_ value is used.

Option to record the first time the source multicast packet is received from the kernel - before it is decompressed or processed.

Note:
It is highly recommended to run any performance/latency benchmarks in Release mode only.
Warning:
Timestamp recording could increase the latency, so it is NOT recommended to activate this option in Production.
See also:
BookChange::receivingTimestamp()

Number of attempts to connect to refresh.

Default value is 1.

Note:
At least one attempt will be done.

Upper bound of packet gap for retransmission.

If more packets was lost, refresh will be performed. Default value is 1000.

Number of attempts to connect to retransmission.

Default value is 1.

Note:
At least one attempt will be done.

Path to the channels configuration XML file.

Note:
The default value is "nyseliffectsgcurrentconfig.xml".
std::string standingDataDirectory

Path to folder with latest standing data files.

Note:
The default value is "StandingData".
std::string tcpNetworkInterface

Specifies one or more network interfaces to use for TCP connections while sending Refresh or Retransmission request;.

Note:
The TCP network interface is specified by IP address.

Option to determine the size of a TCP socket's receive buffer that is used by the underlying transport.

Value 0 will mean default buffer size assigning by OS during creation of socket.

Option to determine the timeout (in seconds) between incoming TCP data to detect the "zombie" state of TCP connection.

Note:
The default value is 30. Value 0 means infinite timeout.
size_t udpBufferSize

Option to determine the size of a UDP socket's receive buffer that is used by the underlying transport.

Value 0 will mean default buffer size assigning by OS during creation of socket.

Configure the behavior of the multicast feeds in case of receiving of UDP packets from unknown source (not mentioned in Euronext feed configuration file).

Note:
The default value is 0, it means ignorance of such packets without any dump. It is recommended config value for the release environment.

Option to use the Realtime feed "A".

Note:
The default value is 'true'.

Option to use the Realtime feed "B".

Note:
The default value is 'true'.

Option to use the Refresh feed "A".

Note:
The default value is 'true'.

Option to use the Refresh feed "B".

Note:
The default value is 'false'.