pub struct UpstreamPool { /* private fields */ }Implementations§
Source§impl UpstreamPool
impl UpstreamPool
pub async fn discover(&self) -> Result<Vec<UpstreamSnapshot>, UpstreamError>
pub async fn discover_upstream( &self, upstream: &str, ) -> Result<UpstreamSnapshot, UpstreamError>
pub fn subject_scoped_discovery_limit(&self) -> usize
Source§impl UpstreamPool
impl UpstreamPool
pub fn upstream_health( &self, upstream: &str, ) -> Result<UpstreamHealth, UpstreamError>
pub fn connected_count(&self) -> usize
Source§impl UpstreamPool
impl UpstreamPool
pub async fn list_prompts( &self, upstream: &str, ) -> Result<Vec<PromptDescriptor>, UpstreamError>
pub async fn get_prompt( &self, upstream: &str, name: &str, arguments: Option<Map<String, Value>>, ) -> Result<Value, UpstreamError>
Source§impl UpstreamPool
impl UpstreamPool
pub async fn list_resources( &self, upstream: &str, ) -> Result<Vec<ResourceDescriptor>, UpstreamError>
pub async fn read_resource( &self, upstream: &str, uri: &str, ) -> Result<Value, UpstreamError>
Source§impl UpstreamPool
impl UpstreamPool
pub fn install_oauth_provider(&self, provider: Arc<dyn UpstreamOAuthProvider>)
pub fn evict_oauth_subject(&self, upstream: &str, subject: &str)
pub async fn discover_for_subject( &self, subject: Option<&str>, ) -> Result<Vec<UpstreamSnapshot>, UpstreamError>
pub async fn exposed_tools_for_subject( &self, upstream: &str, subject: Option<&str>, ) -> Result<Vec<ToolDescriptor>, UpstreamError>
pub async fn call_tool_for_subject( &self, call: ToolCall, subject: Option<&str>, ) -> Result<Value, UpstreamError>
pub async fn list_resources_for_subject( &self, upstream: &str, subject: Option<&str>, ) -> Result<Vec<ResourceDescriptor>, UpstreamError>
pub async fn read_resource_for_subject( &self, upstream: &str, uri: &str, subject: Option<&str>, ) -> Result<Value, UpstreamError>
pub async fn list_prompts_for_subject( &self, upstream: &str, subject: Option<&str>, ) -> Result<Vec<PromptDescriptor>, UpstreamError>
pub async fn get_prompt_for_subject( &self, upstream: &str, name: &str, arguments: Option<Map<String, Value>>, subject: Option<&str>, ) -> Result<Value, UpstreamError>
Source§impl UpstreamPool
impl UpstreamPool
pub fn exposed_tools( &self, upstream: &str, ) -> Result<Vec<ToolDescriptor>, UpstreamError>
pub fn exposed_tool_count(&self) -> usize
Source§impl UpstreamPool
impl UpstreamPool
pub fn new(options: PoolOptions) -> Self
pub fn response_caps(&self) -> &ResponseCaps
pub fn discovery_concurrency(&self) -> usize
pub fn register_config( &self, config: UpstreamConfig, ) -> Result<(), UpstreamError>
pub fn register_in_process( &self, config: UpstreamConfig, upstream: InProcessUpstream, ) -> Result<(), UpstreamError>
pub async fn call_tool(&self, call: ToolCall) -> Result<Value, UpstreamError>
pub async fn ensure_connected( &self, upstream: &str, ) -> Result<(), UpstreamError>
pub async fn refresh_all(&self)
Trait Implementations§
Source§impl Clone for UpstreamPool
impl Clone for UpstreamPool
Source§fn clone(&self) -> UpstreamPool
fn clone(&self) -> UpstreamPool
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for UpstreamPool
impl RefUnwindSafe for UpstreamPool
impl Send for UpstreamPool
impl Sync for UpstreamPool
impl Unpin for UpstreamPool
impl UnsafeUnpin for UpstreamPool
impl UnwindSafe for UpstreamPool
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