Package io.grpc.xds
Class XdsRouteConfigureResource
- java.lang.Object
-
- io.grpc.xds.client.XdsResourceType<XdsRouteConfigureResource.RdsUpdate>
-
- io.grpc.xds.XdsRouteConfigureResource
-
class XdsRouteConfigureResource extends XdsResourceType<XdsRouteConfigureResource.RdsUpdate>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classXdsRouteConfigureResource.RdsUpdate-
Nested classes/interfaces inherited from class io.grpc.xds.client.XdsResourceType
XdsResourceType.Args, XdsResourceType.ResourceInvalidException, XdsResourceType.StructOrError<T>
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static java.lang.StringADS_TYPE_URL_RDS(package private) static booleanenableRouteLookupprivate static XdsRouteConfigureResourceinstanceprivate static java.util.Set<io.grpc.Status.Code>SUPPORTED_RETRYABLE_CODESprivate static java.lang.StringTYPE_URL_FILTER_CONFIG-
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 Constructor Description XdsRouteConfigureResource()
-
Method Summary
-
Methods inherited from class io.grpc.xds.client.XdsResourceType
unpackCompatibleType
-
-
-
-
Field Detail
-
enableRouteLookup
static boolean enableRouteLookup
-
ADS_TYPE_URL_RDS
static final java.lang.String ADS_TYPE_URL_RDS
- See Also:
- Constant Field Values
-
TYPE_URL_FILTER_CONFIG
private static final java.lang.String TYPE_URL_FILTER_CONFIG
- See Also:
- Constant Field Values
-
SUPPORTED_RETRYABLE_CODES
private static final java.util.Set<io.grpc.Status.Code> SUPPORTED_RETRYABLE_CODES
-
instance
private static final XdsRouteConfigureResource instance
-
-
Method Detail
-
getInstance
static XdsRouteConfigureResource getInstance()
-
extractResourceName
@Nullable protected java.lang.String extractResourceName(com.google.protobuf.Message unpackedResource)
Description copied from class:XdsResourceTypeExtract 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.Resourcewhich then provides the name. This method is only called for the old approach.- Overrides:
extractResourceNamein classXdsResourceType<XdsRouteConfigureResource.RdsUpdate>- Returns:
- the resource's name, or
nullif name is not stored within the resource contents
-
typeName
public java.lang.String typeName()
- Specified by:
typeNamein classXdsResourceType<XdsRouteConfigureResource.RdsUpdate>
-
typeUrl
public java.lang.String typeUrl()
- Specified by:
typeUrlin classXdsResourceType<XdsRouteConfigureResource.RdsUpdate>
-
shouldRetrieveResourceKeysForArgs
public boolean shouldRetrieveResourceKeysForArgs()
- Specified by:
shouldRetrieveResourceKeysForArgsin classXdsResourceType<XdsRouteConfigureResource.RdsUpdate>
-
isFullStateOfTheWorld
protected boolean isFullStateOfTheWorld()
- Specified by:
isFullStateOfTheWorldin classXdsResourceType<XdsRouteConfigureResource.RdsUpdate>
-
unpackedClassName
protected java.lang.Class<RouteConfiguration> unpackedClassName()
- Specified by:
unpackedClassNamein classXdsResourceType<XdsRouteConfigureResource.RdsUpdate>
-
doParse
protected XdsRouteConfigureResource.RdsUpdate doParse(XdsResourceType.Args args, com.google.protobuf.Message unpackedMessage) throws XdsResourceType.ResourceInvalidException
- Specified by:
doParsein classXdsResourceType<XdsRouteConfigureResource.RdsUpdate>- Throws:
XdsResourceType.ResourceInvalidException
-
processRouteConfiguration
private static XdsRouteConfigureResource.RdsUpdate processRouteConfiguration(RouteConfiguration routeConfig, FilterRegistry filterRegistry) throws XdsResourceType.ResourceInvalidException
-
extractVirtualHosts
static java.util.List<VirtualHost> extractVirtualHosts(RouteConfiguration routeConfig, FilterRegistry filterRegistry) throws XdsResourceType.ResourceInvalidException
-
parseVirtualHost
private static XdsResourceType.StructOrError<VirtualHost> parseVirtualHost(VirtualHost proto, FilterRegistry filterRegistry, java.util.Map<java.lang.String,ClusterSpecifierPlugin.PluginConfig> pluginConfigMap, java.util.Set<java.lang.String> optionalPlugins)
-
parseOverrideFilterConfigs
static XdsResourceType.StructOrError<java.util.Map<java.lang.String,Filter.FilterConfig>> parseOverrideFilterConfigs(java.util.Map<java.lang.String,com.google.protobuf.Any> rawFilterConfigMap, FilterRegistry filterRegistry)
-
parseRoute
@Nullable static XdsResourceType.StructOrError<VirtualHost.Route> parseRoute(Route proto, FilterRegistry filterRegistry, java.util.Map<java.lang.String,ClusterSpecifierPlugin.PluginConfig> pluginConfigMap, java.util.Set<java.lang.String> optionalPlugins)
-
parseRouteMatch
@Nullable static XdsResourceType.StructOrError<VirtualHost.Route.RouteMatch> parseRouteMatch(RouteMatch proto)
-
parsePathMatcher
static XdsResourceType.StructOrError<VirtualHost.Route.RouteMatch.PathMatcher> parsePathMatcher(RouteMatch proto)
-
parseFractionMatcher
private static XdsResourceType.StructOrError<Matchers.FractionMatcher> parseFractionMatcher(FractionalPercent proto)
-
parseHeaderMatcher
static XdsResourceType.StructOrError<Matchers.HeaderMatcher> parseHeaderMatcher(HeaderMatcher proto)
-
parseRouteAction
@Nullable static XdsResourceType.StructOrError<VirtualHost.Route.RouteAction> parseRouteAction(RouteAction proto, FilterRegistry filterRegistry, java.util.Map<java.lang.String,ClusterSpecifierPlugin.PluginConfig> pluginConfigMap, java.util.Set<java.lang.String> optionalPlugins)
Parses the RouteAction config. The returned result may contain a (parsed form)VirtualHost.Route.RouteActionor an error message. Returnsnullif the RouteAction should be ignored.
-
parseRetryPolicy
@Nullable private static XdsResourceType.StructOrError<VirtualHost.Route.RouteAction.RetryPolicy> parseRetryPolicy(RetryPolicy retryPolicyProto)
-
parseClusterWeight
static XdsResourceType.StructOrError<VirtualHost.Route.RouteAction.ClusterWeight> parseClusterWeight(WeightedCluster.ClusterWeight proto, FilterRegistry filterRegistry)
-
parseClusterSpecifierPlugin
@Nullable private static ClusterSpecifierPlugin.PluginConfig parseClusterSpecifierPlugin(ClusterSpecifierPlugin pluginProto) throws XdsResourceType.ResourceInvalidException
-
parseClusterSpecifierPlugin
@Nullable static ClusterSpecifierPlugin.PluginConfig parseClusterSpecifierPlugin(ClusterSpecifierPlugin pluginProto, ClusterSpecifierPluginRegistry registry) throws XdsResourceType.ResourceInvalidException
-
-