sneedstr/src/main.rs
2024-01-12 09:35:31 -06:00

52 lines
1 KiB
Rust

#![allow(dead_code)]
#![allow(unused_variables)]
use std::thread;
pub mod bussy;
mod noose;
mod relay;
mod usernames;
pub mod utils;
use bussy::PubSub;
use flexi_logger::Logger;
use crate::utils::structs::Context;
#[macro_use]
extern crate lazy_static;
fn main() {
// Logger init
let _logger = Logger::try_with_env_or_str("info")
.unwrap()
.log_to_stdout()
.duplicate_to_stderr(flexi_logger::Duplicate::Warn)
.write_mode(flexi_logger::WriteMode::Async)
.start()
.unwrap();
// Services
let ctx_db = Context::new();
let ctx_relay = ctx_db.clone();
let ctx_usernames = ctx_relay.clone();
let db_handle = thread::spawn(move || {
noose::start(ctx_db);
});
let relay_handle = thread::spawn(move || {
relay::start(ctx_relay);
});
let nip05_handle = thread::spawn(move || {
usernames::start(ctx_usernames);
});
db_handle.join().unwrap();
relay_handle.join().unwrap();
nip05_handle.join().unwrap();
println!("Done");
}