Class WeightedCluster
java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
io.envoyproxy.envoy.config.route.v3.WeightedCluster
- All Implemented Interfaces:
com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, WeightedClusterOrBuilder, Serializable
@Generated
public final class WeightedCluster
extends com.google.protobuf.GeneratedMessage
implements WeightedClusterOrBuilder
Compared to the :ref:`cluster <envoy_v3_api_field_config.route.v3.RouteAction.cluster>` field that specifies a single upstream cluster as the target of a request, the :ref:`weighted_clusters <envoy_v3_api_field_config.route.v3.RouteAction.weighted_clusters>` option allows for specification of multiple upstream clusters along with weights that indicate the percentage of traffic to be forwarded to each cluster. The router selects an upstream cluster based on the weights.Protobuf type
envoy.config.route.v3.WeightedCluster- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classCompared to the :ref:`cluster <envoy_v3_api_field_config.route.v3.RouteAction.cluster>` field that specifies a single upstream cluster as the target of a request, the :ref:`weighted_clusters <envoy_v3_api_field_config.route.v3.RouteAction.weighted_clusters>` option allows for specification of multiple upstream clusters along with weights that indicate the percentage of traffic to be forwarded to each cluster.static final class[#next-free-field: 13]static interfacestatic enumNested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage
com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT,BuilderT>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT, T>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessage
com.google.protobuf.AbstractMessage.BuilderParentNested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate intprivate List<WeightedCluster.ClusterWeight> static final intprivate static final WeightedClusterstatic final intprivate byteprivate static final com.google.protobuf.Parser<WeightedCluster> private Objectprivate intstatic final intprivate Objectprivate static final longstatic final intprivate com.google.protobuf.UInt32ValueFields inherited from class com.google.protobuf.GeneratedMessage
alwaysUseFieldBuilders, loggedPre22TypeNames, unknownFieldsFields inherited from class com.google.protobuf.AbstractMessage
memoizedSizeFields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivateprivateWeightedCluster(com.google.protobuf.GeneratedMessage.Builder<?> builder) -
Method Summary
Modifier and TypeMethodDescriptionbooleangetClusters(int index) Specifies one or more upstream clusters associated with the route.intSpecifies one or more upstream clusters associated with the route.Specifies one or more upstream clusters associated with the route.getClustersOrBuilder(int index) Specifies one or more upstream clusters associated with the route.List<? extends WeightedCluster.ClusterWeightOrBuilder> Specifies one or more upstream clusters associated with the route.static WeightedClusterstatic final com.google.protobuf.Descriptors.Descriptorcom.google.protobuf.Descriptors.DescriptorSpecifies the header name that is used to look up the random value passed in the request header.com.google.protobuf.ByteStringSpecifies the header name that is used to look up the random value passed in the request header.com.google.protobuf.Parser<WeightedCluster> Specifies the runtime key prefix that should be used to construct the runtime keys associated with each cluster.com.google.protobuf.ByteStringSpecifies the runtime key prefix that should be used to construct the runtime keys associated with each cluster.intcom.google.protobuf.UInt32ValueDeprecated.envoy.config.route.v3.WeightedCluster.total_weight is deprecated.com.google.protobuf.UInt32ValueOrBuilderDeprecated.inthashCode()booleanSpecifies the header name that is used to look up the random value passed in the request header.booleanDeprecated.envoy.config.route.v3.WeightedCluster.total_weight is deprecated.protected com.google.protobuf.GeneratedMessage.FieldAccessorTablefinal booleanstatic WeightedCluster.Builderstatic WeightedCluster.BuildernewBuilder(WeightedCluster prototype) protected WeightedCluster.BuildernewBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent) static WeightedClusterparseDelimitedFrom(InputStream input) static WeightedClusterparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static WeightedClusterparseFrom(byte[] data) static WeightedClusterparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static WeightedClusterparseFrom(com.google.protobuf.ByteString data) static WeightedClusterparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static WeightedClusterparseFrom(com.google.protobuf.CodedInputStream input) static WeightedClusterparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static WeightedClusterparseFrom(InputStream input) static WeightedClusterparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static WeightedClusterparseFrom(ByteBuffer data) static WeightedClusterparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser<WeightedCluster> parser()voidwriteTo(com.google.protobuf.CodedOutputStream output) Methods inherited from class com.google.protobuf.GeneratedMessage
computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, makeMutableCopy, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTagMethods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashFields, toStringMethods inherited from class com.google.protobuf.AbstractMessageLite
addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from interface com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
bitField0_
private int bitField0_ -
randomValueSpecifierCase_
private int randomValueSpecifierCase_ -
randomValueSpecifier_
-
CLUSTERS_FIELD_NUMBER
public static final int CLUSTERS_FIELD_NUMBER- See Also:
-
clusters_
-
TOTAL_WEIGHT_FIELD_NUMBER
public static final int TOTAL_WEIGHT_FIELD_NUMBER- See Also:
-
totalWeight_
private com.google.protobuf.UInt32Value totalWeight_ -
RUNTIME_KEY_PREFIX_FIELD_NUMBER
public static final int RUNTIME_KEY_PREFIX_FIELD_NUMBER- See Also:
-
runtimeKeyPrefix_
-
HEADER_NAME_FIELD_NUMBER
public static final int HEADER_NAME_FIELD_NUMBER- See Also:
-
memoizedIsInitialized
private byte memoizedIsInitialized -
DEFAULT_INSTANCE
-
PARSER
-
-
Constructor Details
-
WeightedCluster
private WeightedCluster(com.google.protobuf.GeneratedMessage.Builder<?> builder) -
WeightedCluster
private WeightedCluster()
-
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getDescriptorForTypein classcom.google.protobuf.GeneratedMessage
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessage
-
getRandomValueSpecifierCase
- Specified by:
getRandomValueSpecifierCasein interfaceWeightedClusterOrBuilder
-
getClustersList
Specifies one or more upstream clusters associated with the route.
repeated .envoy.config.route.v3.WeightedCluster.ClusterWeight clusters = 1 [(.validate.rules) = { ... }- Specified by:
getClustersListin interfaceWeightedClusterOrBuilder
-
getClustersOrBuilderList
Specifies one or more upstream clusters associated with the route.
repeated .envoy.config.route.v3.WeightedCluster.ClusterWeight clusters = 1 [(.validate.rules) = { ... }- Specified by:
getClustersOrBuilderListin interfaceWeightedClusterOrBuilder
-
getClustersCount
public int getClustersCount()Specifies one or more upstream clusters associated with the route.
repeated .envoy.config.route.v3.WeightedCluster.ClusterWeight clusters = 1 [(.validate.rules) = { ... }- Specified by:
getClustersCountin interfaceWeightedClusterOrBuilder
-
getClusters
Specifies one or more upstream clusters associated with the route.
repeated .envoy.config.route.v3.WeightedCluster.ClusterWeight clusters = 1 [(.validate.rules) = { ... }- Specified by:
getClustersin interfaceWeightedClusterOrBuilder
-
getClustersOrBuilder
Specifies one or more upstream clusters associated with the route.
repeated .envoy.config.route.v3.WeightedCluster.ClusterWeight clusters = 1 [(.validate.rules) = { ... }- Specified by:
getClustersOrBuilderin interfaceWeightedClusterOrBuilder
-
hasTotalWeight
Deprecated.envoy.config.route.v3.WeightedCluster.total_weight is deprecated. See envoy/config/route/v3/route_components.proto;l=477Specifies the total weight across all clusters. The sum of all cluster weights must equal this value, if this is greater than 0. This field is now deprecated, and the client will use the sum of all cluster weights. It is up to the management server to supply the correct weights.
.google.protobuf.UInt32Value total_weight = 3 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];- Specified by:
hasTotalWeightin interfaceWeightedClusterOrBuilder- Returns:
- Whether the totalWeight field is set.
-
getTotalWeight
Deprecated.envoy.config.route.v3.WeightedCluster.total_weight is deprecated. See envoy/config/route/v3/route_components.proto;l=477Specifies the total weight across all clusters. The sum of all cluster weights must equal this value, if this is greater than 0. This field is now deprecated, and the client will use the sum of all cluster weights. It is up to the management server to supply the correct weights.
.google.protobuf.UInt32Value total_weight = 3 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];- Specified by:
getTotalWeightin interfaceWeightedClusterOrBuilder- Returns:
- The totalWeight.
-
getTotalWeightOrBuilder
Deprecated.Specifies the total weight across all clusters. The sum of all cluster weights must equal this value, if this is greater than 0. This field is now deprecated, and the client will use the sum of all cluster weights. It is up to the management server to supply the correct weights.
.google.protobuf.UInt32Value total_weight = 3 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];- Specified by:
getTotalWeightOrBuilderin interfaceWeightedClusterOrBuilder
-
getRuntimeKeyPrefix
Specifies the runtime key prefix that should be used to construct the runtime keys associated with each cluster. When the ``runtime_key_prefix`` is specified, the router will look for weights associated with each upstream cluster under the key ``runtime_key_prefix`` + ``.`` + ``cluster[i].name`` where ``cluster[i]`` denotes an entry in the clusters array field. If the runtime key for the cluster does not exist, the value specified in the configuration file will be used as the default weight. See the :ref:`runtime documentation <operations_runtime>` for how key names map to the underlying implementation.
string runtime_key_prefix = 2;- Specified by:
getRuntimeKeyPrefixin interfaceWeightedClusterOrBuilder- Returns:
- The runtimeKeyPrefix.
-
getRuntimeKeyPrefixBytes
public com.google.protobuf.ByteString getRuntimeKeyPrefixBytes()Specifies the runtime key prefix that should be used to construct the runtime keys associated with each cluster. When the ``runtime_key_prefix`` is specified, the router will look for weights associated with each upstream cluster under the key ``runtime_key_prefix`` + ``.`` + ``cluster[i].name`` where ``cluster[i]`` denotes an entry in the clusters array field. If the runtime key for the cluster does not exist, the value specified in the configuration file will be used as the default weight. See the :ref:`runtime documentation <operations_runtime>` for how key names map to the underlying implementation.
string runtime_key_prefix = 2;- Specified by:
getRuntimeKeyPrefixBytesin interfaceWeightedClusterOrBuilder- Returns:
- The bytes for runtimeKeyPrefix.
-
hasHeaderName
public boolean hasHeaderName()Specifies the header name that is used to look up the random value passed in the request header. This is used to ensure consistent cluster picking across multiple proxy levels for weighted traffic. If header is not present or invalid, Envoy will fall back to use the internally generated random value. This header is expected to be single-valued header as we only want to have one selected value throughout the process for the consistency. And the value is a unsigned number between 0 and UINT64_MAX.
string header_name = 4 [(.validate.rules) = { ... }- Specified by:
hasHeaderNamein interfaceWeightedClusterOrBuilder- Returns:
- Whether the headerName field is set.
-
getHeaderName
Specifies the header name that is used to look up the random value passed in the request header. This is used to ensure consistent cluster picking across multiple proxy levels for weighted traffic. If header is not present or invalid, Envoy will fall back to use the internally generated random value. This header is expected to be single-valued header as we only want to have one selected value throughout the process for the consistency. And the value is a unsigned number between 0 and UINT64_MAX.
string header_name = 4 [(.validate.rules) = { ... }- Specified by:
getHeaderNamein interfaceWeightedClusterOrBuilder- Returns:
- The headerName.
-
getHeaderNameBytes
public com.google.protobuf.ByteString getHeaderNameBytes()Specifies the header name that is used to look up the random value passed in the request header. This is used to ensure consistent cluster picking across multiple proxy levels for weighted traffic. If header is not present or invalid, Envoy will fall back to use the internally generated random value. This header is expected to be single-valued header as we only want to have one selected value throughout the process for the consistency. And the value is a unsigned number between 0 and UINT64_MAX.
string header_name = 4 [(.validate.rules) = { ... }- Specified by:
getHeaderNameBytesin interfaceWeightedClusterOrBuilder- Returns:
- The bytes for headerName.
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessage
-
writeTo
- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessage- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessage
-
equals
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static WeightedCluster parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static WeightedCluster parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static WeightedCluster parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static WeightedCluster parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static WeightedCluster parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static WeightedCluster parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static WeightedCluster parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
- Throws:
IOException
-
parseDelimitedFrom
public static WeightedCluster parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
public static WeightedCluster parseFrom(com.google.protobuf.CodedInputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static WeightedCluster parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilderForType
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
-
newBuilder
-
toBuilder
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected WeightedCluster.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent) - Overrides:
newBuilderForTypein classcom.google.protobuf.AbstractMessage
-
getDefaultInstance
-
parser
-
getParserForType
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessage
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-