use crate::error::PutValidationError;
use ant_protocol::PrettyPrintRecordKey;
use libp2p::{kad::RecordKey, PeerId};
use strum::Display;
#[derive(Debug, Clone, Display, Copy)]
pub enum Marker<'a> {
NodeConnectedToNetwork,
PeerAddedToRoutingTable(&'a PeerId),
PeerRemovedFromRoutingTable(&'a PeerId),
PeersInRoutingTable(usize),
IntervalReplicationTriggered,
FetchingKeysForReplication {
fetching_keys_len: usize,
},
ValidChunkRecordPutFromNetwork(&'a PrettyPrintRecordKey<'a>),
ValidGraphEntryRecordPutFromNetwork(&'a PrettyPrintRecordKey<'a>),
ValidScratchpadRecordPutFromNetwork(&'a PrettyPrintRecordKey<'a>),
ValidPaidChunkPutFromClient(&'a PrettyPrintRecordKey<'a>),
ValidGraphEntryPutFromClient(&'a PrettyPrintRecordKey<'a>),
ValidScratchpadRecordPutFromClient(&'a PrettyPrintRecordKey<'a>),
ValidPointerPutFromClient(&'a PrettyPrintRecordKey<'a>),
RecordRejected(&'a PrettyPrintRecordKey<'a>, &'a PutValidationError),
IntervalBadNodesCheckTriggered,
}
impl Marker<'_> {
pub fn log(&self) {
info!("{self:?}");
}
pub fn fetching_keys_for_replication(keys: &[(PeerId, RecordKey)]) -> Self {
Marker::FetchingKeysForReplication {
fetching_keys_len: keys.len(),
}
}
}