87 std::
string * configurationFile_;
#define ONIXS_B3_BOE_DEFAULT
#define ONIXS_B3_BOE_EXPORTED
#define ONIXS_B3_BOE_NOTHROW
Connection-related settings.
SessionScheduler events notifications.
virtual void onWarning(const SessionScheduler &scheduler, Session *session, const std::string &warningReason)=0
Notifies about a non-critical issue.
virtual void onError(const SessionScheduler &scheduler, Session *session, const std::string &errorReason)=0
Notifies about an error.
virtual void onLoggingOut(const SessionScheduler &scheduler, Session *session, bool *allowLogout)=0
Notifies that the session is about to be closed.
virtual ~SessionSchedulerListener()=default
SessionSchedulerOptions()
const std::string & configurationFile() const noexcept
~SessionSchedulerOptions()
SessionSchedulerListener * eventListener() const noexcept
SessionScheduler & serviceThreadAffinity(const OnixS::B3::BOE::CpuIndexes &cpuIndexes)
Sets the CPU affinity for the Scheduler service thread.
SessionScheduler & add(Session *session, const SessionSchedule &schedule, const SessionConnectionSettings &connection)
Adds the session to the automatic connection management.
SessionScheduler & utcTimeUsage(bool value)
Activates the UTC usage.
SessionScheduler & add(Session *session, const SessionScheduleId &scheduleId, const SessionConnectionSettingsId &connectionId)
Adds the session to the automatic connection management.
SessionScheduler(const SessionSchedulerOptions &options)
const SessionConnectionSettings * findConnectionSettings(const SessionConnectionSettingsId &id) const
Looks for the predefined session connection settings associated with the given id that was specified ...
~SessionScheduler()
Performs the graceful shutdown of scheduling sessions.
SessionScheduler & reconnectInterval(int value)
Sets the time interval between the logon attempts in case of a logon failure (in seconds).
const OnixS::B3::BOE::CpuIndexes & serviceThreadAffinity() const noexcept
SessionScheduler & reconnectAttempts(int value)
Sets the number of logon attempts in case of a logon failure.
const SessionSchedule * findSchedule(const SessionScheduleId &id) const
Looks for the predefined session schedule associated with the given id that was specified in Schedule...
SessionScheduler & remove(Session *session)
Removes the session from the automatic connection management services.
std::string SessionScheduleId
std::string SessionConnectionSettingsId
std::set< CpuIndex > CpuIndexes