[][src]Enum multipart::server::save::SaveDir

pub enum SaveDir {
    Temp(TempDir),
    Perm(PathBuf),
}

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

impl SaveDir[src]

pub fn as_path(&self) -> &Path[src]

Get the path of this directory, either temporary or permanent.

pub fn is_temporary(&self) -> bool[src]

Returns true if this is a temporary directory which will be deleted on-drop.

pub fn into_path(self) -> PathBuf[src]

Unwrap the PathBuf from self; if this is a temporary directory, it will be converted to a permanent one.

pub fn keep(&mut self)[src]

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.

pub fn delete(self) -> Result<()>[src]

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.).

Trait Implementations

impl AsRef<Path> for SaveDir[src]

impl Debug for SaveDir[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DebugAny for T where
    T: Any + Debug

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Typeable for T where
    T: Any

impl<T> UnsafeAny for T where
    T: Any

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,