pub struct SessionInfo {
pub session_id: String,
pub client_capabilities: Option<ClientCapabilities>,
pub server_capabilities: Option<ServerCapabilities>,
pub state: HashMap<String, Value>,
pub created_at: u64,
pub last_activity: u64,
pub is_initialized: bool,
pub metadata: HashMap<String, Value>,
}Expand description
Core session storage traits and types for pluggable backend implementations Comprehensive session information
Fields§
§session_id: StringUnique session identifier (UUID v7 for temporal ordering)
client_capabilities: Option<ClientCapabilities>Client capabilities negotiated during initialization
server_capabilities: Option<ServerCapabilities>Server capabilities provided during initialization
state: HashMap<String, Value>Session state key-value store
created_at: u64Session creation timestamp (Unix millis)
last_activity: u64Last activity timestamp (Unix millis)
is_initialized: boolWhether session has completed MCP initialization
metadata: HashMap<String, Value>Session metadata (connection info, user agent, etc.)
Implementations§
Source§impl SessionInfo
impl SessionInfo
Sourcepub fn is_expired(&self, timeout_minutes: u64) -> bool
pub fn is_expired(&self, timeout_minutes: u64) -> bool
Check if session is expired based on timeout
Trait Implementations§
Source§impl Clone for SessionInfo
impl Clone for SessionInfo
Source§fn clone(&self) -> SessionInfo
fn clone(&self) -> SessionInfo
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SessionInfo
impl Debug for SessionInfo
Source§impl Default for SessionInfo
impl Default for SessionInfo
Source§impl<'de> Deserialize<'de> for SessionInfo
impl<'de> Deserialize<'de> for SessionInfo
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for SessionInfo
impl RefUnwindSafe for SessionInfo
impl Send for SessionInfo
impl Sync for SessionInfo
impl Unpin for SessionInfo
impl UnwindSafe for SessionInfo
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