OnixS C++ CME iLink 3 Binary Order Entry Handler  1.18.0
API Documentation
CgwSession Class Reference

#include <OnixS/CME/iLink3/Session.h>

Public Member Functions

 CgwSession (const SessionSettings &settings, SessionListener *listener, SessionStorageType::Enum storageType=SessionStorageType::FileBased, SessionStorage *storage=nullptr, UInt64 uuid=UndefinedUuid, const std::string &customKey="")
 
 CgwSession (SessionReactor &stack, const SessionSettings &settings, SessionListener *listener, SessionStorageType::Enum storageType=SessionStorageType::FileBased, SessionStorage *storage=nullptr, UInt64 uuid=UndefinedUuid, const std::string &customKey="")
 
- Public Member Functions inherited from Session
 Session (const SessionSettings &settings, int marketSegmentId, SessionListener *listener, SessionStorageType::Enum storageType=SessionStorageType::FileBased, SessionStorage *storage=nullptr, UInt64 uuid=UndefinedUuid, const std::string &customKey="")
 
 Session (SessionReactor &stack, const SessionSettings &settings, int marketSegmentId, SessionListener *listener, SessionStorageType::Enum storageType=SessionStorageType::FileBased, SessionStorage *storage=nullptr, UInt64 uuid=UndefinedUuid, const std::string &customKey="")
 
 ~Session ()
 
UInt64 uuid () const noexcept
 
std::string id () const
 
int marketSegmentId () const noexcept
 
std::string customKey () const
 
bool negotiated () const
 
Sessionnegotiated (bool negotiated)
 
Messaging::FTI::Enum faultToleranceIndicator () const
 
SessionfaultToleranceIndicator (Messaging::FTI::Enum value)
 
Sessionconnect (const std::string &host, Port port)
 
Threading::SharedFuture< void > connectAsync (const std::string &host, Port port)
 
Sessiondisconnect (const std::string &reason="")
 
Threading::SharedFuture< void > disconnectAsync (const std::string &reason="")
 
template<typename SbeMessageType , size_t MaxMessageSize, typename MessageInitializer >
Sessionsend (Messaging::MessageHolder< SbeMessageType, MaxMessageSize, MessageInitializer > &msg, Messaging::Timestamp sendingTime=UtcWatch::now())
 
template<typename SbeMessageType , size_t MaxMessageSize, typename MessageInitializer >
Sessionsend (Messaging::MessageHolder< SbeMessageType, MaxMessageSize, MessageInitializer > &&msg, Messaging::Timestamp sendingTime=UtcWatch::now())
 
template<typename SbeMessageType , size_t MaxMessageSize, typename MessageInitializer >
Sessionsend (MessageBatch< SbeMessageType, MaxMessageSize, MessageInitializer > &msgs, Messaging::Timestamp sendingTime=UtcWatch::now(), size_t maxPacketSize=CmeMaxPacketSize)
 
Sessionsend (MessageBatchCombiner &msgs, Messaging::Timestamp sendingTime=UtcWatch::now(), size_t maxPacketSize=CmeMaxPacketSize)
 
SessionsendSequenceMessage (Messaging::KeepAliveLapsed::Enum keepAliveLapsed=Messaging::KeepAliveLapsed::Lapsed)
 
template<typename SbeMessageType , size_t MaxMessageSize>
SessionwarmUp (Messaging::MessageHolder< SbeMessageType, MaxMessageSize > &msg, Messaging::Timestamp sendingTime=UtcWatch::now(), int warmupFlags=0)
 
template<typename SbeMessageType , size_t MaxMessageSize, typename MessageInitializer >
SessionwarmUp (MessageBatch< SbeMessageType, MaxMessageSize, MessageInitializer > &msgs, Messaging::Timestamp sendingTime=UtcWatch::now(), size_t maxPacketSize=CmeMaxPacketSize, int warmupFlags=0)
 
SessionwarmUp (MessageBatchCombiner &msgs, Messaging::Timestamp sendingTime=UtcWatch::now(), size_t maxPacketSize=CmeMaxPacketSize, int warmupFlags=0)
 
Sessionthrottle ()
 
size_t tryThrottle ()
 
SessionthrottlingLimit (size_t messagesCount, size_t intervalInMs=1000)
 
std::string remoteHost () const
 
std::string remoteIpAddress () const
 
Port remotePort () const
 
std::pair< Port, PortlocalPortRange () const noexcept
 
SessionlocalPortRange (std::pair< Port, Port > portRange)
 
std::string localNetworkInterface () const
 
SessionlocalNetworkInterface (const std::string &value)
 
Port localPort () const
 
bool tcpNoDelayOption () const
 
SessiontcpNoDelayOption (bool value)
 
const SocketOptionssocketOptions () const
 
SessionsocketOptions (const SocketOptions &options)
 
