pub struct SessionManager { /* private fields */ }Expand description
Session manager handles session lifecycle and state
Implementations§
Source§impl SessionManager
impl SessionManager
Sourcepub fn new(config: ClientConfig) -> Self
pub fn new(config: ClientConfig) -> Self
Create a new session manager
Sourcepub async fn session_info(&self) -> SessionInfo
pub async fn session_info(&self) -> SessionInfo
Get current session information
Sourcepub async fn session_id(&self) -> McpClientResult<String>
pub async fn session_id(&self) -> McpClientResult<String>
Get session ID (returns error if not yet initialized by server)
Sourcepub async fn session_id_optional(&self) -> Option<String>
pub async fn session_id_optional(&self) -> Option<String>
Get session ID if available (returns None if not initialized)
Sourcepub async fn set_session_id(&self, session_id: String) -> McpClientResult<()>
pub async fn set_session_id(&self, session_id: String) -> McpClientResult<()>
Set session ID (called when server provides it during initialization)
Sourcepub async fn state(&self) -> SessionState
pub async fn state(&self) -> SessionState
Get current session state
Sourcepub async fn set_state(&self, state: SessionState)
pub async fn set_state(&self, state: SessionState)
Update session state
Sourcepub async fn initialize(
&self,
client_capabilities: ClientCapabilities,
server_capabilities: ServerCapabilities,
protocol_version: String,
) -> McpClientResult<()>
pub async fn initialize( &self, client_capabilities: ClientCapabilities, server_capabilities: ServerCapabilities, protocol_version: String, ) -> McpClientResult<()>
Initialize session with server capabilities
Sourcepub async fn mark_initializing(&self) -> McpClientResult<()>
pub async fn mark_initializing(&self) -> McpClientResult<()>
Mark session as initializing
Sourcepub async fn handle_error(&self, error: String)
pub async fn handle_error(&self, error: String)
Handle session error
Sourcepub async fn start_reconnection(&self)
pub async fn start_reconnection(&self)
Start reconnection process
Sourcepub async fn update_activity(&self)
pub async fn update_activity(&self)
Update activity timestamp
Sourcepub fn create_client_capabilities(&self) -> ClientCapabilities
pub fn create_client_capabilities(&self) -> ClientCapabilities
Get client capabilities for initialization
Sourcepub async fn create_initialize_request(&self) -> InitializeRequest
pub async fn create_initialize_request(&self) -> InitializeRequest
Create initialization request
Sourcepub async fn validate_server_capabilities(
&self,
server_capabilities: &ServerCapabilities,
) -> McpClientResult<()>
pub async fn validate_server_capabilities( &self, server_capabilities: &ServerCapabilities, ) -> McpClientResult<()>
Validate server capabilities
Sourcepub async fn statistics(&self) -> SessionStatistics
pub async fn statistics(&self) -> SessionStatistics
Get session statistics
Trait Implementations§
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