fix8  version 1.4.0
Open Source C++ FIX Framework
session.hpp File Reference
#include <Poco/Net/StreamSocket.h>

Go to the source code of this file.

Classes

class  FIX8::SessionID
 Quickfix style sessionid. More...
 
struct  FIX8::Schedule
 
struct  FIX8::LoginParameters
 
struct  FIX8::Session_Schedule
 
class  FIX8::Session
 Fix8 Base Session. User sessions are derived from this class. More...
 
struct  FIX8::Session::RetransmissionContext
 Provides context to your retrans handler. More...
 

Namespaces

 FIX8
 
 FIX8::States
 Session states and semantics.
 
 FIX8::defaults
 

Macros

#define ssout_info(x)
 
#define ssout_warn(x)
 
#define ssout_error(x)
 
#define ssout_fatal(x)
 
#define ssout_debug(x)   true ? null_insert() : null_insert()
 
#define ssout(x)   ssout_info(x)
 
#define slout   ssout(this)
 
#define slout_info   ssout_info(this)
 
#define slout_warn   ssout_warn(this)
 
#define slout_error   ssout_error(this)
 
#define slout_fatal   ssout_fatal(this)
 
#define slout_debug   ssout_debug(this)
 

Typedefs

using FIX8::Client = std::tuple< f8String, Poco::Net::IPAddress >
 Class to hold client info settings for server sessions. More...
 
using FIX8::Clients = std::unordered_map< f8String, Client >
 

Enumerations

enum  FIX8::States::SessionStates {
  FIX8::States::st_none, FIX8::States::st_continuous, FIX8::States::st_session_terminated, FIX8::States::st_wait_for_logon,
  FIX8::States::st_not_logged_in, FIX8::States::st_logon_sent, FIX8::States::st_logon_received, FIX8::States::st_logoff_sent,
  FIX8::States::st_logoff_received, FIX8::States::st_test_request_sent, FIX8::States::st_sequence_reset_sent, FIX8::States::st_sequence_reset_received,
  FIX8::States::st_resend_request_sent, FIX8::States::st_resend_request_received, FIX8::States::st_num_states
}
 
enum  {
  FIX8::defaults::retry_interval =5000, FIX8::defaults::login_retries =3, FIX8::defaults::tabsize =3, FIX8::defaults::hb_interval =30,
  FIX8::defaults::connect_timeout =10, FIX8::defaults::log_rotation =5, FIX8::defaults::verification_depth =9
}
 

Functions

static bool FIX8::States::is_live (SessionStates ss)
 
static bool FIX8::States::is_established (SessionStates ss)
 

Macro Definition Documentation

#define slout   ssout(this)

Definition at line 882 of file session.hpp.

#define slout_fatal   ssout_fatal(this)

Definition at line 886 of file session.hpp.

Referenced by FIX8::Session::process().

#define slout_warn   ssout_warn(this)
#define ssout (   x)    ssout_info(x)

Definition at line 881 of file session.hpp.

#define ssout_debug (   x)    true ? null_insert() : null_insert()

Definition at line 878 of file session.hpp.

#define ssout_error (   x)
Value:
if (!x->is_loggable(FIX8::Logger::Error)); \
else FIX8::log_stream(FIX8::logger_function(std::bind(&FIX8::Session::enqueue, x, std::placeholders::_1, FIX8::Logger::Error, FILE_LINE, std::placeholders::_2)))
std::function< bool(const std::string &, Logger::Level, const char *, const unsigned)> logger_function
Definition: logger.hpp:576
#define FILE_LINE
Definition: f8utils.hpp:68
bool enqueue(const std::string &what, Logger::Level lev, const char *fl=nullptr, unsigned value=0) const
Definition: session.hpp:686

Definition at line 870 of file session.hpp.

#define ssout_fatal (   x)
Value:
if (!x->is_loggable(FIX8::Logger::Fatal)); \
else FIX8::log_stream(FIX8::logger_function(std::bind(&FIX8::Session::enqueue, x, std::placeholders::_1, FIX8::Logger::Fatal, FILE_LINE, std::placeholders::_2)))
std::function< bool(const std::string &, Logger::Level, const char *, const unsigned)> logger_function
Definition: logger.hpp:576
#define FILE_LINE
Definition: f8utils.hpp:68
bool enqueue(const std::string &what, Logger::Level lev, const char *fl=nullptr, unsigned value=0) const
Definition: session.hpp:686

Definition at line 872 of file session.hpp.

#define ssout_info (   x)
Value:
if (!x->is_loggable(FIX8::Logger::Info)); \
else FIX8::log_stream(FIX8::logger_function(std::bind(&FIX8::Session::enqueue, x, std::placeholders::_1, FIX8::Logger::Info, FILE_LINE, std::placeholders::_2)))
std::function< bool(const std::string &, Logger::Level, const char *, const unsigned)> logger_function
Definition: logger.hpp:576
#define FILE_LINE
Definition: f8utils.hpp:68
bool enqueue(const std::string &what, Logger::Level lev, const char *fl=nullptr, unsigned value=0) const
Definition: session.hpp:686

Definition at line 866 of file session.hpp.

#define ssout_warn (   x)
Value:
if (!x->is_loggable(FIX8::Logger::Warn)); \
else FIX8::log_stream(FIX8::logger_function(std::bind(&FIX8::Session::enqueue, x, std::placeholders::_1, FIX8::Logger::Warn, FILE_LINE, std::placeholders::_2)))
std::function< bool(const std::string &, Logger::Level, const char *, const unsigned)> logger_function
Definition: logger.hpp:576
#define FILE_LINE
Definition: f8utils.hpp:68
bool enqueue(const std::string &what, Logger::Level lev, const char *fl=nullptr, unsigned value=0) const
Definition: session.hpp:686

Definition at line 868 of file session.hpp.