pub struct TimeoutConfig { /* private fields */ }
Expand description

Top-level configuration for timeouts

Example


use aws_smithy_types::timeout::TimeoutConfig;

let timeout_config = TimeoutConfig::builder()
    .operation_timeout(Duration::from_secs(30))
    .operation_attempt_timeout(Duration::from_secs(10))
    .connect_timeout(Duration::from_secs(3))
    .build();

assert_eq!(
    timeout_config.operation_timeout(),
    Some(Duration::from_secs(30))
);
assert_eq!(
    timeout_config.operation_attempt_timeout(),
    Some(Duration::from_secs(10))
);
assert_eq!(
    timeout_config.connect_timeout(),
    Some(Duration::from_secs(3))
);

Implementations§

§

impl TimeoutConfig

pub fn builder() -> TimeoutConfigBuilder

Returns a builder to create a TimeoutConfig.

pub fn to_builder(&self) -> TimeoutConfigBuilder

Returns a builder equivalent of this TimeoutConfig.

pub fn into_builder(self) -> TimeoutConfigBuilder

Converts this TimeoutConfig into a builder.

pub fn disabled() -> TimeoutConfig

Returns a timeout config with all timeouts disabled.

pub fn connect_timeout(&self) -> Option<Duration>

Returns this config’s connect timeout.

The connect timeout is a limit on the amount of time it takes to initiate a socket connection.

pub fn read_timeout(&self) -> Option<Duration>

Returns this config’s read timeout.

The read timeout is the limit on the amount of time it takes to read the first byte of a response from the time the request is initiated.

pub fn operation_timeout(&self) -> Option<Duration>

Returns this config’s operation timeout.

An operation represents the full request/response lifecycle of a call to a service. The operation timeout is a limit on the total amount of time it takes for an operation to be fully serviced, including the time for all retries that may have been attempted for it.

pub fn operation_attempt_timeout(&self) -> Option<Duration>

Returns this config’s operation attempt timeout.

An operation represents the full request/response lifecycle of a call to a service. When retries are enabled, then this setting makes it possible to set a timeout for individual retry attempts (including the initial attempt) for an operation.

pub fn has_timeouts(&self) -> bool

Returns true if any of the possible timeouts are set.

Trait Implementations§

§

impl Clone for TimeoutConfig

§

fn clone(&self) -> TimeoutConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
§

impl Debug for TimeoutConfig

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl From<TimeoutConfig> for TimeoutConfigBuilder

§

fn from(timeout_config: TimeoutConfig) -> TimeoutConfigBuilder

Converts to this type from the input type.
§

impl PartialEq<TimeoutConfig> for TimeoutConfig

§

fn eq(&self, other: &TimeoutConfig) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl Storable for TimeoutConfig

§

type Storer = StoreReplace<TimeoutConfig>

Specify how an item is stored in the config bag, e.g. [StoreReplace] and [StoreAppend]
§

impl StructuralPartialEq for TimeoutConfig

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere T: 'a,

§

fn implicit( self, class: Class, constructed: bool, tag: u32 ) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

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

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more