pub struct ConfigSource {
pub authorities: Vec<Authority>,
pub initial_fetch_timeout: Option<Duration>,
pub resource_api_version: i32,
pub config_source_specifier: Option<ConfigSourceSpecifier>,
}
Expand description
Configuration for :ref:listeners <config_listeners>
, :ref:clusters <config_cluster_manager>
, :ref:routes <envoy_v3_api_msg_config.route.v3.RouteConfiguration>
, :ref:endpoints <arch_overview_service_discovery>
etc. may either be sourced from the
filesystem or from an xDS API source. Filesystem configs are watched with
inotify for updates.
[#next-free-field: 9]
Fields§
Authorities that this config source may be used for. An authority specified in a xdstp:// URL
is resolved to a ConfigSource
prior to configuration fetch. This field provides the
association between authority name and configuration source.
[#not-implemented-hide:]
initial_fetch_timeout: Option<Duration>
When this timeout is specified, Envoy will wait no longer than the specified time for first
config response on this xDS subscription during the :ref:initialization process <arch_overview_initialization>
. After reaching the timeout, Envoy will move to the next
initialization phase, even if the first config is not delivered yet. The timer is activated
when the xDS API subscription starts, and is disarmed on first config update or on error. 0
means no timeout - Envoy will wait indefinitely for the first xDS config (unless another
timeout applies). The default is 15s.
resource_api_version: i32
API version for xDS resources. This implies the type URLs that the client will request for resources and the resource type that the client will in turn expect to be delivered.
config_source_specifier: Option<ConfigSourceSpecifier>
Implementations§
Source§impl ConfigSource
impl ConfigSource
Sourcepub fn resource_api_version(&self) -> ApiVersion
pub fn resource_api_version(&self) -> ApiVersion
Returns the enum value of resource_api_version
, or the default if the field is set to an invalid enum value.
Sourcepub fn set_resource_api_version(&mut self, value: ApiVersion)
pub fn set_resource_api_version(&mut self, value: ApiVersion)
Sets resource_api_version
to the provided enum value.
Trait Implementations§
Source§impl Clone for ConfigSource
impl Clone for ConfigSource
Source§fn clone(&self) -> ConfigSource
fn clone(&self) -> ConfigSource
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ConfigSource
impl Debug for ConfigSource
Source§impl Default for ConfigSource
impl Default for ConfigSource
Source§impl Message for ConfigSource
impl Message for ConfigSource
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.Source§impl Name for ConfigSource
impl Name for ConfigSource
Source§const NAME: &'static str = "ConfigSource"
const NAME: &'static str = "ConfigSource"
Message
.
This name is the same as it appears in the source .proto file, e.g. FooBar
.Source§const PACKAGE: &'static str = "envoy.config.core.v3"
const PACKAGE: &'static str = "envoy.config.core.v3"
.
, e.g. google.protobuf
.Source§fn full_name() -> String
fn full_name() -> String
Message
.
It’s prefixed with the package name and names of any parent messages,
e.g. google.rpc.BadRequest.FieldViolation
.
By default, this is the package name followed by the message name.
Fully-qualified names must be unique within a domain of Type URLs.Source§impl PartialEq for ConfigSource
impl PartialEq for ConfigSource
impl StructuralPartialEq for ConfigSource
Auto Trait Implementations§
impl Freeze for ConfigSource
impl RefUnwindSafe for ConfigSource
impl Send for ConfigSource
impl Sync for ConfigSource
impl Unpin for ConfigSource
impl UnwindSafe for ConfigSource
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request