pub struct TemporalScheduler { /* private fields */ }Expand description
Advanced temporal scheduler.
Implementations§
Source§impl TemporalScheduler
impl TemporalScheduler
pub fn new() -> Self
Sourcepub fn schedule(
&mut self,
channel_id: u64,
sender: &str,
content: &str,
target: TemporalTarget,
) -> u64
pub fn schedule( &mut self, channel_id: u64, sender: &str, content: &str, target: TemporalTarget, ) -> u64
Schedule a message for temporal delivery.
Sourcepub fn register_condition<F>(&mut self, name: &str, evaluator: F)
pub fn register_condition<F>(&mut self, name: &str, evaluator: F)
Register a condition evaluator.
Sourcepub fn check_ready(&mut self) -> DeliveryCheck
pub fn check_ready(&mut self) -> DeliveryCheck
Check which messages are ready for delivery.
Sourcepub fn mark_delivered(&mut self, id: u64) -> bool
pub fn mark_delivered(&mut self, id: u64) -> bool
Mark a message as delivered.
Sourcepub fn get(&self, id: u64) -> Option<&PendingMessage>
pub fn get(&self, id: u64) -> Option<&PendingMessage>
Get a pending message by ID.
Sourcepub fn list_by_status(&self, status: &PendingStatus) -> Vec<&PendingMessage>
pub fn list_by_status(&self, status: &PendingStatus) -> Vec<&PendingMessage>
List all pending messages by status.
Sourcepub fn stats(&self) -> (usize, usize, usize, usize)
pub fn stats(&self) -> (usize, usize, usize, usize)
Get total message counts: (waiting, delivered, cancelled, failed).
Sourcepub fn expire_old(&mut self, max_age_secs: u64) -> usize
pub fn expire_old(&mut self, max_age_secs: u64) -> usize
Expire messages older than max_age_secs.
Sourcepub fn total_count(&self) -> usize
pub fn total_count(&self) -> usize
Get count of all messages.
Trait Implementations§
Source§impl Debug for TemporalScheduler
impl Debug for TemporalScheduler
Auto Trait Implementations§
impl !RefUnwindSafe for TemporalScheduler
impl !UnwindSafe for TemporalScheduler
impl Freeze for TemporalScheduler
impl Send for TemporalScheduler
impl Sync for TemporalScheduler
impl Unpin for TemporalScheduler
impl UnsafeUnpin for TemporalScheduler
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