mirror of
https://github.com/bitcoinresearchkit/brk.git
synced 2026-06-08 14:11:56 -07:00
53 lines
1.0 KiB
Rust
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(())
|
|
}
|