Package io.grpc.xds
Class XdsClusterResource
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static class
xDS resource update for cluster-level configuration.Nested classes/interfaces inherited from class io.grpc.xds.client.XdsResourceType
XdsResourceType.Args, XdsResourceType.ResourceInvalidException, XdsResourceType.StructOrError<T>
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final String
(package private) static final String
(package private) static boolean
private static final XdsClusterResource
private final io.grpc.LoadBalancerRegistry
private static final String
private static final String
Fields inherited from class io.grpc.xds.client.XdsResourceType
HASH_POLICY_FILTER_STATE_KEY, TRANSPORT_SOCKET_NAME_TLS, TYPE_URL_CLUSTER_CONFIG, TYPE_URL_TYPED_STRUCT, TYPE_URL_TYPED_STRUCT_UDPA
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected XdsClusterResource.CdsUpdate
doParse
(XdsResourceType.Args args, com.google.protobuf.Message unpackedMessage) protected String
extractResourceName
(com.google.protobuf.Message unpackedResource) Extract the resource name from an older resource type that included the name within the resource contents itself.private static String
getIdentityCertInstanceName
(CommonTlsContext commonTlsContext) static XdsClusterResource
private static String
getRootCertInstanceName
(CommonTlsContext commonTlsContext) (package private) static boolean
hasNegativeValues
(com.google.protobuf.Duration duration) protected boolean
private static XdsResourceType.StructOrError
<XdsClusterResource.CdsUpdate.Builder> parseAggregateCluster
(Cluster cluster) private static XdsResourceType.StructOrError
<XdsClusterResource.CdsUpdate.Builder> parseNonAggregateCluster
(Cluster cluster, Set<String> certProviderInstances, Bootstrapper.ServerInfo serverInfo) (package private) static XdsClusterResource.CdsUpdate
processCluster
(Cluster cluster, Set<String> certProviderInstances, Bootstrapper.ServerInfo serverInfo, io.grpc.LoadBalancerRegistry loadBalancerRegistry) boolean
typeName()
typeUrl()
(package private) static void
validateCommonTlsContext
(CommonTlsContext commonTlsContext, Set<String> certProviderInstances, boolean server) (package private) static OutlierDetection
validateOutlierDetection
(OutlierDetection outlierDetection) (package private) static UpstreamTlsContext
validateUpstreamTlsContext
(UpstreamTlsContext upstreamTlsContext, Set<String> certProviderInstances) Methods inherited from class io.grpc.xds.client.XdsResourceType
unpackCompatibleType
-
Field Details
-
enableLeastRequest
static boolean enableLeastRequest -
AGGREGATE_CLUSTER_TYPE_NAME
- See Also:
-
ADS_TYPE_URL_CDS
- See Also:
-
TYPE_URL_UPSTREAM_TLS_CONTEXT
- See Also:
-
TYPE_URL_UPSTREAM_TLS_CONTEXT_V2
- See Also:
-
loadBalancerRegistry
private final io.grpc.LoadBalancerRegistry loadBalancerRegistry -
instance
-
-
Constructor Details
-
XdsClusterResource
XdsClusterResource()
-
-
Method Details
-
getInstance
-
extractResourceName
Description copied from class:XdsResourceType
Extract the resource name from an older resource type that included the name within the resource contents itself. The newer approach has resources wrapped withenvoy.service.discovery.v3.Resource
which then provides the name. This method is only called for the old approach.- Overrides:
extractResourceName
in classXdsResourceType<XdsClusterResource.CdsUpdate>
- Returns:
- the resource's name, or
null
if name is not stored within the resource contents
-
typeName
- Specified by:
typeName
in classXdsResourceType<XdsClusterResource.CdsUpdate>
-
typeUrl
- Specified by:
typeUrl
in classXdsResourceType<XdsClusterResource.CdsUpdate>
-
shouldRetrieveResourceKeysForArgs
public boolean shouldRetrieveResourceKeysForArgs()- Specified by:
shouldRetrieveResourceKeysForArgs
in classXdsResourceType<XdsClusterResource.CdsUpdate>
-
isFullStateOfTheWorld
protected boolean isFullStateOfTheWorld()- Specified by:
isFullStateOfTheWorld
in classXdsResourceType<XdsClusterResource.CdsUpdate>
-
unpackedClassName
- Specified by:
unpackedClassName
in classXdsResourceType<XdsClusterResource.CdsUpdate>
-
doParse
protected XdsClusterResource.CdsUpdate doParse(XdsResourceType.Args args, com.google.protobuf.Message unpackedMessage) throws XdsResourceType.ResourceInvalidException - Specified by:
doParse
in classXdsResourceType<XdsClusterResource.CdsUpdate>
- Throws:
XdsResourceType.ResourceInvalidException
-
processCluster
static XdsClusterResource.CdsUpdate processCluster(Cluster cluster, Set<String> certProviderInstances, Bootstrapper.ServerInfo serverInfo, io.grpc.LoadBalancerRegistry loadBalancerRegistry) throws XdsResourceType.ResourceInvalidException -
parseAggregateCluster
private static XdsResourceType.StructOrError<XdsClusterResource.CdsUpdate.Builder> parseAggregateCluster(Cluster cluster) -
parseNonAggregateCluster
private static XdsResourceType.StructOrError<XdsClusterResource.CdsUpdate.Builder> parseNonAggregateCluster(Cluster cluster, Set<String> certProviderInstances, Bootstrapper.ServerInfo serverInfo) -
validateOutlierDetection
static OutlierDetection validateOutlierDetection(OutlierDetection outlierDetection) throws XdsResourceType.ResourceInvalidException -
hasNegativeValues
static boolean hasNegativeValues(com.google.protobuf.Duration duration) -
validateUpstreamTlsContext
static UpstreamTlsContext validateUpstreamTlsContext(UpstreamTlsContext upstreamTlsContext, Set<String> certProviderInstances) throws XdsResourceType.ResourceInvalidException -
validateCommonTlsContext
static void validateCommonTlsContext(CommonTlsContext commonTlsContext, Set<String> certProviderInstances, boolean server) throws XdsResourceType.ResourceInvalidException -
getIdentityCertInstanceName
-
getRootCertInstanceName
-