SessionreceivingThreadAffinity (CpuIndex cpuIndex)
 
SessionreceivingThreadAffinity (const CpuIndexes &cpuIndexes)
 
const CpuIndexesreceivingThreadAffinity () const
 
SessionsendingThreadAffinity (CpuIndex cpuIndex)
 
SessionsendingThreadAffinity (const CpuIndexes &cpuIndexes)
 
const CpuIndexessendingThreadAffinity () const
 
int receivingThreadPriority () const
 
SessionreceivingThreadPriority (int priority)
 
int sendingThreadPriority () const
 
SessionsendingThreadPriority (int priority)
 
int receivingThreadPolicy () const
 
SessionreceivingThreadPolicy (int policy)
 
int sendingThreadPolicy () const
 
SessionsendingThreadPolicy (int policy)
 
unsigned receiveSpinningTimeout () const noexcept
 
SessionreceiveSpinningTimeout (unsigned timeoutInUs)
 
unsigned sendSpinningTimeout () const noexcept
 
SessionsendSpinningTimeout (unsigned timeoutInUs)
 
bool reportNewMessagesWhileWaitingForMissedMessages () const
 
SessionreportNewMessagesWhileWaitingForMissedMessages (bool value)
 
unsigned messageGrouping () const noexcept
 
SessionmessageGrouping (unsigned numberOfMessagesToGroup)
 
SessionStorageType::Enum storageType () const noexcept
 
const std::string & storageId () const noexcept
 
SeqNumber outSeqNum () const noexcept
 
SessionoutSeqNum (SeqNumber nextOutSeqNum)
 
SeqNumber inSeqNum () const
 
SessioninSeqNum (SeqNumber nextExpectedInSeqNum)
 
SeqNumber previousSeqNo () const noexcept
 
SessionpreviousSeqNo (SeqNumber value)
 
Messaging::UInt64 previousUuid () const noexcept
 
SessionpreviousUuid (Messaging::UInt64 value)
 
Sessionreset (bool startOfWeek=false)
 
SessionStateId::Enum state () const
 
Messaging::Timestamp creationTime () const noexcept
 
void flushSessionStorage ()
 
unsigned reconnectAttempts () const
 
SessionreconnectAttempts (unsigned reconnectAttempts)
 
unsigned reconnectInterval () const
 
SessionreconnectInterval (unsigned seconds)
 
bool localTimeUsage () const
 
SessionlocalTimeUsage (bool useLocalTime)
 
const std::string & storageDirectory () const
 
bool logBeforeSending () const
 
SessionlogBeforeSending (bool value)
 
size_t incomingMessageGapQueueMaximumSize () const
 
SessionincomingMessageGapQueueMaximumSize (size_t value)
 
const Sessionlog (const std::string &message) const
 
std::string toString () const
 
Messaging::Timestamp licenseExpirationDate () const
 
Messaging::SchemaVersion messagingVersion () const noexcept
 
bool detectMessageGapForPreviousUuid () const
 
SessiondetectMessageGapForPreviousUuid (bool detectGap)
 
Handle socketHandle ()
 
size_t outboundQueueBytes ()
 
bool getTcpInfo (TcpInfo &)
 

Additional Inherited Members

- Static Public Member Functions inherited from Session
static const std::string & version () noexcept
 
- Static Public Attributes inherited from Session
static const UInt64 UndefinedUuid = 0
 
static const size_t CmeMaxPacketSize = 1420
 
static const int UndefinedAffinity = -1
 
static const Handle InvalidSocketHandle
 

Detailed Description

Definition at line 586 of file Session.h.

Constructor & Destructor Documentation

CgwSession ( const SessionSettings settings,
SessionListener listener,
SessionStorageType::Enum  storageType = SessionStorageType::FileBased,
SessionStorage storage = nullptr,
UInt64  uuid = UndefinedUuid,
const std::string &  customKey = "" 
)

Constructor.

Parameters
settingsSession settings.
listenerSession listener.
storageTypeSession storage type.
storageSession storage.
uuidUniversally Unique Identifier (UUID).
customKeyCustom key that could be used to distinguish sessions with the same UUID, Session ID and FirmId values.
CgwSession ( SessionReactor stack,
const SessionSettings settings,
SessionListener listener,
SessionStorageType::Enum  storageType = SessionStorageType::FileBased,
SessionStorage storage = nullptr,
UInt64  uuid = UndefinedUuid,
const std::string &  customKey = "" 
)

Constructor.

Parameters
stackExternally provided reactor.
settingsSession settings.
listenerSession listener.
storageTypeSession storage type.
storageSession storage.
uuidUniversally Unique Identifier (UUID).
customKeyCustom key that could be used to distinguish sessions with the same UUID, Session ID and FirmId values.

The documentation for this class was generated from the following file: