35{
36
39 > cfg{"ThreadPoolMode", argc, argv};
40
41 try
42 {
44
47
48
50
52
56
57 bgwSession->connect(bgwCredentials);
59
61
63
65
67 }
68 catch(const std::exception & ex)
69 {
70 std::cerr << "\nEXCEPTION: " << ex.what() << std::endl;
71 return 1;
72 }
73
74 return 0;
75}
static MessageHolder< NewOrderRequest > createOrder(const std::string &traderId)
static MessageHolder< TraderLogoutRequest > createTraderLogoutRequest(const std::string &traderId)
static MessageHolder< TraderLogonRequest > createTraderLogonRequest(const std::string &traderId, const std::string &traderPwd)
std::promise< void > traderLoggedOn
std::pair< std::unique_ptr< GatewayEmulatorThread< BusSessionGatewayListener > >, std::unique_ptr< GatewayEmulatorThread< GatewayListener > > > createEmulator(const SessionSettings &settings, const ConnectivityConfiguration &cfg, bool tcpDirect=false)
BgwCredentials receiveBgwCredentials(SessionSettings settings, std::string host, Port port)
SessionSettings fillSettings(const LogonConfiguration &logonCfg, const ConnectivityConfiguration &connCfg, const SettingsConfiguration &settingsCfg)
std::future< T > wait(Stack &stack, std::promise< T > &promise, std::chrono::seconds timeout=std::chrono::seconds{30})
std::unique_ptr< T > makeUnique(Args &&...args)
@ Pool
Sessions share a thread pool.
static void waitUntilKey(const std::string &message)
static void manageSignals() noexcept