Files
brk/src/parser/mod.rs
T
2024-12-13 19:55:32 +01:00

53 lines
1.0 KiB
Rust

use std::{thread::sleep, time::Duration};
use biter::bitcoincore_rpc::{Client, RpcApi};
mod actions;
mod databases;
mod datasets;
mod price;
mod states;
pub use actions::*;
pub use databases::*;
pub use datasets::*;
use log::info;
pub use states::*;
use crate::structs::{Config, Exit};
pub fn main(
config: &Config,
rpc: &Client,
exit: &Exit,
mut databases: Databases,
mut datasets: Datasets,
) -> color_eyre::Result<()> {
loop {
let block_count = rpc.get_blockchain_info().unwrap().blocks as usize;
info!("{block_count} blocks found.");
iter_blocks(
config,
rpc,
block_count,
exit.clone(),
&mut databases,
&mut datasets,
)?;
if let Some(delay) = config.delay {
sleep(Duration::from_secs(delay))
}
info!("Waiting for a new block...");
while block_count == rpc.get_blockchain_info().unwrap().blocks as usize {
sleep(Duration::from_secs(1))
}
}
// Ok(())
}