pub struct SessionManager { /* private fields */ }Expand description
Session manager for tracking WebSocket connections.
Implementations§
Source§impl SessionManager
impl SessionManager
Sourcepub async fn create_session(&self) -> SessionInfo
pub async fn create_session(&self) -> SessionInfo
Create a new session.
Sourcepub async fn get_session(&self, session_id: SessionId) -> Option<SessionInfo>
pub async fn get_session(&self, session_id: SessionId) -> Option<SessionInfo>
Get a session by ID.
Sourcepub async fn update_session(&self, session: SessionInfo)
pub async fn update_session(&self, session: SessionInfo)
Update a session.
Sourcepub async fn remove_session(&self, session_id: SessionId)
pub async fn remove_session(&self, session_id: SessionId)
Remove a session.
Sourcepub async fn disconnect_session(&self, session_id: SessionId)
pub async fn disconnect_session(&self, session_id: SessionId)
Mark a session as disconnected.
Sourcepub async fn get_connected_sessions(&self) -> Vec<SessionInfo>
pub async fn get_connected_sessions(&self) -> Vec<SessionInfo>
Get all connected sessions.
Sourcepub async fn count_by_status(&self) -> SessionCounts
pub async fn count_by_status(&self) -> SessionCounts
Count sessions by status.
Sourcepub async fn cleanup_old_sessions(&self, max_age: Duration)
pub async fn cleanup_old_sessions(&self, max_age: Duration)
Clean up disconnected sessions older than the given duration.
Auto Trait Implementations§
impl Freeze for SessionManager
impl !RefUnwindSafe for SessionManager
impl Send for SessionManager
impl Sync for SessionManager
impl Unpin for SessionManager
impl !UnwindSafe for SessionManager
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> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request