pub trait DavMetaData: Debug + BoxCloneMd + Send + Sync {
    // Required methods
    fn len(&self) -> u64;
    fn modified(&self) -> FsResult<SystemTime>;
    fn is_dir(&self) -> bool;

    // Provided methods
    fn etag(&self) -> Option<String> { ... }
    fn is_file(&self) -> bool { ... }
    fn is_symlink(&self) -> bool { ... }
    fn accessed(&self) -> FsResult<SystemTime> { ... }
    fn created(&self) -> FsResult<SystemTime> { ... }
    fn status_changed(&self) -> FsResult<SystemTime> { ... }
    fn executable(&self) -> FsResult<bool> { ... }
    fn is_empty(&self) -> bool { ... }
}
Expand description

File metadata. Basically type, length, and some timestamps.

Required Methods§

source

fn len(&self) -> u64

Size of the file.

source

fn modified(&self) -> FsResult<SystemTime>

Modified timestamp.

source

fn is_dir(&self) -> bool

File or directory (aka collection).

Provided Methods§

source

fn etag(&self) -> Option<String>

Simplistic implementation of etag()

Returns a simple etag that basically is \<length\>-\<timestamp_in_ms\> with the numbers in hex. Enough for most implementations.

source

fn is_file(&self) -> bool

Is this a file and not a directory. Default: !s_dir().

Is this a symbolic link. Default: false.

source

fn accessed(&self) -> FsResult<SystemTime>

Last access time. Default: FsError::NotImplemented.

source

fn created(&self) -> FsResult<SystemTime>

Creation time. Default: FsError::NotImplemented.

source

fn status_changed(&self) -> FsResult<SystemTime>

Inode change time (ctime). Default: FsError::NotImplemented.

source

fn executable(&self) -> FsResult<bool>

Is file executable (unix: has “x” mode bit). Default: FsError::NotImplemented.

source

fn is_empty(&self) -> bool

Trait Implementations§

source§

impl Clone for Box<dyn DavMetaData>

source§

fn clone(&self) -> Box<dyn DavMetaData>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Implementors§