darkwing::server::services::cloud_file_services

Trait CloudFileServiceTrait

source
pub trait CloudFileServiceTrait {
    // Required methods
    fn get_file<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 str,
        local_path: String,
    ) -> Pin<Box<dyn Future<Output = AppResult<Option<String>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn put_file<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 str,
        local_path: String,
        client: S3ClientType,
    ) -> Pin<Box<dyn Future<Output = AppResult<()>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn put_file_bytes<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 str,
        bytes: Vec<u8>,
    ) -> Pin<Box<dyn Future<Output = AppResult<()>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn list_files<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 str,
        client: S3ClientType,
    ) -> Pin<Box<dyn Future<Output = AppResult<Vec<Option<String>>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn generate_presigned_url<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 str,
    ) -> Pin<Box<dyn Future<Output = AppResult<String>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn does_file_exist<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 str,
        client: S3ClientType,
    ) -> Pin<Box<dyn Future<Output = AppResult<bool>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn delete_file<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 str,
    ) -> Pin<Box<dyn Future<Output = AppResult<()>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn put_diff<'life0, 'life1, 'async_trait>(
        &'life0 self,
        key: &'life1 str,
        bytes: Vec<u8>,
    ) -> Pin<Box<dyn Future<Output = AppResult<()>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
}

Required Methods§

source

fn get_file<'life0, 'life1, 'async_trait>( &'life0 self, key: &'life1 str, local_path: String, ) -> Pin<Box<dyn Future<Output = AppResult<Option<String>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn put_file<'life0, 'life1, 'async_trait>( &'life0 self, key: &'life1 str, local_path: String, client: S3ClientType, ) -> Pin<Box<dyn Future<Output = AppResult<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn put_file_bytes<'life0, 'life1, 'async_trait>( &'life0 self, key: &'life1 str, bytes: Vec<u8>, ) -> Pin<Box<dyn Future<Output = AppResult<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn list_files<'life0, 'life1, 'async_trait>( &'life0 self, key: &'life1 str, client: S3ClientType, ) -> Pin<Box<dyn Future<Output = AppResult<Vec<Option<String>>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn generate_presigned_url<'life0, 'life1, 'async_trait>( &'life0 self, key: &'life1 str, ) -> Pin<Box<dyn Future<Output = AppResult<String>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn does_file_exist<'life0, 'life1, 'async_trait>( &'life0 self, key: &'life1 str, client: S3ClientType, ) -> Pin<Box<dyn Future<Output = AppResult<bool>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn delete_file<'life0, 'life1, 'async_trait>( &'life0 self, key: &'life1 str, ) -> Pin<Box<dyn Future<Output = AppResult<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn put_diff<'life0, 'life1, 'async_trait>( &'life0 self, key: &'life1 str, bytes: Vec<u8>, ) -> Pin<Box<dyn Future<Output = AppResult<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Implementors§