Skip to main content

WebSocketConfigBuilder

Struct WebSocketConfigBuilder 

Source
pub struct WebSocketConfigBuilder<S: State = Empty> { /* private fields */ }
Expand description

Use builder syntax to set the inputs and finish with build().

Implementations§

Source§

impl<S: State> WebSocketConfigBuilder<S>

Source

pub fn build(self) -> WebSocketConfig
where S: IsComplete,

Finish building and return the requested object

Source

pub fn url(self, value: String) -> WebSocketConfigBuilder<SetUrl<S>>
where S::Url: IsUnset,

Required.

The URL to connect to.

Source

pub fn headers( self, value: Vec<(String, String)>, ) -> WebSocketConfigBuilder<SetHeaders<S>>
where S::Headers: IsUnset,

Optional (Some / Option setters). Default: <Vec<(String, String)> as Default>::default().

The default headers.

Source

pub fn maybe_headers( self, value: Option<Vec<(String, String)>>, ) -> WebSocketConfigBuilder<SetHeaders<S>>
where S::Headers: IsUnset,

Optional (Some / Option setters). Default: <Vec<(String, String)> as Default>::default().

The default headers.

Source

pub fn heartbeat(self, value: u64) -> WebSocketConfigBuilder<SetHeartbeat<S>>
where S::Heartbeat: IsUnset,

Optional (Some / Option setters). The optional heartbeat interval (seconds).

Source

pub fn maybe_heartbeat( self, value: Option<u64>, ) -> WebSocketConfigBuilder<SetHeartbeat<S>>
where S::Heartbeat: IsUnset,

Optional (Some / Option setters). The optional heartbeat interval (seconds).

Source

pub fn heartbeat_msg( self, value: String, ) -> WebSocketConfigBuilder<SetHeartbeatMsg<S>>
where S::HeartbeatMsg: IsUnset,

Optional (Some / Option setters). The optional heartbeat message.

Source

pub fn maybe_heartbeat_msg( self, value: Option<String>, ) -> WebSocketConfigBuilder<SetHeartbeatMsg<S>>
where S::HeartbeatMsg: IsUnset,

Optional (Some / Option setters). The optional heartbeat message.

Source

pub fn reconnect_timeout_ms( self, value: u64, ) -> WebSocketConfigBuilder<SetReconnectTimeoutMs<S>>
where S::ReconnectTimeoutMs: IsUnset,

Optional (Some / Option setters). The timeout (milliseconds) for reconnection attempts. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn maybe_reconnect_timeout_ms( self, value: Option<u64>, ) -> WebSocketConfigBuilder<SetReconnectTimeoutMs<S>>
where S::ReconnectTimeoutMs: IsUnset,

Optional (Some / Option setters). The timeout (milliseconds) for reconnection attempts. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn reconnect_delay_initial_ms( self, value: u64, ) -> WebSocketConfigBuilder<SetReconnectDelayInitialMs<S>>
where S::ReconnectDelayInitialMs: IsUnset,

Optional (Some / Option setters). The initial reconnection delay (milliseconds) for reconnects. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn maybe_reconnect_delay_initial_ms( self, value: Option<u64>, ) -> WebSocketConfigBuilder<SetReconnectDelayInitialMs<S>>
where S::ReconnectDelayInitialMs: IsUnset,

Optional (Some / Option setters). The initial reconnection delay (milliseconds) for reconnects. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn reconnect_delay_max_ms( self, value: u64, ) -> WebSocketConfigBuilder<SetReconnectDelayMaxMs<S>>
where S::ReconnectDelayMaxMs: IsUnset,

Optional (Some / Option setters). The maximum reconnect delay (milliseconds) for exponential backoff. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn maybe_reconnect_delay_max_ms( self, value: Option<u64>, ) -> WebSocketConfigBuilder<SetReconnectDelayMaxMs<S>>
where S::ReconnectDelayMaxMs: IsUnset,

Optional (Some / Option setters). The maximum reconnect delay (milliseconds) for exponential backoff. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn reconnect_backoff_factor( self, value: f64, ) -> WebSocketConfigBuilder<SetReconnectBackoffFactor<S>>
where S::ReconnectBackoffFactor: IsUnset,

Optional (Some / Option setters). The exponential backoff factor for reconnection delays. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn maybe_reconnect_backoff_factor( self, value: Option<f64>, ) -> WebSocketConfigBuilder<SetReconnectBackoffFactor<S>>
where S::ReconnectBackoffFactor: IsUnset,

