pub struct QuotingMetricsTracker { /* private fields */ }Expand description
Tracker for quoting metrics.
Maintains state that influences quote pricing, including payment history, storage capacity, and network information.
Implementations§
Source§impl QuotingMetricsTracker
impl QuotingMetricsTracker
Sourcepub fn new(max_records: usize, initial_records: usize) -> Self
pub fn new(max_records: usize, initial_records: usize) -> Self
Create a new metrics tracker.
§Arguments
max_records- Maximum number of records this node can storeinitial_records- Initial number of records stored
Sourcepub fn with_persistence(max_records: usize, persist_path: &Path) -> Self
pub fn with_persistence(max_records: usize, persist_path: &Path) -> Self
Create a new metrics tracker with persistence.
§Arguments
max_records- Maximum number of recordspersist_path- Path to persist metrics to disk
Sourcepub fn record_payment(&self)
pub fn record_payment(&self)
Record a payment received.
Sourcepub fn record_store(&self, data_type: u32)
pub fn record_store(&self, data_type: u32)
Sourcepub fn payment_count(&self) -> usize
pub fn payment_count(&self) -> usize
Get the number of payments received.
Sourcepub fn records_stored(&self) -> usize
pub fn records_stored(&self) -> usize
Get the number of records stored.
Sourcepub fn live_time_hours(&self) -> u64
pub fn live_time_hours(&self) -> u64
Get the node’s live time in hours.
Sourcepub fn set_network_size(&self, size: u64)
pub fn set_network_size(&self, size: u64)
Update the estimated network size.
Sourcepub fn get_metrics(&self, data_size: usize, data_type: u32) -> QuotingMetrics
pub fn get_metrics(&self, data_size: usize, data_type: u32) -> QuotingMetrics
Get quoting metrics for quote generation.
§Arguments
data_size- Size of the data being quoteddata_type- Type index of the data
Trait Implementations§
Source§impl Debug for QuotingMetricsTracker
impl Debug for QuotingMetricsTracker
Auto Trait Implementations§
impl !Freeze for QuotingMetricsTracker
impl !RefUnwindSafe for QuotingMetricsTracker
impl Send for QuotingMetricsTracker
impl Sync for QuotingMetricsTracker
impl Unpin for QuotingMetricsTracker
impl UnsafeUnpin for QuotingMetricsTracker
impl UnwindSafe for QuotingMetricsTracker
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more