Class HedgePolicy.Builder
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite.Builder
-
- com.google.protobuf.AbstractMessage.Builder<BuilderType>
-
- com.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
- io.envoyproxy.envoy.config.route.v3.HedgePolicy.Builder
-
- All Implemented Interfaces:
com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,HedgePolicyOrBuilder,Cloneable
- Enclosing class:
- HedgePolicy
public static final class HedgePolicy.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder> implements HedgePolicyOrBuilder
HTTP request hedging :ref:`architecture overview <arch_overview_http_routing_hedging>`.
Protobuf typeenvoy.config.route.v3.HedgePolicy
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description HedgePolicy.BuilderaddRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)HedgePolicybuild()HedgePolicybuildPartial()HedgePolicy.Builderclear()HedgePolicy.BuilderclearAdditionalRequestChance()Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests.HedgePolicy.BuilderclearField(com.google.protobuf.Descriptors.FieldDescriptor field)HedgePolicy.BuilderclearHedgeOnPerTryTimeout()Indicates that a hedged request should be sent when the per-try timeout is hit.HedgePolicy.BuilderclearInitialRequests()Specifies the number of initial requests that should be sent upstream.HedgePolicy.BuilderclearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)HedgePolicy.Builderclone()FractionalPercentgetAdditionalRequestChance()Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests.FractionalPercent.BuildergetAdditionalRequestChanceBuilder()Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests.FractionalPercentOrBuildergetAdditionalRequestChanceOrBuilder()Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests.HedgePolicygetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()com.google.protobuf.Descriptors.DescriptorgetDescriptorForType()booleangetHedgeOnPerTryTimeout()Indicates that a hedged request should be sent when the per-try timeout is hit.com.google.protobuf.UInt32ValuegetInitialRequests()Specifies the number of initial requests that should be sent upstream.com.google.protobuf.UInt32Value.BuildergetInitialRequestsBuilder()Specifies the number of initial requests that should be sent upstream.com.google.protobuf.UInt32ValueOrBuildergetInitialRequestsOrBuilder()Specifies the number of initial requests that should be sent upstream.booleanhasAdditionalRequestChance()Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests.booleanhasInitialRequests()Specifies the number of initial requests that should be sent upstream.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()HedgePolicy.BuildermergeAdditionalRequestChance(FractionalPercent value)Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests.HedgePolicy.BuildermergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)HedgePolicy.BuildermergeFrom(com.google.protobuf.Message other)HedgePolicy.BuildermergeFrom(HedgePolicy other)HedgePolicy.BuildermergeInitialRequests(com.google.protobuf.UInt32Value value)Specifies the number of initial requests that should be sent upstream.HedgePolicy.BuildermergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)HedgePolicy.BuildersetAdditionalRequestChance(FractionalPercent value)Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests.HedgePolicy.BuildersetAdditionalRequestChance(FractionalPercent.Builder builderForValue)Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests.HedgePolicy.BuildersetField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)HedgePolicy.BuildersetHedgeOnPerTryTimeout(boolean value)Indicates that a hedged request should be sent when the per-try timeout is hit.HedgePolicy.BuildersetInitialRequests(com.google.protobuf.UInt32Value value)Specifies the number of initial requests that should be sent upstream.HedgePolicy.BuildersetInitialRequests(com.google.protobuf.UInt32Value.Builder builderForValue)Specifies the number of initial requests that should be sent upstream.HedgePolicy.BuildersetRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)HedgePolicy.BuildersetUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)-
Methods inherited from class com.google.protobuf.GeneratedMessageV3.Builder
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, newBuilderForField, onBuilt, onChanged, setUnknownFieldsProto3
-
Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Method Detail
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
clear
public HedgePolicy.Builder clear()
- Specified by:
clearin interfacecom.google.protobuf.Message.Builder- Specified by:
clearin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clearin classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.Message.Builder- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getDescriptorForTypein classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
getDefaultInstanceForType
public HedgePolicy getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
public HedgePolicy build()
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
public HedgePolicy buildPartial()
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
clone
public HedgePolicy.Builder clone()
- Specified by:
clonein interfacecom.google.protobuf.Message.Builder- Specified by:
clonein interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clonein classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
setField
public HedgePolicy.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
- Specified by:
setFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
clearField
public HedgePolicy.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
- Specified by:
clearFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
clearFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
clearOneof
public HedgePolicy.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
- Specified by:
clearOneofin interfacecom.google.protobuf.Message.Builder- Overrides:
clearOneofin classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
setRepeatedField
public HedgePolicy.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
- Specified by:
setRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
addRepeatedField
public HedgePolicy.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
- Specified by:
addRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
addRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
mergeFrom
public HedgePolicy.Builder mergeFrom(com.google.protobuf.Message other)
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<HedgePolicy.Builder>
-
mergeFrom
public HedgePolicy.Builder mergeFrom(HedgePolicy other)
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
mergeFrom
public HedgePolicy.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<HedgePolicy.Builder>- Throws:
IOException
-
hasInitialRequests
public boolean hasInitialRequests()
Specifies the number of initial requests that should be sent upstream. Must be at least 1. Defaults to 1. [#not-implemented-hide:]
.google.protobuf.UInt32Value initial_requests = 1 [(.validate.rules) = { ... }- Specified by:
hasInitialRequestsin interfaceHedgePolicyOrBuilder- Returns:
- Whether the initialRequests field is set.
-
getInitialRequests
public com.google.protobuf.UInt32Value getInitialRequests()
Specifies the number of initial requests that should be sent upstream. Must be at least 1. Defaults to 1. [#not-implemented-hide:]
.google.protobuf.UInt32Value initial_requests = 1 [(.validate.rules) = { ... }- Specified by:
getInitialRequestsin interfaceHedgePolicyOrBuilder- Returns:
- The initialRequests.
-
setInitialRequests
public HedgePolicy.Builder setInitialRequests(com.google.protobuf.UInt32Value value)
Specifies the number of initial requests that should be sent upstream. Must be at least 1. Defaults to 1. [#not-implemented-hide:]
.google.protobuf.UInt32Value initial_requests = 1 [(.validate.rules) = { ... }
-
setInitialRequests
public HedgePolicy.Builder setInitialRequests(com.google.protobuf.UInt32Value.Builder builderForValue)
Specifies the number of initial requests that should be sent upstream. Must be at least 1. Defaults to 1. [#not-implemented-hide:]
.google.protobuf.UInt32Value initial_requests = 1 [(.validate.rules) = { ... }
-
mergeInitialRequests
public HedgePolicy.Builder mergeInitialRequests(com.google.protobuf.UInt32Value value)
Specifies the number of initial requests that should be sent upstream. Must be at least 1. Defaults to 1. [#not-implemented-hide:]
.google.protobuf.UInt32Value initial_requests = 1 [(.validate.rules) = { ... }
-
clearInitialRequests
public HedgePolicy.Builder clearInitialRequests()
Specifies the number of initial requests that should be sent upstream. Must be at least 1. Defaults to 1. [#not-implemented-hide:]
.google.protobuf.UInt32Value initial_requests = 1 [(.validate.rules) = { ... }
-
getInitialRequestsBuilder
public com.google.protobuf.UInt32Value.Builder getInitialRequestsBuilder()
Specifies the number of initial requests that should be sent upstream. Must be at least 1. Defaults to 1. [#not-implemented-hide:]
.google.protobuf.UInt32Value initial_requests = 1 [(.validate.rules) = { ... }
-
getInitialRequestsOrBuilder
public com.google.protobuf.UInt32ValueOrBuilder getInitialRequestsOrBuilder()
Specifies the number of initial requests that should be sent upstream. Must be at least 1. Defaults to 1. [#not-implemented-hide:]
.google.protobuf.UInt32Value initial_requests = 1 [(.validate.rules) = { ... }- Specified by:
getInitialRequestsOrBuilderin interfaceHedgePolicyOrBuilder
-
hasAdditionalRequestChance
public boolean hasAdditionalRequestChance()
Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests. Defaults to 0. [#not-implemented-hide:]
.envoy.type.v3.FractionalPercent additional_request_chance = 2;- Specified by:
hasAdditionalRequestChancein interfaceHedgePolicyOrBuilder- Returns:
- Whether the additionalRequestChance field is set.
-
getAdditionalRequestChance
public FractionalPercent getAdditionalRequestChance()
Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests. Defaults to 0. [#not-implemented-hide:]
.envoy.type.v3.FractionalPercent additional_request_chance = 2;- Specified by:
getAdditionalRequestChancein interfaceHedgePolicyOrBuilder- Returns:
- The additionalRequestChance.
-
setAdditionalRequestChance
public HedgePolicy.Builder setAdditionalRequestChance(FractionalPercent value)
Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests. Defaults to 0. [#not-implemented-hide:]
.envoy.type.v3.FractionalPercent additional_request_chance = 2;
-
setAdditionalRequestChance
public HedgePolicy.Builder setAdditionalRequestChance(FractionalPercent.Builder builderForValue)
Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests. Defaults to 0. [#not-implemented-hide:]
.envoy.type.v3.FractionalPercent additional_request_chance = 2;
-
mergeAdditionalRequestChance
public HedgePolicy.Builder mergeAdditionalRequestChance(FractionalPercent value)
Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests. Defaults to 0. [#not-implemented-hide:]
.envoy.type.v3.FractionalPercent additional_request_chance = 2;
-
clearAdditionalRequestChance
public HedgePolicy.Builder clearAdditionalRequestChance()
Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests. Defaults to 0. [#not-implemented-hide:]
.envoy.type.v3.FractionalPercent additional_request_chance = 2;
-
getAdditionalRequestChanceBuilder
public FractionalPercent.Builder getAdditionalRequestChanceBuilder()
Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests. Defaults to 0. [#not-implemented-hide:]
.envoy.type.v3.FractionalPercent additional_request_chance = 2;
-
getAdditionalRequestChanceOrBuilder
public FractionalPercentOrBuilder getAdditionalRequestChanceOrBuilder()
Specifies a probability that an additional upstream request should be sent on top of what is specified by initial_requests. Defaults to 0. [#not-implemented-hide:]
.envoy.type.v3.FractionalPercent additional_request_chance = 2;- Specified by:
getAdditionalRequestChanceOrBuilderin interfaceHedgePolicyOrBuilder
-
getHedgeOnPerTryTimeout
public boolean getHedgeOnPerTryTimeout()
Indicates that a hedged request should be sent when the per-try timeout is hit. This means that a retry will be issued without resetting the original request, leaving multiple upstream requests in flight. The first request to complete successfully will be the one returned to the caller. * At any time, a successful response (i.e. not triggering any of the retry-on conditions) would be returned to the client. * Before per-try timeout, an error response (per retry-on conditions) would be retried immediately or returned ot the client if there are no more retries left. * After per-try timeout, an error response would be discarded, as a retry in the form of a hedged request is already in progress. Note: For this to have effect, you must have a :ref:`RetryPolicy <envoy_v3_api_msg_config.route.v3.RetryPolicy>` that retries at least one error code and specifies a maximum number of retries. Defaults to false.
bool hedge_on_per_try_timeout = 3;- Specified by:
getHedgeOnPerTryTimeoutin interfaceHedgePolicyOrBuilder- Returns:
- The hedgeOnPerTryTimeout.
-
setHedgeOnPerTryTimeout
public HedgePolicy.Builder setHedgeOnPerTryTimeout(boolean value)
Indicates that a hedged request should be sent when the per-try timeout is hit. This means that a retry will be issued without resetting the original request, leaving multiple upstream requests in flight. The first request to complete successfully will be the one returned to the caller. * At any time, a successful response (i.e. not triggering any of the retry-on conditions) would be returned to the client. * Before per-try timeout, an error response (per retry-on conditions) would be retried immediately or returned ot the client if there are no more retries left. * After per-try timeout, an error response would be discarded, as a retry in the form of a hedged request is already in progress. Note: For this to have effect, you must have a :ref:`RetryPolicy <envoy_v3_api_msg_config.route.v3.RetryPolicy>` that retries at least one error code and specifies a maximum number of retries. Defaults to false.
bool hedge_on_per_try_timeout = 3;- Parameters:
value- The hedgeOnPerTryTimeout to set.- Returns:
- This builder for chaining.
-
clearHedgeOnPerTryTimeout
public HedgePolicy.Builder clearHedgeOnPerTryTimeout()
Indicates that a hedged request should be sent when the per-try timeout is hit. This means that a retry will be issued without resetting the original request, leaving multiple upstream requests in flight. The first request to complete successfully will be the one returned to the caller. * At any time, a successful response (i.e. not triggering any of the retry-on conditions) would be returned to the client. * Before per-try timeout, an error response (per retry-on conditions) would be retried immediately or returned ot the client if there are no more retries left. * After per-try timeout, an error response would be discarded, as a retry in the form of a hedged request is already in progress. Note: For this to have effect, you must have a :ref:`RetryPolicy <envoy_v3_api_msg_config.route.v3.RetryPolicy>` that retries at least one error code and specifies a maximum number of retries. Defaults to false.
bool hedge_on_per_try_timeout = 3;- Returns:
- This builder for chaining.
-
setUnknownFields
public final HedgePolicy.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
setUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
setUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
mergeUnknownFields
public final HedgePolicy.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
mergeUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<HedgePolicy.Builder>
-
-