pub enum SaveDir {
Temp(TempDir),
Perm(PathBuf),
}
Expand description
The save directory for Entries
. May be temporary (delete-on-drop) or permanent.
Variants§
Temp(TempDir)
This directory is temporary and will be deleted, along with its contents, when this wrapper is dropped.
Perm(PathBuf)
This directory is permanent and will be left on the filesystem when this wrapper is dropped.
N.B. If this directory is in the OS temporary directory then it may still be deleted at any time.
Implementations§
Source§impl SaveDir
impl SaveDir
Sourcepub fn is_temporary(&self) -> bool
pub fn is_temporary(&self) -> bool
Returns true
if this is a temporary directory which will be deleted on-drop.
Sourcepub fn into_path(self) -> PathBuf
pub fn into_path(self) -> PathBuf
Unwrap the PathBuf
from self
; if this is a temporary directory,
it will be converted to a permanent one.
Sourcepub fn keep(&mut self)
pub fn keep(&mut self)
If this SaveDir
is temporary, convert it to permanent.
This is a no-op if it already is permanent.
§Warning: Potential Data Loss
Even though this will prevent deletion on-drop, the temporary folder on most OSes (where this directory is created by default) can be automatically cleared by the OS at any time, usually on reboot or when free space is low.
It is recommended that you relocate the files from a request which you want to keep to a permanent folder on the filesystem.
Sourcepub fn delete(self) -> Result<()>
pub fn delete(self) -> Result<()>
Delete this directory and its contents, regardless of its permanence.
§Warning: Potential Data Loss
This is very likely irreversible, depending on the OS implementation.
Files deleted programmatically are deleted directly from disk, as compared to most file manager applications which use a staging area from which deleted files can be safely recovered (i.e. Windows’ Recycle Bin, OS X’s Trash Can, etc.).