bonds_core/manager/
mod.rs1use crate::bond::Bond;
2use crate::error::BondError;
3use crate::events::{BondBrokenReason, BondEvent, BondEventHook, BondEventPayload};
4use crate::query::{BondQuery, MetadataFilter};
5use chrono::{DateTime, Utc};
6use rusqlite::{Connection, params};
7use std::collections::HashMap;
8use std::path::{Path, PathBuf};
9use std::sync::{Arc, RwLock};
10
11mod health;
12mod hooks;
13mod lifecycle;
14mod querying;
15mod storage;
16
17#[cfg(test)]
18mod tests;
19
20pub struct BondManager {
25 pub(super) conn: Connection,
26 pub(super) hooks: RwLock<Vec<Arc<dyn BondEventHook>>>,
28}