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

    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

Size of the file.

Modified timestamp.

File or directory (aka collection).

Provided Methods

Simplistic implementation of etag()

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

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

Is this a symbolic link. Default: false.

Last access time. Default: FsError::NotImplemented.

Creation time. Default: FsError::NotImplemented.

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

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

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more

Implementors