Skip to content

Commit

Permalink
♻️ Use scoped variable to build SessionSettings
Browse files Browse the repository at this point in the history
  • Loading branch information
arthurlm committed Nov 29, 2023
1 parent 806dd58 commit 8d0acfd
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 37 deletions.
39 changes: 20 additions & 19 deletions quickfix/examples/demo_config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,27 +18,28 @@ impl ApplicationCallback for MyApplication {
}

fn build_settings() -> Result<SessionSettings, QuickFixError> {
let mut global_params = Dictionary::default();
global_params.set("ConnectionType", "acceptor".to_string())?;
global_params.set("ReconnectInterval", 60)?;
global_params.set("FileStorePath", "store".to_string())?;
let mut settings = SessionSettings::new();

let mut session1_params = Dictionary::default();
session1_params.set("StartTime", "12:30:00".to_string())?;
session1_params.set("EndTime", "23:30:00".to_string())?;
session1_params.set("HeartBtInt", 20)?;
session1_params.set("SocketAcceptPort", 4000)?;
session1_params.set(
"DataDictionary",
"quickfix-ffi/libquickfix/spec/FIX41.xml".to_string(),
)?;
settings.set(None, {
let mut params = Dictionary::default();
params.set("ConnectionType", "acceptor".to_string())?;
params.set("ReconnectInterval", 60)?;
params.set("FileStorePath", "store".to_string())?;
params
})?;

let mut settings = SessionSettings::new();
settings.set(None, global_params)?;
settings.set(
Some(SessionId::try_new("FIX.4.4", "ME", "THEIR", "")?),
session1_params,
)?;
settings.set(Some(SessionId::try_new("FIX.4.4", "ME", "THEIR", "")?), {
let mut params = Dictionary::default();
params.set("StartTime", "12:30:00".to_string())?;
params.set("EndTime", "23:30:00".to_string())?;
params.set("HeartBtInt", 20)?;
params.set("SocketAcceptPort", 4000)?;
params.set(
"DataDictionary",
"quickfix-ffi/libquickfix/spec/FIX41.xml".to_string(),
)?;
params
})?;

Ok(settings)
}
Expand Down
37 changes: 19 additions & 18 deletions quickfix/tests/test_socket.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,26 +5,27 @@ struct MyApplication;
impl ApplicationCallback for MyApplication {}

fn build_settings(connection_type: &str) -> Result<SessionSettings, QuickFixError> {
let mut global_params = Dictionary::default();
global_params.set("ConnectionType", connection_type.to_string())?;
global_params.set("FileStorePath", "store".to_string())?;
let mut settings = SessionSettings::new();

let mut session1_params = Dictionary::default();
session1_params.set("StartTime", "12:30:00".to_string())?;
session1_params.set("EndTime", "23:30:00".to_string())?;
session1_params.set("HeartBtInt", 20)?;
session1_params.set("SocketAcceptPort", 4000)?;
session1_params.set(
"DataDictionary",
"../quickfix-ffi/libquickfix/spec/FIX41.xml".to_string(),
)?;
settings.set(None, {
let mut params = Dictionary::default();
params.set("ConnectionType", connection_type.to_string())?;
params.set("FileStorePath", "store".to_string())?;
params
})?;

let mut settings = SessionSettings::new();
settings.set(None, global_params)?;
settings.set(
Some(SessionId::try_new("FIX.4.4", "ME", "THEIR", "")?),
session1_params,
)?;
settings.set(Some(SessionId::try_new("FIX.4.4", "ME", "THEIR", "")?), {
let mut params = Dictionary::default();
params.set("StartTime", "12:30:00".to_string())?;
params.set("EndTime", "23:30:00".to_string())?;
params.set("HeartBtInt", 20)?;
params.set("SocketAcceptPort", 4000)?;
params.set(
"DataDictionary",
"../quickfix-ffi/libquickfix/spec/FIX41.xml".to_string(),
)?;
params
})?;

Ok(settings)
}
Expand Down

0 comments on commit 8d0acfd

Please sign in to comment.