fix8
version 1.4.0
Open Source C++ FIX Framework
|
Base Client wrapper. More...
#include <sessionwrapper.hpp>
Public Member Functions | |
ClientSessionBase (const F8MetaCntx &ctx, const std::string &conf_file, const std::string &session_name) | |
virtual bool | has_given_up () const |
virtual | ~ClientSessionBase () |
Dtor. More... | |
virtual Session * | session_ptr ()=0 |
virtual void | start (bool wait, unsigned send_seqnum=0, unsigned recv_seqnum=0, const f8String davi=f8String())=0 |
Public Member Functions inherited from FIX8::SessionConfig | |
SessionConfig (const F8MetaCntx &ctx, const std::string &conf_file, const std::string &session_name) | |
Ctor. Loads configuration, obtains session details, sets up logfile flags. More... | |
virtual | ~SessionConfig () |
Dtor. More... | |
const XmlElement * | get_session_element () const |
Public Member Functions inherited from FIX8::Configuration | |
const XmlElement * | find_group (group_types type, const std::string &tag) const |
Configuration (const std::string &xmlfile, bool do_process=false) | |
Configuration (std::istream &istr, bool do_process=false) | |
virtual | ~Configuration () |
Dtor. More... | |
F8API int | process () |
const XmlElement * | get_session (const unsigned num) const |
F8API Connection::Role | get_role (const XmlElement *from) const |
F8API size_t | get_addresses (const XmlElement *from, std::vector< Server > &target) const |
F8API Poco::Net::SocketAddress | get_address (const XmlElement *from) const |
F8API Poco::Net::IPAddress | get_ip (const XmlElement *from) const |
template<typename T > | |
T | get_logflags (const std::string &tag, const std::vector< std::string > &names, const XmlElement *from, Logger::LogPositions *positions=nullptr) const |
F8API std::string & | get_logname (const XmlElement *from, std::string &to, const SessionID *sid=nullptr) const |
unsigned | get_connect_timeout (const XmlElement *from, const unsigned def=defaults::connect_timeout) const |
unsigned | get_retry_interval (const XmlElement *from, const unsigned def=defaults::retry_interval) const |
unsigned | get_retry_count (const XmlElement *from, const int def=defaults::login_retries) const |
unsigned | get_tcp_recvbuf_sz (const XmlElement *from, const unsigned def=0) const |
unsigned | get_tcp_sendbuf_sz (const XmlElement *from, const unsigned def=0) const |
unsigned | get_version (const XmlElement *from, const unsigned def=0) const |
unsigned | get_tabsize (const XmlElement *from, const unsigned def=defaults::tabsize) const |
unsigned | get_logfile_rotation (const XmlElement *from, const unsigned def=defaults::log_rotation) const |
unsigned | get_heartbeat_interval (const XmlElement *from, const unsigned def=defaults::hb_interval) const |
bool | get_tcp_nodelay (const XmlElement *from, const bool def=true) const |
bool | get_tcp_keepalive (const XmlElement *from, const bool def=false) const |
bool | get_tcp_reuseaddr (const XmlElement *from, const bool def=false) const |
int | get_tcp_linger (const XmlElement *from, const int def=-1) const |
bool | get_silent_disconnect (const XmlElement *from, const bool def=false) const |
bool | get_enforce_compids_flag (const XmlElement *from, const bool def=true) const |
bool | get_ignore_logon_sequence_check_flag (const XmlElement *from, const bool def=false) const |
bool | get_no_chksum_flag (const XmlElement *from, const bool def=false) const |
bool | get_permissive_mode_flag (const XmlElement *from, const bool def=false) const |
bool | get_reset_sequence_number_flag (const XmlElement *from, const bool def=false) const |
bool | get_always_seqnum_assign (const XmlElement *from, const bool def=false) const |
F8API ProcessModel | get_process_model (const XmlElement *from) const |
default_appl_ver_id | get_default_appl_ver_id (const XmlElement *from) const |
sender_comp_id | get_sender_comp_id (const XmlElement *from) const |
target_comp_id | get_target_comp_id (const XmlElement *from) const |
F8API Persister * | create_persister (const XmlElement *from, const SessionID *sid=nullptr, bool flag=false) const |
F8API Logger * | create_logger (const XmlElement *from, const Logtype ltype, const SessionID *sid=nullptr) const |
F8API Schedule | create_schedule (const XmlElement *from) const |
F8API Clients | create_clients (const XmlElement *from) const |
F8API Schedule | create_login_schedule (const XmlElement *from) const |
F8API Session_Schedule * | create_session_schedule (const XmlElement *from) const |
F8API unsigned | get_all_sessions (std::vector< const XmlElement * > &target, const Connection::Role role=Connection::cn_unknown) const |
const XmlElement * | get_root () const |
template<typename T > | |
T | get_logflags (const string &tag, const vector< string > &names, const XmlElement *from, Logger::LogPositions *positions) const |
Additional Inherited Members | |
Public Types inherited from FIX8::Configuration | |
enum | group_types { g_sessions, g_persisters, g_loggers, g_server_group, g_ssl_context, g_schedules, g_logins, g_client_group, g_count } |
enum | Logtype { session_log, protocol_log } |
Public Attributes inherited from FIX8::SessionConfig | |
const F8MetaCntx & | _ctx |
const XmlElement * | _ses |
LoginParameters | _loginParameters |
const std::string | _session_name |
Protected Member Functions inherited from FIX8::Configuration | |
bool | from_or_default (const XmlElement *from, const f8String &tag, f8String &target) const |
template<typename T > | |
T & | get_string_field (const XmlElement *from, const std::string &tag, T &to) const |
Tickval::ticks | get_time_field (const XmlElement *from, const std::string &tag, bool timeonly=false) const |
template<typename T > | |
T | find_or_default (const XmlElement *from, const std::string &tag, const T def) const |
Base Client wrapper.
Definition at line 168 of file sessionwrapper.hpp.
|
inline |
Definition at line 171 of file sessionwrapper.hpp.
|
inlinevirtual |
|
inlinevirtual |
If reliable, determine if the maximum no. of reties has been reached
Reimplemented in FIX8::ReliableClientSession< T >.
Definition at line 177 of file sessionwrapper.hpp.
Referenced by client_process().
|
pure virtual |
Get a pointer to the session
Implemented in FIX8::ClientSession< T >.
Referenced by client_process(), and main().
|
pure virtual |
Start the session - initiate the connection, logon and start heartbeating.
wait | if true wait till session finishes before returning |
send_seqnum | if supplied, override the send login sequence number, set next send to seqnum+1 |
recv_seqnum | if supplied, override the receive login sequence number, set next recv to seqnum+1 |
davi | default appl version id (FIXT) |
Implemented in FIX8::ReliableClientSession< T >, and FIX8::ClientSession< T >.