DavDownloadSource

Trait DavDownloadSource 

Source
pub trait DavDownloadSource: Send + Sync {
    type Metadata: DavMetaData;

    // Required methods
    fn metadata<'a>(
        &'a self,
        path: &'a DavPath,
    ) -> impl Future<Output = Result<Self::Metadata, DavBackendError>> + Send + 'a;
    fn open_full<'a>(
        &'a self,
        path: &'a DavPath,
    ) -> impl Future<Output = Result<DavOpenedDownload, DavBackendError>> + Send + 'a;
    fn open_range<'a>(
        &'a self,
        path: &'a DavPath,
        range: HttpByteRange,
    ) -> impl Future<Output = Result<DavOpenedDownload, DavBackendError>> + Send + 'a;
}
Expand description

Product adapter used by GET/HEAD after the protocol layer selects a representation.

Required Associated Types§

Required Methods§

Source

fn metadata<'a>( &'a self, path: &'a DavPath, ) -> impl Future<Output = Result<Self::Metadata, DavBackendError>> + Send + 'a

Source

fn open_full<'a>( &'a self, path: &'a DavPath, ) -> impl Future<Output = Result<DavOpenedDownload, DavBackendError>> + Send + 'a

Source

fn open_range<'a>( &'a self, path: &'a DavPath, range: HttpByteRange, ) -> impl Future<Output = Result<DavOpenedDownload, DavBackendError>> + Send + 'a

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§