Skip to main content

RepositoryStorage

Trait RepositoryStorage 

Source
pub trait RepositoryStorage<D>
where D: Pouf,
{ // Required methods fn store_metadata<'a>( &'a self, meta_path: &MetadataPath, version: MetadataVersion, metadata: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>; fn store_target<'a>( &'a self, target_path: &TargetPath, target: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>; }
Expand description

A writable TUF repository. Most implementors of this trait should also implement RepositoryProvider.

Required Methods§

Source

fn store_metadata<'a>( &'a self, meta_path: &MetadataPath, version: MetadataVersion, metadata: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Store the provided metadata in a location identified by meta_path, version, and D::extension(), overwriting any existing metadata at that location.

Source

fn store_target<'a>( &'a self, target_path: &TargetPath, target: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Store the provided target in a location identified by target_path, overwriting any existing target at that location.

Dyn Compatibility§

This trait is dyn compatible.

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

Implementations on Foreign Types§

Source§

impl<D: Pouf, T: RepositoryStorage<D> + ?Sized> RepositoryStorage<D> for &T

Source§

fn store_metadata<'a>( &'a self, meta_path: &MetadataPath, version: MetadataVersion, metadata: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Source§

fn store_target<'a>( &'a self, target_path: &TargetPath, target: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Source§

impl<D: Pouf, T: RepositoryStorage<D> + ?Sized> RepositoryStorage<D> for &mut T

Source§

fn store_metadata<'a>( &'a self, meta_path: &MetadataPath, version: MetadataVersion, metadata: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Source§

fn store_target<'a>( &'a self, target_path: &TargetPath, target: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Source§

impl<D: Pouf, T: RepositoryStorage<D> + ?Sized> RepositoryStorage<D> for Arc<T>

Source§

fn store_metadata<'a>( &'a self, meta_path: &MetadataPath, version: MetadataVersion, metadata: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Source§

fn store_target<'a>( &'a self, target_path: &TargetPath, target: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Source§

impl<D: Pouf, T: RepositoryStorage<D> + ?Sized> RepositoryStorage<D> for Box<T>

Source§

fn store_metadata<'a>( &'a self, meta_path: &MetadataPath, version: MetadataVersion, metadata: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Source§

fn store_target<'a>( &'a self, target_path: &TargetPath, target: &'a mut (dyn AsyncRead + Send + Unpin), ) -> BoxFuture<'a, Result<()>>

Implementors§