Clean up error propagation
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
23
src/main.rs
23
src/main.rs
@@ -19,31 +19,34 @@ use tokio::{spawn, sync::mpsc};
|
||||
async fn main() {
|
||||
dotenv().ok();
|
||||
log4rs::init_file("log4rs.yaml", Deserializers::default()).unwrap();
|
||||
let app_config = Config::arc_from_env();
|
||||
let config = Config::arc_from_env();
|
||||
|
||||
cleanup(&app_config.clickhouse_client).await;
|
||||
cleanup(&config.clickhouse_client).await.unwrap();
|
||||
|
||||
let (data_sender, data_receiver) = mpsc::channel::<threads::data::Message>(100);
|
||||
let (clock_sender, clock_receiver) = mpsc::channel::<threads::clock::Message>(1);
|
||||
|
||||
spawn(threads::data::run(
|
||||
app_config.clone(),
|
||||
config.clone(),
|
||||
data_receiver,
|
||||
clock_receiver,
|
||||
));
|
||||
|
||||
spawn(threads::clock::run(app_config.clone(), clock_sender));
|
||||
spawn(threads::clock::run(config.clone(), clock_sender));
|
||||
|
||||
let assets = database::assets::select(&app_config.clickhouse_client)
|
||||
let assets = database::assets::select(&config.clickhouse_client)
|
||||
.await
|
||||
.unwrap()
|
||||
.into_iter()
|
||||
.map(|asset| (asset.symbol, asset.class))
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
let (data_message, data_receiver) =
|
||||
threads::data::Message::new(threads::data::Action::Add, assets);
|
||||
data_sender.send(data_message).await.unwrap();
|
||||
data_receiver.await.unwrap();
|
||||
create_send_await!(
|
||||
data_sender,
|
||||
threads::data::Message::new,
|
||||
threads::data::Action::Add,
|
||||
assets
|
||||
);
|
||||
|
||||
routes::run(app_config, data_sender).await;
|
||||
routes::run(config, data_sender).await;
|
||||
}
|
||||
|
Reference in New Issue
Block a user