Struct eventsource_client::ReconnectOptions

source ·
pub struct ReconnectOptions { /* private fields */ }
Expand description

Configuration for a Client’s reconnect behaviour.

let reconnect_options = ReconnectOptions::reconnect(true)
                            .retry_initial(false)
                            .delay(Duration::from_secs(1))
                            .backoff_factor(2)
                            .delay_max(Duration::from_secs(60))
                            .build();

See default() for a description of the default behaviour. See ReconnectOptionsBuilder for descriptions of each configurable parameter.

Implementations§

source§

impl ReconnectOptions

source

pub fn reconnect(reconnect: bool) -> ReconnectOptionsBuilder

Start building a ReconnectOptions, by enabling or disabling reconnection on stream error.

If reconnect is true (the default), the client will automatically try to reconnect if the stream ends due to an error. If it is false, the client will stop receiving events after an error.

Trait Implementations§

source§

impl Clone for ReconnectOptions

source§

fn clone(&self) -> ReconnectOptions

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
source§

impl Debug for ReconnectOptions

source§

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

Formats the value using the given formatter. Read more
source§

impl Default for ReconnectOptions

source§

fn default() -> ReconnectOptions

The default reconnect behaviour is to automatically try to reconnect if the stream ends due to an error, but not to retry if the initial connection fails.

The client will wait before each reconnect attempt, to allow time for the error condition to be resolved (e.g. for the SSE server to restart if it went down). It will wait 1 second before the first attempt, and then back off exponentially, up to a maximum wait of 1 minute.

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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 T
where 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> ToOwned for T
where 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 T
where 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 T
where 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.
source§

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

source§

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