pub struct ProxyHandler { /* private fields */ }
Expand description
A proxy handler that forwards requests to a client based on the server’s capabilities
Implementations§
Source§impl ProxyHandler
impl ProxyHandler
pub fn new(client: RunningService<RoleClient, ClientInfo>) -> Self
Trait Implementations§
Source§impl Clone for ProxyHandler
impl Clone for ProxyHandler
Source§fn clone(&self) -> ProxyHandler
fn clone(&self) -> ProxyHandler
Returns a duplicate of the value. Read more
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl ServerHandler for ProxyHandler
impl ServerHandler for ProxyHandler
fn get_info(&self) -> ServerInfo
async fn list_tools( &self, request: PaginatedRequestParam, _context: RequestContext<RoleServer>, ) -> Result<ListToolsResult, Error>
async fn call_tool( &self, request: CallToolRequestParam, _context: RequestContext<RoleServer>, ) -> Result<CallToolResult, Error>
async fn list_resources( &self, request: PaginatedRequestParam, _context: RequestContext<RoleServer>, ) -> Result<ListResourcesResult, Error>
async fn read_resource( &self, request: ReadResourceRequestParam, _context: RequestContext<RoleServer>, ) -> Result<ReadResourceResult, Error>
async fn list_resource_templates( &self, request: PaginatedRequestParam, _context: RequestContext<RoleServer>, ) -> Result<ListResourceTemplatesResult, Error>
async fn list_prompts( &self, request: PaginatedRequestParam, _context: RequestContext<RoleServer>, ) -> Result<ListPromptsResult, Error>
async fn get_prompt( &self, request: GetPromptRequestParam, _context: RequestContext<RoleServer>, ) -> Result<GetPromptResult, Error>
async fn complete( &self, request: CompleteRequestParam, _context: RequestContext<RoleServer>, ) -> Result<CompleteResult, Error>
async fn on_progress(&self, notification: ProgressNotificationParam)
async fn on_cancelled(&self, notification: CancelledNotificationParam)
fn ping( &self, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<(), ErrorData>> + Send
fn initialize( &self, request: InitializeRequestParam, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<InitializeResult, ErrorData>> + Send
fn set_level( &self, request: SetLevelRequestParam, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<(), ErrorData>> + Send
fn subscribe( &self, request: SubscribeRequestParam, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<(), ErrorData>> + Send
fn unsubscribe( &self, request: UnsubscribeRequestParam, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<(), ErrorData>> + Send
fn on_initialized(&self) -> impl Future<Output = ()> + Send
fn on_roots_list_changed(&self) -> impl Future<Output = ()> + Send
fn get_peer(&self) -> Option<Peer<RoleServer>>
fn set_peer(&mut self, peer: Peer<RoleServer>)
Auto Trait Implementations§
impl Freeze for ProxyHandler
impl !RefUnwindSafe for ProxyHandler
impl Send for ProxyHandler
impl Sync for ProxyHandler
impl Unpin for ProxyHandler
impl !UnwindSafe for ProxyHandler
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<R, S> DynService<R> for Swhere
R: ServiceRole,
S: Service<R>,
impl<R, S> DynService<R> for Swhere
R: ServiceRole,
S: Service<R>,
fn handle_request( &self, request: <R as ServiceRole>::PeerReq, context: RequestContext<R>, ) -> Pin<Box<dyn Future<Output = Result<<R as ServiceRole>::Resp, ErrorData>> + Send + '_>>
fn handle_notification( &self, notification: <R as ServiceRole>::PeerNot, ) -> Pin<Box<dyn Future<Output = Result<(), ErrorData>> + Send + '_>>
fn get_peer(&self) -> Option<Peer<R>>
fn set_peer(&mut self, peer: Peer<R>)
fn get_info(&self) -> <R as ServiceRole>::Info
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<H> Service<RoleServer> for Hwhere
H: ServerHandler,
impl<H> Service<RoleServer> for Hwhere
H: ServerHandler,
async fn handle_request( &self, request: <RoleServer as ServiceRole>::PeerReq, context: RequestContext<RoleServer>, ) -> Result<<RoleServer as ServiceRole>::Resp, ErrorData>
async fn handle_notification( &self, notification: <RoleServer as ServiceRole>::PeerNot, ) -> Result<(), ErrorData>
fn get_peer(&self) -> Option<Peer<RoleServer>>
fn set_peer(&mut self, peer: Peer<RoleServer>)
fn get_info(&self) -> <RoleServer as ServiceRole>::Info
Source§impl<S> ServiceExt<RoleServer> for Swhere
S: Service<RoleServer>,
impl<S> ServiceExt<RoleServer> for Swhere
S: Service<RoleServer>,
fn serve_with_ct<T, E, A>( self, transport: T, ct: CancellationToken, ) -> impl Future<Output = Result<RunningService<RoleServer, S>, E>> + Send
Source§fn into_dyn(self) -> Box<dyn DynService<R>>
fn into_dyn(self) -> Box<dyn DynService<R>>
Convert this service to a dynamic boxed service Read more