85 return cancelOnDisconnectType_;
97 return tradingSystemName_;
109 return tradingSystemVersion_;
121 return threadingModel_;
133 return receiveSpinningTimeout_;
145 return sendSpinningTimeout_;
161 return messageGrouping_;
187 return licenseStores_;
195 return licenseAlertingDaysBeforeExpiration_;
206 licenseAlertingDaysBeforeExpiration_ = days;
215 return localNetworkInterface_;
244 return storageDirectory_;
258 return localTimeUsage_;
272 return fileBasedStorageSegmentSize_;
284 return asyncFileBasedStorageQueueMaxSize_;
296 return asyncFileBasedStorageThreadAffinity_;
311 return ignoreFileBasedStorageIntegrityErrors_;
323 return logBeforeSending_;
337 return reconnectAttempts_;
349 return reconnectInterval_;
365 return socketReceiveBufferSize_;
380 return reasonableTransmissionTime_;
394 return socketSendBufferSize_;
407 return threadPoolAffinity_;
417 return threadPoolPriority_;
427 return threadPoolPolicy_;
439 return tcpNoDelayOption_;
451 return threadPoolSize_;
463 return keepAliveInterval_;
478 return codTimeoutWindow_;
495 return reportNewMessagesWhileWaitingForMissedMessages_;
510 return localPortRange_;
522 return messagingSchemaVersion_;
542 return enableRxTimestamp_;
636 void processLicenseStores(
const std::string&
licenseStore);
638 std::string accessKey_;
640 unsigned asyncFileBasedStorageQueueMaxSize_;
642 CpuIndexes asyncFileBasedStorageThreadAffinity_;
644 bool createEngineLogFile_;
646 Messaging::UInt64 fileBasedStorageSegmentSize_;
648 Messaging::UInt32 enteringFirm_;
652 bool ignoreFileBasedStorageIntegrityErrors_;
654 unsigned keepAliveInterval_;
656 unsigned codTimeoutWindow_;
658 unsigned licenseAlertingDaysBeforeExpiration_;
660 std::string licenseFilePath_;
664 std::string localNetworkInterface_;
666 bool localTimeUsage_;
668 bool logBeforeSending_;
670 std::string logFileName_;
672 unsigned messageGrouping_;
674 unsigned reasonableTransmissionTime_;
676 int receiveSpinningTimeout_;
678 unsigned reconnectAttempts_;
680 unsigned reconnectInterval_;
682 bool reportNewMessagesWhileWaitingForMissedMessages_;
684 int sendSpinningTimeout_;
688 int socketReceiveBufferSize_;
690 int socketSendBufferSize_;
692 std::string storageDirectory_;
694 bool tcpNoDelayOption_;
700 int threadPoolPolicy_;
702 int threadPoolPriority_;
704 unsigned threadPoolSize_;
706 std::string tradingSystemName_;
708 std::string tradingSystemVersion_;
710 std::pair<Port, Port> localPortRange_;
716 bool enableRxTimestamp_;
#define ONIXS_B3_BOE_NODISCARD
#define ONIXS_B3_BOE_EXPORTED
#define ONIXS_B3_BOE_NOTHROW
int socketSendBufferSize() const noexcept
unsigned messageGrouping() const noexcept
SessionSettings & threadPoolSize(unsigned numberOfThreads)
Sets the size of the shared thread pool.
unsigned licenseAlertingDaysBeforeExpiration() const noexcept
SessionSettings & resetToDefaults()
Resets the settings to the default values.
const CpuIndexes & asyncFileBasedStorageThreadAffinity() const noexcept
SessionSettings & ignoreFileBasedStorageIntegrityErrors(bool)
Sets the file-based storage integrity errors checking mode.
SessionSettings & asyncFileBasedStorageQueueMaxSize(unsigned value)
Sets the maximum size of the asynchronous session storage queue.
SessionSettings & reconnectAttempts(unsigned reconnectAttempts)
Sets the maximum number of tries to restore the telecommunications link.
SessionSettings & threadingModel(ThreadingModel::Enum value)
Sets the threading model.
SessionSettings & localTimeUsage(bool)
Messaging::UInt32 enteringFirm() const noexcept
std::string toString() const
int socketReceiveBufferSize() const noexcept
const std::string & localNetworkInterface() const noexcept
SessionSettings & sendSpinningTimeout(unsigned usecTimeout)
Sets the send spinning timeout (microseconds).
unsigned reconnectInterval() const noexcept
SessionSettings & keepAliveInterval(unsigned milliseconds)
SessionSettings & threadPoolPriority(int priority)
Sets the thread pool priority.
SessionSettings & socketSendBufferSize(int bufferSize)
bool reportNewMessagesWhileWaitingForMissedMessages() const noexcept
SessionSettings & threadPoolAffinity(const CpuIndexes &cpuIndexes)
Sets the thread pool affinity.
SessionSettings & tradingSystemName(const std::string &value)
Sets the trading system name.
unsigned threadPoolSize() const noexcept
SessionSettings & messageGrouping(unsigned value)
Sets the message grouping mode.
SessionSettings & reportNewMessagesWhileWaitingForMissedMessages(bool report)
SessionSettings & reconnectInterval(unsigned value)
SessionSettings & asyncFileBasedStorageThreadAffinity(const CpuIndexes &cpuIndexes)
Specifies the CPU index(es) for affinity of the asynchronous session storage threads.
SessionSettings & socketReceiveBufferSize(int bufferSize)
int threadPoolPolicy() const noexcept
SessionSettings & enableRxTimestamp(bool value)
unsigned asyncFileBasedStorageQueueMaxSize() const noexcept
const CpuIndexes & threadPoolAffinity() const noexcept
Messaging::SchemaVersion messagingSchemaVersion() const noexcept
SessionSettings & localNetworkInterface(const std::string &value)
SessionSettings & fileBasedStorageSegmentSize(Messaging::UInt64 value)
Sets the segment size for file-based session storage.
SessionSettings & useSpinLock(bool value)
Sets the value of the option to the option to use spin lock.
unsigned receiveSpinningTimeout() const noexcept
SessionSettings & reasonableTransmissionTime(unsigned percentage)
Messaging::SessionID sessionId() const noexcept
unsigned reconnectAttempts() const noexcept
unsigned codTimeoutWindow() const noexcept
SessionSettings & load(const std::string &configFile)
SessionSettings & sessionId(Messaging::SessionID value)
Sets the session id that was assigned by the exchange.
SessionSettings & logBeforeSending(bool before)
bool enableRxTimestamp() const noexcept
bool tcpNoDelayOption() const noexcept
SessionSettings & storageDirectory(const std::string &value)
SessionSettings & codTimeoutWindow(unsigned milliseconds)
SessionSettings & logFileName(const std::string &value)
Specifies the Handler log file name.
SessionSettings & accessKey(const std::string &value)
Sets the token provided by B3 for the FIXP session.
SessionSettings & localPortRange(PortRange range)
Sets the range of the local ports to be used.
SessionSettings & messagingSchemaVersion(Messaging::SchemaVersion schema)
bool ignoreFileBasedStorageIntegrityErrors() const noexcept
Messaging::UInt64 fileBasedStorageSegmentSize() const noexcept
SessionSettings & receiveSpinningTimeout(unsigned usecTimeout)
Sets the receive spinning timeout (microseconds).
const std::string & tradingSystemName() const noexcept
SessionSettings & addLicenseStore(const std::string &value)
Adds the path to the folder that contains license file(s).
bool logBeforeSending() const noexcept
SessionSettings & tcpNoDelayOption(bool value)
Sets the value of the option to improve latency at the expense of message throughput (the TCP_NODELAY...
Messaging::CancelOnDisconnectType::Enum cancelOnDisconnectType() const noexcept
SessionSettings & tradingSystemVersion(const std::string &value)
Sets the trading system version.
SessionSettings & cancelOnDisconnectType(Messaging::CancelOnDisconnectType::Enum value)
Sets the criteria used to initiate cancel on disconnect mechanism by the gateway.
const std::string & tradingSystemVersion() const noexcept
SessionSettings & licenseStore(const std::string &value)
Sets the path to the folder that contains license file(s).
const LicenseStores & licenseStores() const noexcept
SessionSettings & enteringFirm(Messaging::UInt32 value)
Sets the broker firm id that will enter orders.
SessionSettings & threadPoolPolicy(int policy)
Sets the thread pool policy.
SessionSettings & licenseAlertingDaysBeforeExpiration(unsigned days)
PortRange localPortRange() const noexcept
int threadPoolPriority() const noexcept
static const int UseOsDefaultSocketBufferSize
Specifies the usage of the operating system default socket buffer size.
unsigned sendSpinningTimeout() const noexcept
unsigned keepAliveInterval() const noexcept
bool localTimeUsage() const noexcept
bool useSpinLock() const noexcept
const std::string & storageDirectory() const noexcept
std::vector< std::string > LicenseStores
Folders that contain license file(s).
const std::string & accessKey() const noexcept
ThreadingModel::Enum threadingModel() const noexcept
unsigned reasonableTransmissionTime() const noexcept
const std::string & logFileName() const noexcept
MessageHeader::Version SchemaVersion
SBE-encoded data version type.
std::pair< Port, Port > PortRange
std::set< CpuIndex > CpuIndexes
Enum
Criteria used to initiate cancel on disconnect mechanism by the gateway.
@ DoNotCancelOnDisconnectOrTerminate
DoNotCancelOnDisconnectOrTerminate.
Default session settings.
static const int ReasonableTransmissionTime
static const bool TcpNoDelayOption
static const char LogFileName[]
static const bool EnableRxTimestamp
static const int ThreadPoolSize
static const bool ReportNewMessagesWhileWaitingForMissedMessages
static const int ReceiveSpinningTimeout
static const bool IgnoreFileBasedStorageIntegrityErrors
static const bool CreateLogFile
static const Messaging::CancelOnDisconnectType::Enum CancelOnDisconnectType
static const bool UseSpinLock
static const unsigned MessageGrouping
static const unsigned AsyncFileBasedStorageQueueMaxSize
static const unsigned long long FileBasedStorageSegmentSize
static const int ReconnectAttempts
static const int SendSpinningTimeout
static const bool LogBeforeSending
static const char LogDir[]
static const int SocketReceiveBufferSize
static const bool LocalTimeUsage
static const unsigned LicenseAlertingDaysBeforeExpiration
static const int CodTimeoutWindow
static const int KeepAliveInterval
static const char LicenseStore[]
static const int SocketSendBufferSize
static const int ReconnectInterval
static const ThreadingModel::Enum ThreadingModelValue
The keys that are used to load settings from the configuration file.
static const char * AsyncFileBasedStorageThreadAffinity
= "AsyncFileBasedStorage.ThreadAffinity"
static const char * ReconnectAttempts
= "Reconnect.Attempts"
static const char * SocketReceiveBufferSize
= "Socket.ReceiveBufferSize"
static const char * UseSpinLock
= "UseSpinLock"
static const char * LicenseStore
= "LicenseStore"
static const char * EnableRxTimestamp
= "EnableRxTimestamp"
static const char * ThreadPoolAffinity
= "ThreadPool.Affinity"
static const char * ReasonableTransmissionTime
= "ReasonableTransmissionTime"
static const char * AsyncFileBasedStorageQueueMaxSize
= "AsyncFileBasedStorage.QueueMaxSize"
static const char * EnteringFirm
= "EnteringFirm"
static const char * SendSpinningTimeout
= "SendSpinningTimeout"
static const char * LicenseFile
= "LicenseFile"
static const char * ThreadingModel
= "ThreadingModel"
static const char * MessageGrouping
= "MessageGrouping"
static const char * CodTimeoutWindow
= "CodTimeoutWindow"
static const char * TradingSystemName
= "TradingSystem.Name"
static const char * LogBeforeSending
= "Log.BeforeSending"
static const char * TcpNoDelayOption
= "TcpNoDelayOption"
static const char * CancelOnDisconnectType
= "CancelOnDisconnectType"
static const char * KeepAliveInterval
= "KeepAliveInterval"
static const char * IgnoreFileBasedStorageIntegrityErrors
= "IgnoreFileBasedStorageIntegrityErrors"
static const char * LocalTimeUsage
= "LocalTimeUsage"
static const char * SessionId
= "SessionId"
static const char * ThreadPoolPolicy
= "ThreadPool.Policy"
static const char * SocketSendBufferSize
= "Socket.SendBufferSize"
static const char * ThreadPoolPriority
= "ThreadPool.Priority"
static const char * ReportNewMessagesWhileWaitingForMissedMessages
= "ReportNewMessagesWhileWaitingForMissedMessages"
static const char * FileBasedStorageSegmentSize
= "FileBasedStorageSegmentSize"
static const char * LicenseAlertingDaysBeforeExpiration
= "LicenseAlertingDaysBeforeExpiration"
static const char * LocalNetworkInterface
= "LocalNetworkInterface"
static const char * LogFileName
= "Log.FileName"
static const char * ReconnectInterval
= "Reconnect.Interval"
static const char * StorageDirectory
= "Log.Directory"
static const char * AccessKey
= "AccessKey"
static const char * MessagingSchemaVersion
= "MessagingSchemaVersion"
static const char * ThreadPoolSize
= "ThreadPool.Size"
static const char * LocalPortRange
= "LocalPortRange"
static const char * ReceiveSpinningTimeout
= "ReceiveSpinningTimeout"
static const char * TradingSystemVersion
= "TradingSystem.Version"
@ Dedicated
Each session has a sender thread and a receiving thread.