Class ExtensionConfigDiscoveryServiceGrpc.ExtensionConfigDiscoveryServiceFutureStub
java.lang.Object
io.grpc.stub.AbstractStub<S>
io.grpc.stub.AbstractFutureStub<ExtensionConfigDiscoveryServiceGrpc.ExtensionConfigDiscoveryServiceFutureStub>
io.envoyproxy.envoy.service.extension.v3.ExtensionConfigDiscoveryServiceGrpc.ExtensionConfigDiscoveryServiceFutureStub
- Enclosing class:
- ExtensionConfigDiscoveryServiceGrpc
public static final class ExtensionConfigDiscoveryServiceGrpc.ExtensionConfigDiscoveryServiceFutureStub
extends io.grpc.stub.AbstractFutureStub<ExtensionConfigDiscoveryServiceGrpc.ExtensionConfigDiscoveryServiceFutureStub>
A stub to allow clients to do ListenableFuture-style rpc calls to service ExtensionConfigDiscoveryService.
A service that supports dynamic configuration updates for a specific filter.
Currently, ECDS is supported for network filters, HTTP filters, UDP session filters, and listener filters.
Please check :ref:`Extension Config Discovery Service (ECDS) API <config_overview_extension_discovery>`.
The overall extension config discovery service works as follows:
#. A filter (:ref:`Downstream Network <envoy_v3_api_field_config.listener.v3.Filter.config_discovery>`,
:ref:`Upstream Network <envoy_v3_api_field_config.cluster.v3.Filter.config_discovery>`,
:ref:`Listener <envoy_v3_api_field_config.listener.v3.ListenerFilter.config_discovery>`,
:ref:`UDP Session <envoy_v3_api_field_extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.SessionFilter.config_discovery>`,
or :ref:`HTTP <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpFilter.config_discovery>`)
contains a (:ref:`ExtensionConfigSource config discovery <envoy_v3_api_msg_config.core.v3.ExtensionConfigSource>`) configuration. This configuration
includes a :ref:`config_source <envoy_v3_api_field_config.core.v3.ExtensionConfigSource.config_source>`,
from which the filter configuration will be fetched.
#. The client then registers for a resource using the filter name as the ``resource_name``.
#. The xDS server sends back the filter's configuration.
#. The client stores the configuration that will be used in the next instantiation of the filter chain,
i.e., for the next requests. Whenever an updated filter configuration arrives, it will be taken into
account in the following instantiation of the filter chain.
.. note::
Filters that are configured using ECDS are warmed. For more details see
:ref:`ExtensionConfigSource <envoy_v3_api_msg_config.core.v3.ExtensionConfigSource>`.
Return extension configurations.
-
Nested Class Summary
Nested classes/interfaces inherited from class io.grpc.stub.AbstractStub
io.grpc.stub.AbstractStub.StubFactory<T extends io.grpc.stub.AbstractStub<T>> -
Method Summary
Modifier and TypeMethodDescriptionbuild(io.grpc.Channel channel, io.grpc.CallOptions callOptions) com.google.common.util.concurrent.ListenableFuture<DiscoveryResponse>fetchExtensionConfigs(DiscoveryRequest request) Methods inherited from class io.grpc.stub.AbstractFutureStub
newStub, newStubMethods inherited from class io.grpc.stub.AbstractStub
getCallOptions, getChannel, withCallCredentials, withChannel, withCompression, withDeadline, withDeadlineAfter, withExecutor, withInterceptors, withMaxInboundMessageSize, withMaxOutboundMessageSize, withOption, withWaitForReady
-
Method Details
-
build
protected ExtensionConfigDiscoveryServiceGrpc.ExtensionConfigDiscoveryServiceFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions callOptions) - Specified by:
buildin classio.grpc.stub.AbstractStub<ExtensionConfigDiscoveryServiceGrpc.ExtensionConfigDiscoveryServiceFutureStub>
-
fetchExtensionConfigs
public com.google.common.util.concurrent.ListenableFuture<DiscoveryResponse> fetchExtensionConfigs(DiscoveryRequest request)
-