[][src]Enum nakadion::consumer::ConnectTimeout

pub enum ConnectTimeout {
    Infinite,
    Seconds(u64),
}

The timeout for a request made to Nakadi to connect to a stream including retries

FromStr

ConnectTimeout can be parsed from a str slice.

use nakadion::components::connector::ConnectTimeout;

let ct: ConnectTimeout = "infinite".parse().unwrap();
assert_eq!(ct, ConnectTimeout::Infinite);

let ct: ConnectTimeout = "60".parse().unwrap();
assert_eq!(ct, ConnectTimeout::Seconds(60));

// JSON also works

let ct: ConnectTimeout = "\"infinite\"".parse().unwrap();
assert_eq!(ct, ConnectTimeout::Infinite);

let ct: ConnectTimeout = r#"{"seconds":60}"#.parse().unwrap();
assert_eq!(ct, ConnectTimeout::Seconds(60));

let ct: ConnectTimeout = "59".parse().unwrap();
assert_eq!(ct, ConnectTimeout::Seconds(59));

Serialize/Deserialize

use nakadion::components::connector::ConnectTimeout;
use serde_json::{self, json};

let infinite_json = json!("infinite");
let ct: ConnectTimeout = serde_json::from_value(infinite_json).unwrap();
assert_eq!(ct, ConnectTimeout::Infinite);

let seconds_json = json!({"seconds": 25});
let ct: ConnectTimeout = serde_json::from_value(seconds_json).unwrap();
assert_eq!(ct, ConnectTimeout::Seconds(25));

Variants

Infinite

There is no limit on the number of connect attempts being done

Seconds(u64)

Retry only for the given time.

This not an exact value and the effective timeout might be longer than the value given here.

Implementations

impl ConnectTimeout[src]

pub const ENV_TYPE_NAME: &'static str[src]

The default name of the environment variable for this type. The name of the environment variable is " CONNECT_TIMEOUT "

pub fn try_from_env() -> Result<Option<Self>, Error>[src]

Initialize from the environment. Returns None if the value was not found and fails if the value could not be parsed. The name of the environment variable is "NAKADION_ CONNECT_TIMEOUT "

pub fn try_from_env_prefixed<T: Into<String>>(
    prefix: T
) -> Result<Option<Self>, Error>
[src]

Initialize from the environment. Returns None if the value was not found and fails if the value could not be parsed. The name of the environment variable is "prefix_ CONNECT_TIMEOUT " The underscore and prefix will be omitted if prefix is empty.

pub fn try_from_env_named<T: AsRef<str>>(
    var_name: T
) -> Result<Option<Self>, Error>
[src]

Initialize from the environment. Returns None if the value was not found and fails if the value could not be parsed. The name of the environment variable is var_name.

pub fn try_from_env_type_name() -> Result<Option<Self>, Error>[src]

Initialize from the environment. Returns None if the value was not found and fails if the value could not be parsed. The name of the environment variable is " CONNECT_TIMEOUT "

pub fn from_env() -> Result<Self, Error>[src]

Initialize from the environment. Fails if the value was not found or if the value could not be parsed. The name of the environment variable is "NAKADION_ CONNECT_TIMEOUT "

pub fn from_env_prefixed<T: Into<String>>(prefix: T) -> Result<Self, Error>[src]

Initialize from the environment. Fails if the value was not found or if the value could not be parsed. The name of the environment variable is "prefix_ CONNECT_TIMEOUT " The underscore and prefix will be omitted if prefix is empty.

pub fn from_env_named<T: AsRef<str>>(var_name: T) -> Result<Self, Error>[src]

Initialize from the environment. Fails if the value was not found or if the value could not be parsed. The name of the environment variable is var_name.

pub fn from_env_type_name() -> Result<Self, Error>[src]

Initialize from the environment. Fails if the value was not found or if the value could not be parsed. The name of the environment variable is " CONNECT_TIMEOUT "

pub fn from_env_opt() -> Option<Self>[src]

Initialize from the environment. Returns None if the value could not be read for any reason. The name of the environment variable is "NAKADION_ CONNECT_TIMEOUT "

pub fn from_env_opt_prefixed<T: Into<String>>(prefix: T) -> Option<Self>[src]

Initialize from the environment. Returns None if the value could not be read for any reason. The name of the environment variable is "prefix_ CONNECT_TIMEOUT " The underscore and prefix will be omitted if prefix is empty.

pub fn from_env_opt_named<T: AsRef<str>>(var_name: T) -> Option<Self>[src]

Initialize from the environment. Returns None if the value could not be read for any reason. The name of the environment variable is var_name.

pub fn from_env_opt_type_name() -> Option<Self>[src]

Initialize from the environment. Returns None if the value could not be read for any reason. The name of the environment variable is " CONNECT_TIMEOUT "

pub fn into_duration_opt(self) -> Option<Duration>[src]

Trait Implementations

impl Clone for ConnectTimeout[src]

impl Copy for ConnectTimeout[src]

impl Debug for ConnectTimeout[src]

impl Default for ConnectTimeout[src]

impl<'de> Deserialize<'de> for ConnectTimeout[src]

impl Display for ConnectTimeout[src]

impl Eq for ConnectTimeout[src]

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

impl FromStr for ConnectTimeout[src]

type Err = Error

The associated error which can be returned from parsing.

impl PartialEq<ConnectTimeout> for ConnectTimeout[src]

impl Serialize for ConnectTimeout[src]

impl StructuralEq for ConnectTimeout[src]

impl StructuralPartialEq for ConnectTimeout[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> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

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

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

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized

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

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[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<V, T> VZip<V> for T where
    V: MultiLane<T>,