Optional (Some / Option setters). The exponential backoff factor for reconnection delays. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn reconnect_jitter_ms( self, value: u64, ) -> WebSocketConfigBuilder<SetReconnectJitterMs<S>>
where S::ReconnectJitterMs: IsUnset,

Optional (Some / Option setters). The maximum jitter (milliseconds) added to reconnection delays. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn maybe_reconnect_jitter_ms( self, value: Option<u64>, ) -> WebSocketConfigBuilder<SetReconnectJitterMs<S>>
where S::ReconnectJitterMs: IsUnset,

Optional (Some / Option setters). The maximum jitter (milliseconds) added to reconnection delays. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn reconnect_max_attempts( self, value: u32, ) -> WebSocketConfigBuilder<SetReconnectMaxAttempts<S>>
where S::ReconnectMaxAttempts: IsUnset,

Optional (Some / Option setters). The maximum number of reconnection attempts before giving up. Note: Only applies to handler mode. Ignored in stream mode.

  • None: Unlimited reconnection attempts (default, recommended for production).
  • Some(n): After n failed attempts, transition to CLOSED state.
Source

pub fn maybe_reconnect_max_attempts( self, value: Option<u32>, ) -> WebSocketConfigBuilder<SetReconnectMaxAttempts<S>>
where S::ReconnectMaxAttempts: IsUnset,

Optional (Some / Option setters). The maximum number of reconnection attempts before giving up. Note: Only applies to handler mode. Ignored in stream mode.

  • None: Unlimited reconnection attempts (default, recommended for production).
  • Some(n): After n failed attempts, transition to CLOSED state.
Source

pub fn idle_timeout_ms( self, value: u64, ) -> WebSocketConfigBuilder<SetIdleTimeoutMs<S>>
where S::IdleTimeoutMs: IsUnset,

Optional (Some / Option setters). The idle timeout (milliseconds) for the read task. When set, the read task will break and trigger reconnection if no data is received within this duration. Useful for detecting silently dead connections where the server stops sending without closing. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn maybe_idle_timeout_ms( self, value: Option<u64>, ) -> WebSocketConfigBuilder<SetIdleTimeoutMs<S>>
where S::IdleTimeoutMs: IsUnset,

Optional (Some / Option setters). The idle timeout (milliseconds) for the read task. When set, the read task will break and trigger reconnection if no data is received within this duration. Useful for detecting silently dead connections where the server stops sending without closing. Note: Only applies to handler mode. Ignored in stream mode.

Source

pub fn backend( self, value: TransportBackend, ) -> WebSocketConfigBuilder<SetBackend<S>>
where S::Backend: IsUnset,

Optional (Some / Option setters). Default: <TransportBackend as Default>::default().

The transport backend to use for the WebSocket connection.

Defaults to TransportBackend::Tungstenite. Selecting TransportBackend::Sockudo requires the transport-sockudo Cargo feature; otherwise connect_with_server returns an error. Both backends pass headers into the HTTP upgrade request.

Source

pub fn maybe_backend( self, value: Option<TransportBackend>, ) -> WebSocketConfigBuilder<SetBackend<S>>
where S::Backend: IsUnset,

Optional (Some / Option setters). Default: <TransportBackend as Default>::default().

The transport backend to use for the WebSocket connection.

Defaults to TransportBackend::Tungstenite. Selecting TransportBackend::Sockudo requires the transport-sockudo Cargo feature; otherwise connect_with_server returns an error. Both backends pass headers into the HTTP upgrade request.

Source

pub fn proxy_url(self, value: String) -> WebSocketConfigBuilder<SetProxyUrl<S>>
where S::ProxyUrl: IsUnset,

Optional (Some / Option setters). Optional forward proxy URL for the WebSocket connection.

Routes the connection through an HTTP CONNECT tunnel. Accepts http:// and https:// schemes; SOCKS schemes are not yet supported.

Source

pub fn maybe_proxy_url( self, value: Option<String>, ) -> WebSocketConfigBuilder<SetProxyUrl<S>>
where S::ProxyUrl: IsUnset,

Optional (Some / Option setters). Optional forward proxy URL for the WebSocket connection.

Routes the connection through an HTTP CONNECT tunnel. Accepts http:// and https:// schemes; SOCKS schemes are not yet supported.

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

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

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

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

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

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

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>,

Source§

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 T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> Ungil for T
where T: Send,