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§
Sourcefn scheme(&self) -> &ResourceScheme
fn scheme(&self) -> &ResourceScheme
Returns the scheme identifier for this adapter. This returns resource routing metadata and does not resolve the resource.
Sourcefn resolve(
&self,
request: &ResourceReadRequest,
) -> Result<ResourceResolution, AgentError>
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".