OnixS C++ FIX Engine 4.13.0
API Documentation
Loading...
Searching...
No Matches
SessionSchedule Class Reference

Public Member Functions

 SessionSchedule (DayOfWeek::Enum firstDay, DayOfWeek::Enum lastDay, TimeOfDay logonTime, TimeOfDay logoutTime, SessionDuration::Enum sessionDuration, SequenceNumberResetPolicy::Enum seqNumberResetPolicy)
 SessionSchedule (const SessionSchedule &other)
TimeOfDay logonTime (DayOfWeek::Enum day) const
void logonTime (DayOfWeek::Enum day, TimeOfDay time)
TimeOfDay logoutTime (DayOfWeek::Enum day) const
void logoutTime (DayOfWeek::Enum day, TimeOfDay time)
SessionDuration::Enum sessionDuration () const
SequenceNumberResetPolicy::Enum sequenceNumberResetPolicy () const
DayOfWeek::Enum sequenceNumberWeeklyResetDay () const
SessionScheduleoperator= (const SessionSchedule &other)
std::string toString () const

Friends

class SessionStateChanger

Detailed Description

Also provides the ability to define the sequence number reset policy for the session.

Definition at line 200 of file SessionSchedule.h.

Constructor & Destructor Documentation

◆ SessionSchedule() [1/2]

SessionSchedule ( DayOfWeek::Enum firstDay,
DayOfWeek::Enum lastDay,
TimeOfDay logonTime,
TimeOfDay logoutTime,
SessionDuration::Enum sessionDuration,
SequenceNumberResetPolicy::Enum seqNumberResetPolicy )

Initializes the session schedule according to the given parameters.

If the session duration is a single day, then logon and logout are performed each day from the first day of the week till the last day of the week. If the session duration is defined as the entire week then the session logon occurs on the first day of the week and the corresponding logout is performed on the last day of the week.

The session sequence number reset policy must correspond to the session duration time. In particular, if the session continues for an entire week it's not possible to request the scheduler to reset the session sequence number on daily basis.

Parameters
firstDayDefines the first day of an activity week for the session.
lastDayDefines the last day of an activity week for the session.
logonTimeDefines the time of the logon for the session for each activity day if the session duration is a single day. If the session must continue for an entire week, defines the time of the logon performed on the first day of an activity week.
logoutTimeDefines the time of the logout for the session for each activity day if the session duration is a single day. If the session must continue for an entire week, defines the time of the logout performed on the last day of an activity week.
sessionDurationDefines whether the session continues for an entire week or the activity time frame is limited for a single day.
seqNumberResetPolicyDefines the session sequence number reset policy.

◆ SessionSchedule() [2/2]

SessionSchedule ( const SessionSchedule & other)

Initializes a clone of the given instance.

Member Function Documentation

◆ logonTime() [1/2]

TimeOfDay logonTime ( DayOfWeek::Enum day) const
inline

The logon time for the session for the given day.

If the logon is not performed on the given day, it returns the corresponding value equals to the TimeOfDay::bad() value.

Definition at line 293 of file SessionSchedule.h.

◆ logonTime() [2/2]

void logonTime ( DayOfWeek::Enum day,
TimeOfDay time )
inline

Defines the logon time for the session for the given day.

Definition at line 300 of file SessionSchedule.h.

◆ logoutTime() [1/2]

TimeOfDay logoutTime ( DayOfWeek::Enum day) const
inline

The logout time for the session for the given day.

If the logout is not performed on the given day, it returns the corresponding value equals to the TimeOfDay::bad() value.

Definition at line 308 of file SessionSchedule.h.

◆ logoutTime() [2/2]

void logoutTime ( DayOfWeek::Enum day,
TimeOfDay time )
inline

Defines logout time for the session for given day.

Definition at line 315 of file SessionSchedule.h.

◆ operator=()

SessionSchedule & operator= ( const SessionSchedule & other)

Reinitializes the instance from another one.

◆ sequenceNumberResetPolicy()

SequenceNumberResetPolicy::Enum sequenceNumberResetPolicy ( ) const
inline

Defines the session sequence number reset policy.

Definition at line 330 of file SessionSchedule.h.

◆ sequenceNumberWeeklyResetDay()

DayOfWeek::Enum sequenceNumberWeeklyResetDay ( ) const
inline

The day of the week on which the session message sequence numbers are reset.

Definition at line 337 of file SessionSchedule.h.

◆ sessionDuration()

SessionDuration::Enum sessionDuration ( ) const
inline

Defines whether the session continues the entire week or an activity time frame is limited for the single day.

Definition at line 323 of file SessionSchedule.h.

◆ toString()

std::string toString ( ) const

◆ SessionStateChanger

friend class SessionStateChanger
friend

Definition at line 279 of file SessionSchedule.h.