Skip to main content

ResourceResolver

Trait ResourceResolver 

Source
pub trait ResourceResolver: Send + Sync {
    // Required methods
    fn scheme(&self) -> &ResourceScheme;
    fn resolve(
        &self,
        request: &ResourceReadRequest,
    ) -> Result<ResourceResolution, AgentError>;
}
Expand description

Port or behavior contract for resource resolver. Implementors should preserve policy, redaction, idempotency, and replay expectations from the surrounding module. Implementations may perform side effects only as described by the trait methods.

Required Methods§

Source

fn scheme(&self) -> &ResourceScheme

Returns the scheme identifier for this adapter. This returns resource routing metadata and does not resolve the resource.

Source

fn resolve( &self, request: &ResourceReadRequest, ) -> Result<ResourceResolution, AgentError>

Resolves resolve through the configured ports::tool_pack boundary. Concrete implementations own any backing-store, filesystem, or network side effects.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§