Struct unftp_sbe_fs::Filesystem
source · pub struct Filesystem { /* private fields */ }
Expand description
The Filesystem struct is an implementation of the StorageBackend trait that keeps its files inside a specific root directory on local disk.
Implementations§
source§impl Filesystem
impl Filesystem
Trait Implementations§
source§impl Debug for Filesystem
impl Debug for Filesystem
source§impl<User: UserDetail> StorageBackend<User> for Filesystem
impl<User: UserDetail> StorageBackend<User> for Filesystem
source§fn supported_features(&self) -> u32
fn supported_features(&self) -> u32
Tells which optional features are supported by the storage back-end
Return a value with bits set according to the FEATURE_* constants.
source§fn metadata<'life0, 'life1, 'async_trait, P>(
&'life0 self,
_user: &'life1 User,
path: P
) -> Pin<Box<dyn Future<Output = Result<Self::Metadata>> + Send + 'async_trait>>
fn metadata<'life0, 'life1, 'async_trait, P>( &'life0 self, _user: &'life1 User, path: P ) -> Pin<Box<dyn Future<Output = Result<Self::Metadata>> + Send + 'async_trait>>
Returns the
Metadata
for the given file.source§fn list<'life0, 'life1, 'async_trait, P>(
&'life0 self,
_user: &'life1 User,
path: P
) -> Pin<Box<dyn Future<Output = Result<Vec<Fileinfo<PathBuf, Self::Metadata>>>> + Send + 'async_trait>>
fn list<'life0, 'life1, 'async_trait, P>( &'life0 self, _user: &'life1 User, path: P ) -> Pin<Box<dyn Future<Output = Result<Vec<Fileinfo<PathBuf, Self::Metadata>>>> + Send + 'async_trait>>
Returns the list of files in the given directory.
source§fn get<'life0, 'life1, 'async_trait, P>(
&'life0 self,
_user: &'life1 User,
path: P,
start_pos: u64
) -> Pin<Box<dyn Future<Output = Result<Box<dyn AsyncRead + Send + Sync + Unpin>>> + Send + 'async_trait>>
fn get<'life0, 'life1, 'async_trait, P>( &'life0 self, _user: &'life1 User, path: P, start_pos: u64 ) -> Pin<Box<dyn Future<Output = Result<Box<dyn AsyncRead + Send + Sync + Unpin>>> + Send + 'async_trait>>
Returns the content of the given file from offset start_pos.
The starting position will only be greater than zero if the storage back-end implementation
advertises to support partial reads through the supported_features method i.e. the result
from supported_features yield 1 if a logical and operation is applied with FEATURE_RESTART.
source§fn put<'life0, 'life1, 'async_trait, P, R>(
&'life0 self,
_user: &'life1 User,
bytes: R,
path: P,
start_pos: u64
) -> Pin<Box<dyn Future<Output = Result<u64>> + Send + 'async_trait>>
fn put<'life0, 'life1, 'async_trait, P, R>( &'life0 self, _user: &'life1 User, bytes: R, path: P, start_pos: u64 ) -> Pin<Box<dyn Future<Output = Result<u64>> + Send + 'async_trait>>
Writes bytes from the given reader to the specified path starting at offset start_pos in the file
source§fn del<'life0, 'life1, 'async_trait, P>(
&'life0 self,
_user: &'life1 User,
path: P
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
fn del<'life0, 'life1, 'async_trait, P>( &'life0 self, _user: &'life1 User, path: P ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
Deletes the file at the given path.
source§fn rmd<'life0, 'life1, 'async_trait, P>(
&'life0 self,
_user: &'life1 User,
path: P
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
fn rmd<'life0, 'life1, 'async_trait, P>( &'life0 self, _user: &'life1 User, path: P ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
Deletes the given directory.
source§fn mkd<'life0, 'life1, 'async_trait, P>(
&'life0 self,
_user: &'life1 User,
path: P
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
fn mkd<'life0, 'life1, 'async_trait, P>( &'life0 self, _user: &'life1 User, path: P ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
Creates the given directory.
source§fn rename<'life0, 'life1, 'async_trait, P>(
&'life0 self,
_user: &'life1 User,
from: P,
to: P
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
fn rename<'life0, 'life1, 'async_trait, P>( &'life0 self, _user: &'life1 User, from: P, to: P ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
Renames the given file to the given new filename.
source§fn cwd<'life0, 'life1, 'async_trait, P>(
&'life0 self,
_user: &'life1 User,
path: P
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
fn cwd<'life0, 'life1, 'async_trait, P>( &'life0 self, _user: &'life1 User, path: P ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
Changes the working directory to the given path.
source§fn name(&self) -> &str
fn name(&self) -> &str
Implement to set the name of the storage back-end. By default it returns the type signature.
source§fn md5<'life0, 'life1, 'async_trait, P>(
&'life0 self,
user: &'life1 User,
path: P
) -> Pin<Box<dyn Future<Output = Result<String, Error>> + Send + 'async_trait>>
fn md5<'life0, 'life1, 'async_trait, P>( &'life0 self, user: &'life1 User, path: P ) -> Pin<Box<dyn Future<Output = Result<String, Error>> + Send + 'async_trait>>
Returns the MD5 hash for the given file. Read more
source§fn get_into<'a, 'life0, 'life1, 'async_trait, P, W>(
&'life0 self,
user: &'life1 User,
path: P,
start_pos: u64,
output: &'a mut W
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>
fn get_into<'a, 'life0, 'life1, 'async_trait, P, W>( &'life0 self, user: &'life1 User, path: P, start_pos: u64, output: &'a mut W ) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>
Gets the content of the given FTP file from offset start_pos file by copying it to the output writer.
The starting position will only be greater than zero if the storage back-end implementation
advertises to support partial reads through the supported_features method i.e. the result
from supported_features yield 1 if a logical and operation is applied with FEATURE_RESTART.
Auto Trait Implementations§
impl RefUnwindSafe for Filesystem
impl Send for Filesystem
impl Sync for Filesystem
impl Unpin for Filesystem
impl UnwindSafe for Filesystem
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more