Struct salvo::hyper::client::conn::Builder [−]
A builder to configure an HTTP connection.
After setting options, the builder is used to create a handshake future.
Implementations
impl Builder
pub fn new() -> Builder
Creates a new connection builder.
pub fn executor<E>(&mut self, exec: E) -> &mut Builder where
E: Executor<Pin<Box<dyn Future<Output = ()> + 'static + Send, Global>>> + Send + Sync + 'static,
E: Executor<Pin<Box<dyn Future<Output = ()> + 'static + Send, Global>>> + Send + Sync + 'static,
Provide an executor to execute background HTTP2 tasks.
pub fn http2_only(&mut self, enabled: bool) -> &mut Builder
Sets whether HTTP2 is required.
Default is false.
pub fn http2_initial_stream_window_size(
&mut self,
sz: impl Into<Option<u32>>
) -> &mut Builder
&mut self,
sz: impl Into<Option<u32>>
) -> &mut Builder
Sets the SETTINGS_INITIAL_WINDOW_SIZE
option for HTTP2
stream-level flow control.
Passing None
will do nothing.
If not set, hyper will use a default.
pub fn http2_initial_connection_window_size(
&mut self,
sz: impl Into<Option<u32>>
) -> &mut Builder
&mut self,
sz: impl Into<Option<u32>>
) -> &mut Builder
Sets the max connection-level flow control for HTTP2
Passing None
will do nothing.
If not set, hyper will use a default.
pub fn http2_adaptive_window(&mut self, enabled: bool) -> &mut Builder
Sets whether to use an adaptive flow control.
Enabling this will override the limits set in
http2_initial_stream_window_size
and
http2_initial_connection_window_size
.
pub fn http2_max_frame_size(
&mut self,
sz: impl Into<Option<u32>>
) -> &mut Builder
&mut self,
sz: impl Into<Option<u32>>
) -> &mut Builder
Sets the maximum frame size to use for HTTP2.
Passing None
will do nothing.
If not set, hyper will use a default.
pub fn http2_keep_alive_interval(
&mut self,
interval: impl Into<Option<Duration>>
) -> &mut Builder
&mut self,
interval: impl Into<Option<Duration>>
) -> &mut Builder
Sets an interval for HTTP2 Ping frames should be sent to keep a connection alive.
Pass None
to disable HTTP2 keep-alive.
Default is currently disabled.
Cargo Feature
Requires the runtime
cargo feature to be enabled.
pub fn http2_keep_alive_timeout(&mut self, timeout: Duration) -> &mut Builder
Sets a timeout for receiving an acknowledgement of the keep-alive ping.
If the ping is not acknowledged within the timeout, the connection will
be closed. Does nothing if http2_keep_alive_interval
is disabled.
Default is 20 seconds.
Cargo Feature
Requires the runtime
cargo feature to be enabled.
pub fn http2_keep_alive_while_idle(&mut self, enabled: bool) -> &mut Builder
Sets whether HTTP2 keep-alive should apply while the connection is idle.
If disabled, keep-alive pings are only sent while there are open
request/responses streams. If enabled, pings are also sent when no
streams are active. Does nothing if http2_keep_alive_interval
is
disabled.
Default is false
.
Cargo Feature
Requires the runtime
cargo feature to be enabled.
pub fn handshake<T, B>(
&self,
io: T
) -> impl Future<Output = Result<(SendRequest<B>, Connection<T, B>), Error>> where
B: Body + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
<B as Body>::Data: Send,
<B as Body>::Error: Into<Box<dyn Error + 'static + Sync + Send, Global>>,
&self,
io: T
) -> impl Future<Output = Result<(SendRequest<B>, Connection<T, B>), Error>> where
B: Body + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
<B as Body>::Data: Send,
<B as Body>::Error: Into<Box<dyn Error + 'static + Sync + Send, Global>>,
Constructs a connection with the configured options and IO.
Trait Implementations
impl Clone for Builder
pub fn clone(&self) -> Builder
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for Builder
Auto Trait Implementations
impl !RefUnwindSafe for Builder
impl Send for Builder
impl Sync for Builder
impl Unpin for Builder
impl !UnwindSafe for Builder
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,