[−][src]Struct sudoku_backend::ops::setup::ActivityCache
A time-limited cache of session IDs for "currently active" indicator.
Refer to doc/check.rs
for more details.
Examples
#[get("/endpoint")] fn endpoint(db: DatabaseConnection, ac: State<ActivityCache>) -> String { // Get the ID of this session ac.register_activity(12); // rest of funxionality is outside the scope of this document funxion_result } #[get("/users_active")] fn users_active(ac: State<ActivityCache>) -> String { ac.active_users().to_string() } fn main() { let database_file: (String, PathBuf) = /* obtained elsewhere */; rocket::ignite() .manage(DatabaseConnection::initialise(&database_file)) .manage(ActivityCache::new(*ACTIVITY_TIMEOUT_DEFAULT)) .mount("/", routes![endpoint, users_active]) .launch(); }
Methods
impl ActivityCache
[src]
impl ActivityCache
pub fn new(timeout: Duration) -> ActivityCache
[src]
pub fn new(timeout: Duration) -> ActivityCache
Create a cache timing out after the specified duration.
pub fn register_activity(&self, session_id: usize)
[src]
pub fn register_activity(&self, session_id: usize)
Mark the specified session ID as last active now.
pub fn active_users(&self) -> usize
[src]
pub fn active_users(&self) -> usize
Get how many users can be considered "active", i.e. amount of sessions last active at most the previously-specified amount of time before now.
Trait Implementations
impl Clone for ActivityCache
[src]
impl Clone for ActivityCache
fn clone(&self) -> ActivityCache
[src]
fn clone(&self) -> ActivityCache
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0
[src]Performs copy-assignment from source
. Read more
impl Debug for ActivityCache
[src]
impl Debug for ActivityCache
Auto Trait Implementations
impl Send for ActivityCache
impl Send for ActivityCache
impl Sync for ActivityCache
impl Sync for ActivityCache
Blanket Implementations
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
🔬 This is a nightly-only experimental API. (
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId
[src]
fn get_type_id(&self) -> TypeId
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
🔬 This is a nightly-only experimental API. (
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
fn borrow_mut(&mut self) -> &mut T
impl<T> Typeable for T where
T: Any,
[src]
impl<T> Typeable for T where
T: Any,
impl<T> IntoSql for T
[src]
impl<T> IntoSql for T
fn into_sql<T>(self) -> Self::Expression where
Self: AsExpression<T>,
[src]
fn into_sql<T>(self) -> Self::Expression where
Self: AsExpression<T>,
Convert self
to an expression for Diesel's query builder. Read more
fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression where
&'a Self: AsExpression<T>,
[src]
fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression where
&'a Self: AsExpression<T>,
Convert &self
to an expression for Diesel's query builder. Read more