@@ -118,47 +118,52 @@ static std::string replace_soh(const std::string& input) {
118118 return output;
119119}
120120
121- void FixApp::onCreate (const FIX::SessionID& sessionId ) {
121+ void FixApp::onCreate (const FIX::SessionID& session_id ) {
122122 spdlog::info (" session created. qualifier [{}], id [{}]" ,
123- sessionId .getSessionQualifier (), sessionId .toString ());
123+ session_id .getSessionQualifier (), session_id .toString ());
124124};
125- void FixApp::onLogon (const FIX::SessionID& sessionId ) {
126- spdlog::info (" Session logon, qualifier [{}], id [{}]" , sessionId .getSessionQualifier (),
127- sessionId .toString ());
125+ void FixApp::onLogon (const FIX::SessionID& session_id ) {
126+ spdlog::info (" Session logon, qualifier [{}], id [{}]" , session_id .getSessionQualifier (),
127+ session_id .toString ());
128128 // logon successful, nullify access keys
129129 // TODO: now need to wait for all sessions to be logged on before nullifying keys
130- // auth_->clear_keys();
130+ auth_->clear_keys ();
131131
132- std::string thread_name = THREAD_NAME_ + " _" + sessionId.getSessionQualifier ();
132+ // sessions run on their own threads when using @ref FIX::ThreadedSocketInitiator .
133+ // set thread names
134+ std::string thread_name = THREAD_NAME_ + " _" + session_id.getSessionQualifier ();
133135 utils::Threading::set_thread_name (thread_name);
134136 spdlog::info (" naming FIX session thread, name [{}], id [{}]" , thread_name,
135137 utils::Threading::get_os_thread_id ());
136138
137- if (sessionId.getSessionQualifier () == PX_SESSION_QUALIFIER_) {
139+ // FIX::Session* session = FIX::Session::lookupSession(session_id);
140+
141+ //
142+ if (session_id.getSessionQualifier () == PX_SESSION_QUALIFIER_) {
138143 utils::Threading::set_current_thread_affinity (PX_SESSION_CPU_AFFINITY_);
139- subscribe_to_prices (sessionId );
140- } else if (sessionId .getSessionQualifier () == TX_SESSION_QUALIFIER_) {
144+ subscribe_to_prices (session_id );
145+ } else if (session_id .getSessionQualifier () == TX_SESSION_QUALIFIER_) {
141146 utils::Threading::set_current_thread_affinity (TX_SESSION_CPU_AFFINITY_);
142- subscribe_to_trades (sessionId );
143- } else if (sessionId .getSessionQualifier () == OX_SESSION_QUALIFIER_) {
147+ subscribe_to_trades (session_id );
148+ } else if (session_id .getSessionQualifier () == OX_SESSION_QUALIFIER_) {
144149 // do nothing for order session
145150 } else {
146151 spdlog::error (" unknown session, qualifier [{}], id [{}]" ,
147- sessionId .getSessionQualifier (), sessionId .toString ());
152+ session_id .getSessionQualifier (), session_id .toString ());
148153 }
149154};
150- void FixApp::onLogout (const FIX::SessionID& sessionId ) {
151- spdlog::info (" session logout. qualifier [{}], id [{}]" , sessionId. getSessionQualifier (),
152- sessionId .toString ());
155+ void FixApp::onLogout (const FIX::SessionID& session_id ) {
156+ spdlog::info (" session logout. qualifier [{}], id [{}]" ,
157+ session_id. getSessionQualifier (), session_id .toString ());
153158};
154159
155- void FixApp::toAdmin (FIX::Message& msg, const FIX::SessionID& sessionId ) {
160+ void FixApp::toAdmin (FIX::Message& msg, const FIX::SessionID& session_id ) {
156161 const FIX::Header& header = msg.getHeader ();
157162 FIX::MsgType msg_type;
158163 header.getField (msg_type);
159164 if (msg_type.getString () == static_cast <const char *>(FIX::MsgType_Logon)) {
160165 spdlog::info (" authenticating. session qualifier [{}], session id [{}]" ,
161- sessionId .getSessionQualifier (), sessionId .toString ());
166+ session_id .getSessionQualifier (), session_id .toString ());
162167
163168 // collect required fields
164169 const std::string sender = header.getField (FIX::FIELD::SenderCompID);
@@ -184,48 +189,48 @@ void FixApp::toAdmin(FIX::Message& msg, const FIX::SessionID& sessionId) {
184189 } else {
185190 spdlog::info (
186191 " toAdmin. session qualifier [{}], session id [{}], type [{}], message [{}]" ,
187- sessionId .getSessionQualifier (), sessionId .toString (), msg_type.getString (),
192+ session_id .getSessionQualifier (), session_id .toString (), msg_type.getString (),
188193 replace_soh (msg.toString ()));
189194 }
190195};
191- void FixApp::toApp (FIX::Message& msg, const FIX::SessionID& sessionId ) noexcept (false ) {
196+ void FixApp::toApp (FIX::Message& msg, const FIX::SessionID& session_id ) noexcept (false ) {
192197 const FIX::Header& header = msg.getHeader ();
193198 FIX::MsgType msg_type;
194199 header.getField (msg_type);
195200 spdlog::info (" toApp. session qualifier [{}], session id [{}], type [{}], message [{}]" ,
196- sessionId .getSessionQualifier (), sessionId .toString (),
201+ session_id .getSessionQualifier (), session_id .toString (),
197202 msg_type.getString (), replace_soh (msg.toString ()));
198203};
199204
200205void FixApp::fromAdmin (const FIX::Message& msg,
201- const FIX::SessionID& sessionId ) noexcept (false ) {
206+ const FIX::SessionID& session_id ) noexcept (false ) {
202207 const FIX::Header& header = msg.getHeader ();
203208 FIX::MsgType msg_type;
204209 header.getField (msg_type);
205210 spdlog::info (
206211 " fromAdmin. session qualifier [{}], session id [{}], type [{}], message [{}]" ,
207- sessionId .getSessionQualifier (), sessionId .toString (), msg_type.getString (),
212+ session_id .getSessionQualifier (), session_id .toString (), msg_type.getString (),
208213 replace_soh (msg.toString ()));
209214};
210215void FixApp::fromApp (const FIX::Message& msg,
211- const FIX::SessionID& sessionId ) noexcept (false ) {
212- FIX44::MessageCracker::crack (msg, sessionId );
216+ const FIX::SessionID& session_id ) noexcept (false ) {
217+ FIX44::MessageCracker::crack (msg, session_id );
213218}
214219
215220void FixApp::onMessage (const FIX44::MarketDataSnapshotFullRefresh& m,
216- [[maybe_unused]] const FIX::SessionID& sessionID ) {
221+ [[maybe_unused]] const FIX::SessionID& session_id ) {
217222 order_queue_.enqueue (std::make_shared<const FIX44::MarketDataSnapshotFullRefresh>(m));
218223}
219224void FixApp::onMessage (const FIX44::MarketDataIncrementalRefresh& m,
220- const FIX::SessionID& sessionID ) {
221- if (sessionID .getSessionQualifier () == PX_SESSION_QUALIFIER_) {
225+ const FIX::SessionID& session_id ) {
226+ if (session_id .getSessionQualifier () == PX_SESSION_QUALIFIER_) {
222227 order_queue_.enqueue (std::make_shared<const FIX44::MarketDataIncrementalRefresh>(m));
223- } else if (sessionID .getSessionQualifier () == TX_SESSION_QUALIFIER_) {
228+ } else if (session_id .getSessionQualifier () == TX_SESSION_QUALIFIER_) {
224229 trade_queue_.enqueue (std::make_shared<const FIX44::MarketDataIncrementalRefresh>(m));
225230 } else {
226231 spdlog::error (
227232 " ivalid session for market data incremental refresh, qualifier [{}], id [{}]" ,
228- sessionID .getSessionQualifier (), sessionID .toString ());
233+ session_id .getSessionQualifier (), session_id .toString ());
229234 }
230235}
231236void FixApp::onMessage ([[maybe_unused]] const FIX44::ExecutionReport& message,
0 commit comments