[][src]Struct ffsend_api::action::params::ParamsData

pub struct ParamsData {
    pub download_limit: Option<u8>,
    pub expiry_time: Option<usize>,
}

The parameters data object, that is sent to the server.

Fields

download_limit: Option<u8>

The number of times this file may be downloaded. This value must be within a specific range, as enforced by Send servers.

expiry_time: Option<usize>

The time in seconds after when the file expires. This value must be within a specific range, as enforced by Send servers. Only used with Send v3.

Implementations

impl ParamsData[src]

pub fn new() -> Self[src]

Construct a new parameters object, that is empty.

pub fn from(download_limit: Option<u8>, expiry_time: Option<usize>) -> Self[src]

Create a new parameters data object, with the given parameters.

pub fn set_download_limit(
    &mut self,
    download_limit: Option<u8>
) -> Result<(), ParamsDataError>
[src]

Set the maximum number of allowed downloads, after which the file will be removed.

None may be given, to keep this parameter as is.

An error may be returned if the download value is out of the allowed bound. These bounds are fixed and enforced by the server. See PARAMS_DOWNLOAD_MIN and PARAMS_DOWNLOAD_MAX.

pub fn set_expiry_time(
    &mut self,
    expiry_time: Option<usize>
) -> Result<(), ParamsDataError>
[src]

Set the expiry time in seconds for files.

None may be given, to keep this parameter as is.

An error may be returned if the expiry time value is out of the allowed bound. These bounds are fixed and enforced by the server.

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

Check whether this parameters object is empty, and wouldn't change any parameter on the server when sent. Sending an empty parameter data object would thus be useless.

pub fn normalize(&mut self, version: Version)[src]

Normalize this data for the given version.

For example, Send v2 does not support the expiry time field. If normalizing for this version this field is dropped from the struct.

Trait Implementations

impl Clone for ParamsData[src]

impl Debug for ParamsData[src]

impl Default for ParamsData[src]

impl Serialize for ParamsData[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> From<T> for T[src]

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

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> Sealed<T> for T where
    T: ?Sized

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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