pub struct ApiEndpoint {
pub url: String,
pub connect_timeout: Duration,
pub keepalive_interval: Duration,
pub keepalive_timeout: Duration,
}Expand description
Where and how to connect: the address and the timeouts of the channel.
§Examples
use std::time::Duration;
use brokapi_finam_protocol::{ApiEndpoint, DEFAULT_ENDPOINT};
// Production: the default.
assert_eq!(ApiEndpoint::default().url, DEFAULT_ENDPOINT);
// A proxy or a local imitation: plain `http://`, a shorter connect timeout.
let mut ep = ApiEndpoint::new("http://127.0.0.1:50051");
ep.connect_timeout = Duration::from_secs(2);
assert_eq!(ep.keepalive_interval, Duration::from_secs(30));Fields§
§url: Stringhttps://host:port (TLS, webpki roots) or http://host:port (plaintext, tests/proxies).
connect_timeout: DurationHow long to wait for the TCP and TLS handshake. Default 10 seconds.
keepalive_interval: DurationHTTP/2 PING interval, detects dead connections under long-lived streams. Default 30 seconds.
Pings are also sent while the channel is idle.
keepalive_timeout: DurationHow long to wait for the answer to a PING before the connection is declared dead. Default 10 seconds.
Implementations§
Source§impl ApiEndpoint
impl ApiEndpoint
Sourcepub fn new(url: impl Into<String>) -> Self
pub fn new(url: impl Into<String>) -> Self
Endpoint for url with the default timeouts (connect 10 s, keepalive 30 s and 10 s).
The URL is not checked here. A bad URL is reported by connect_lazy as
FinamError::Config.
Trait Implementations§
Source§impl Clone for ApiEndpoint
impl Clone for ApiEndpoint
Source§fn clone(&self) -> ApiEndpoint
fn clone(&self) -> ApiEndpoint
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ApiEndpoint
impl Debug for ApiEndpoint
Auto Trait Implementations§
impl Freeze for ApiEndpoint
impl RefUnwindSafe for ApiEndpoint
impl Send for ApiEndpoint
impl Sync for ApiEndpoint
impl Unpin for ApiEndpoint
impl UnsafeUnpin for ApiEndpoint
impl UnwindSafe for ApiEndpoint
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].