pub struct RouterState { /* private fields */ }Expand description
Global router state
Implementations§
Source§impl RouterState
impl RouterState
pub fn new() -> Self
Sourcepub fn with_config(config: RouterStateConfig) -> Self
pub fn with_config(config: RouterStateConfig) -> Self
Create with specific configuration
Sourcepub fn register_signals(&self, signals: Vec<SignalDefinition>)
pub fn register_signals(&self, signals: Vec<SignalDefinition>)
Register signals from an ANNOUNCE message
Sourcepub fn query_signals(&self, pattern: &str) -> Vec<SignalDefinition>
pub fn query_signals(&self, pattern: &str) -> Vec<SignalDefinition>
Query signals matching a pattern
Sourcepub fn all_signals(&self) -> Vec<SignalDefinition>
pub fn all_signals(&self) -> Vec<SignalDefinition>
Get all registered signals
Sourcepub fn signal_count(&self) -> usize
pub fn signal_count(&self) -> usize
Get signal count
Sourcepub fn cleanup_stale_signals(&self, ttl: Duration) -> usize
pub fn cleanup_stale_signals(&self, ttl: Duration) -> usize
Remove stale signals that haven’t been accessed within the TTL Returns the number of signals removed
Sourcepub fn cleanup_stale_params(&self, ttl: Duration) -> usize
pub fn cleanup_stale_params(&self, ttl: Duration) -> usize
Remove stale params using the configured TTL Returns the number of params removed
Sourcepub fn cleanup_stale(&self) -> (usize, usize)
pub fn cleanup_stale(&self) -> (usize, usize)
Run all cleanup operations using configured TTLs Returns (params_removed, signals_removed)
Sourcepub fn get_state(&self, address: &str) -> Option<ParamState>
pub fn get_state(&self, address: &str) -> Option<ParamState>
Get full parameter state
Sourcepub fn set(
&self,
address: &str,
value: Value,
writer: &SessionId,
revision: Option<u64>,
lock: bool,
unlock: bool,
ttl: Option<Ttl>,
) -> Result<u64, UpdateError>
pub fn set( &self, address: &str, value: Value, writer: &SessionId, revision: Option<u64>, lock: bool, unlock: bool, ttl: Option<Ttl>, ) -> Result<u64, UpdateError>
Set a parameter value
Sourcepub fn apply_set(
&self,
msg: &SetMessage,
writer: &SessionId,
) -> Result<u64, UpdateError>
pub fn apply_set( &self, msg: &SetMessage, writer: &SessionId, ) -> Result<u64, UpdateError>
Apply a SET message
Sourcepub fn get_matching(&self, pattern: &str) -> Vec<(String, ParamState)>
pub fn get_matching(&self, pattern: &str) -> Vec<(String, ParamState)>
Get all parameters matching a pattern
Sourcepub fn snapshot(&self, pattern: &str) -> SnapshotMessage
pub fn snapshot(&self, pattern: &str) -> SnapshotMessage
Create a snapshot of all params matching a pattern
Sourcepub fn full_snapshot(&self) -> SnapshotMessage
pub fn full_snapshot(&self) -> SnapshotMessage
Create a full snapshot
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for RouterState
impl !RefUnwindSafe for RouterState
impl Send for RouterState
impl Sync for RouterState
impl Unpin for RouterState
impl UnsafeUnpin for RouterState
impl !UnwindSafe for RouterState
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