pub struct ReconnectOptionsBuilder { /* private fields */ }
Expand description
Builder for ReconnectOptions
.
Implementations
sourceimpl ReconnectOptionsBuilder
impl ReconnectOptionsBuilder
pub fn new(reconnect: bool) -> Self
sourcepub fn retry_initial(self, retry: bool) -> Self
pub fn retry_initial(self, retry: bool) -> Self
Configure whether to retry if the initial connection to the server fails.
If true
, the client will automatically retry the connection, with the
same delay and backoff behaviour as for reconnects due to stream error.
If false
(the default), the client will not retry the initial
connection.
sourcepub fn delay(self, delay: Duration) -> Self
pub fn delay(self, delay: Duration) -> Self
Configure the initial delay before trying to reconnect (the default is 1 second).
After an error, the client will wait this long before the first attempt
to reconnect. Subsequent reconnect attempts may wait longer, depending
on the backoff_factor
.
sourcepub fn backoff_factor(self, factor: u32) -> Self
pub fn backoff_factor(self, factor: u32) -> Self
Configure the factor by which delays between reconnect attempts will
exponentially increase, up to delay_max
. The default factor is 2,
so each reconnect attempt will wait twice as long as the previous one.
Set this to 1 to disable exponential backoff (i.e. to make reconnect
attempts at regular intervals equal to the configured delay
).
sourcepub fn delay_max(self, max: Duration) -> Self
pub fn delay_max(self, max: Duration) -> Self
Configure the maximum delay between reconnects (the default is 1
minute). The exponential backoff configured by backoff_factor
will
not cause a delay greater than this value.
sourcepub fn build(self) -> ReconnectOptions
pub fn build(self) -> ReconnectOptions
Finish building the ReconnectOptions
.