Skip to main content

ClientConfig

Struct ClientConfig 

Source
pub struct ClientConfig {
    pub endpoint: String,
    pub origin: Option<String>,
    pub compression: Option<CompressionType>,
    pub rate_limit: Option<String>,
    pub tls_setting: TlsClientConfig,
    pub keepalive: Option<KeepaliveConfig>,
    pub connect_timeout: Duration,
    pub request_timeout: Duration,
    pub buffer_size: Option<usize>,
    pub headers: HashMap<String, String>,
    pub auth: AuthenticationConfig,
}
Expand description

Struct for the client configuration. This struct contains the endpoint, origin, compression type, rate limit, TLS settings, keepalive settings, timeout settings, buffer size settings, headers, and auth settings. The client configuration can be converted to a tonic channel.

Fields§

§endpoint: String

The target the client will connect to.

§origin: Option<String>

Origin for the client.

§compression: Option<CompressionType>

Compression type - TODO(msardara): not implemented yet.

§rate_limit: Option<String>

Rate Limits

§tls_setting: TlsClientConfig

TLS client configuration.

§keepalive: Option<KeepaliveConfig>

Keepalive parameters.

§connect_timeout: Duration

Timeout for the connection.

§request_timeout: Duration

Timeout per request.

§buffer_size: Option<usize>

ReadBufferSize.

§headers: HashMap<String, String>

The headers associated with gRPC requests.

§auth: AuthenticationConfig

Auth configuration for outgoing RPCs.

Implementations§

Source§

impl ClientConfig

Source

pub fn with_endpoint(endpoint: &str) -> Self

Creates a new client configuration with the given endpoint. This function will return a ClientConfig with the endpoint set and all other fields set to default.

Source

pub fn with_origin(self, origin: &str) -> Self

Source

pub fn with_compression(self, compression: CompressionType) -> Self

Source

pub fn with_rate_limit(self, rate_limit: &str) -> Self

Source

pub fn with_tls_setting(self, tls_setting: TLSSetting) -> Self

Source

pub fn with_keepalive(self, keepalive: KeepaliveConfig) -> Self

Source

pub fn with_connect_timeout(self, connect_timeout: Duration) -> Self

Source

pub fn with_request_timeout(self, request_timeout: Duration) -> Self

Source

pub fn with_buffer_size(self, buffer_size: usize) -> Self

Source

pub fn with_headers(self, headers: HashMap<String, String>) -> Self

Source

pub fn with_auth(self, auth: AuthenticationConfig) -> Self

Source

pub fn to_channel( &self, ) -> Result<impl GrpcService<Body, Error: Into<StdError> + Send, ResponseBody: Body<Data = Bytes, Error: Into<StdError> + Send> + Send + 'static, Future: Send> + Send + use<>, ConfigError>

Converts the client configuration to a tonic channel. This function will return a Result with the channel if the configuration is valid. If the configuration is invalid, it will return a ConfigError. The function will set the headers, tls settings, keepalive settings, rate limit settings timeout settings, buffer size settings, and origin settings.

Trait Implementations§

Source§

impl Clone for ClientConfig

Source§

fn clone(&self) -> ClientConfig

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Configuration for ClientConfig

Source§

fn validate(&self) -> Result<(), ConfigurationError>

Validate the component configuration
Source§

impl Debug for ClientConfig

Source§

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

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

impl Default for ClientConfig

Defaults for ClientConfig

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for ClientConfig

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Display for ClientConfig

Source§

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

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

impl PartialEq for ClientConfig

Source§

fn eq(&self, other: &ClientConfig) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for ClientConfig

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§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
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> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<L> LayerExt<L> for L

Source§

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.
Source§

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

Source§

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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
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.
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