Class RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder
java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder>
com.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder>
io.envoyproxy.envoy.service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder
- All Implemented Interfaces:
com.google.protobuf.Message.Builder
,com.google.protobuf.MessageLite.Builder
,com.google.protobuf.MessageLiteOrBuilder
,com.google.protobuf.MessageOrBuilder
,RateLimitQuotaResponse.BucketAction.QuotaAssignmentActionOrBuilder
,Cloneable
- Enclosing class:
RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction
public static final class RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder
extends com.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder>
implements RateLimitQuotaResponse.BucketAction.QuotaAssignmentActionOrBuilder
Quota assignment for the bucket. Configures the rate limiting strategy and the duration for the given :ref:`bucket_id <envoy_v3_api_field_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.bucket_id>`. **Applying the first assignment to the bucket** Once the data plane receives the ``QuotaAssignmentAction``, it must send the current usage report for the bucket, and start rate limiting requests matched into the bucket using the strategy configured in the :ref:`rate_limit_strategy <envoy_v3_api_field_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.rate_limit_strategy>` field. The assignment becomes bucket's ``active`` assignment. **Expiring the assignment** The duration of the assignment defined in the :ref:`assignment_time_to_live <envoy_v3_api_field_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.assignment_time_to_live>` field. When the duration runs off, the assignment is ``expired``, and no longer ``active``. The data plane should stop applying the rate limiting strategy to the bucket, and transition the bucket to the "expired assignment" state. This activates the behavior configured in the :ref:`expired_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.expired_assignment_behavior>` field. **Replacing the assignment** * If the rate limiting strategy is different from bucket's ``active`` assignment, or the current bucket assignment is ``expired``, the data plane must immediately end the current assignment, report the bucket usage, and apply the new assignment. The new assignment becomes bucket's ``active`` assignment. * If the rate limiting strategy is the same as the bucket's ``active`` (not ``expired``) assignment, the data plane should extend the duration of the ``active`` assignment for the duration of the new assignment provided in the :ref:`assignment_time_to_live <envoy_v3_api_field_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.assignment_time_to_live>` field. The ``active`` assignment is considered unchanged.Protobuf type
envoy.service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate com.google.protobuf.Duration
private com.google.protobuf.SingleFieldBuilder
<com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> private int
private RateLimitStrategy
private com.google.protobuf.SingleFieldBuilder
<RateLimitStrategy, RateLimitStrategy.Builder, RateLimitStrategyOrBuilder> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()
private void
clear()
A duration after which the assignment is be considered ``expired``.Configures the local rate limiter for the request matched to the bucket.com.google.protobuf.Duration
A duration after which the assignment is be considered ``expired``.com.google.protobuf.Duration.Builder
A duration after which the assignment is be considered ``expired``.com.google.protobuf.DurationOrBuilder
A duration after which the assignment is be considered ``expired``.static final com.google.protobuf.Descriptors.Descriptor
com.google.protobuf.Descriptors.Descriptor
Configures the local rate limiter for the request matched to the bucket.Configures the local rate limiter for the request matched to the bucket.Configures the local rate limiter for the request matched to the bucket.boolean
A duration after which the assignment is be considered ``expired``.boolean
Configures the local rate limiter for the request matched to the bucket.private com.google.protobuf.SingleFieldBuilder
<com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> A duration after which the assignment is be considered ``expired``.protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
private com.google.protobuf.SingleFieldBuilder
<RateLimitStrategy, RateLimitStrategy.Builder, RateLimitStrategyOrBuilder> Configures the local rate limiter for the request matched to the bucket.final boolean
private void
mergeAssignmentTimeToLive
(com.google.protobuf.Duration value) A duration after which the assignment is be considered ``expired``.mergeFrom
(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) mergeFrom
(com.google.protobuf.Message other) Configures the local rate limiter for the request matched to the bucket.setAssignmentTimeToLive
(com.google.protobuf.Duration value) A duration after which the assignment is be considered ``expired``.setAssignmentTimeToLive
(com.google.protobuf.Duration.Builder builderForValue) A duration after which the assignment is be considered ``expired``.Configures the local rate limiter for the request matched to the bucket.setRateLimitStrategy
(RateLimitStrategy.Builder builderForValue) Configures the local rate limiter for the request matched to the bucket.Methods inherited from class com.google.protobuf.GeneratedMessage.Builder
addRepeatedField, clearField, clearOneof, clone, getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownFields, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setField, setRepeatedField, setUnknownFields, setUnknownFieldSetBuilder, 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
Methods inherited from interface com.google.protobuf.Message.Builder
mergeDelimitedFrom, mergeDelimitedFrom
Methods inherited from interface com.google.protobuf.MessageLite.Builder
mergeFrom
Methods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
bitField0_
private int bitField0_ -
assignmentTimeToLive_
private com.google.protobuf.Duration assignmentTimeToLive_ -
assignmentTimeToLiveBuilder_
private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.Duration,com.google.protobuf.Duration.Builder, assignmentTimeToLiveBuilder_com.google.protobuf.DurationOrBuilder> -
rateLimitStrategy_
-
rateLimitStrategyBuilder_
private com.google.protobuf.SingleFieldBuilder<RateLimitStrategy,RateLimitStrategy.Builder, rateLimitStrategyBuilder_RateLimitStrategyOrBuilder>
-
-
Constructor Details
-
Builder
private Builder() -
Builder
private Builder(com.google.protobuf.AbstractMessage.BuilderParent parent)
-
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTable
in classcom.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder>
-
maybeForceBuilderInitialization
private void maybeForceBuilderInitialization() -
clear
- Specified by:
clear
in interfacecom.google.protobuf.Message.Builder
- Specified by:
clear
in interfacecom.google.protobuf.MessageLite.Builder
- Overrides:
clear
in classcom.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()- Specified by:
getDescriptorForType
in interfacecom.google.protobuf.Message.Builder
- Specified by:
getDescriptorForType
in interfacecom.google.protobuf.MessageOrBuilder
- Overrides:
getDescriptorForType
in classcom.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder>
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageOrBuilder
-
build
- Specified by:
build
in interfacecom.google.protobuf.Message.Builder
- Specified by:
build
in interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
- Specified by:
buildPartial
in interfacecom.google.protobuf.Message.Builder
- Specified by:
buildPartial
in interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial0
-
mergeFrom
public RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder mergeFrom(com.google.protobuf.Message other) - Specified by:
mergeFrom
in interfacecom.google.protobuf.Message.Builder
- Overrides:
mergeFrom
in classcom.google.protobuf.AbstractMessage.Builder<RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder>
-
mergeFrom
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitialized
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Overrides:
isInitialized
in classcom.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder>
-
mergeFrom
public RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Specified by:
mergeFrom
in interfacecom.google.protobuf.Message.Builder
- Specified by:
mergeFrom
in interfacecom.google.protobuf.MessageLite.Builder
- Overrides:
mergeFrom
in classcom.google.protobuf.AbstractMessage.Builder<RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder>
- Throws:
IOException
-
hasAssignmentTimeToLive
public boolean hasAssignmentTimeToLive()A duration after which the assignment is be considered ``expired``. The process of the expiration is described :ref:`above <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>`. * If unset, the assignment has no expiration date. * If set to ``0``, the assignment expires immediately, forcing the client into the :ref:`"expired assignment" <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.expired_assignment_behavior_timeout>` state. This may be used by the RLQS server in cases when it needs clients to proactively fall back to the pre-configured :ref:`ExpiredAssignmentBehavior <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior>`, f.e. before the server going into restart. .. attention:: Note that :ref:`expiring <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>` the assignment is not the same as :ref:`abandoning <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` the assignment. While expiring the assignment just transitions the bucket to the "expired assignment" state; abandoning the assignment completely erases the bucket from the data plane memory, and stops the usage reports.
.google.protobuf.Duration assignment_time_to_live = 2 [(.validate.rules) = { ... }
- Specified by:
hasAssignmentTimeToLive
in interfaceRateLimitQuotaResponse.BucketAction.QuotaAssignmentActionOrBuilder
- Returns:
- Whether the assignmentTimeToLive field is set.
-
getAssignmentTimeToLive
public com.google.protobuf.Duration getAssignmentTimeToLive()A duration after which the assignment is be considered ``expired``. The process of the expiration is described :ref:`above <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>`. * If unset, the assignment has no expiration date. * If set to ``0``, the assignment expires immediately, forcing the client into the :ref:`"expired assignment" <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.expired_assignment_behavior_timeout>` state. This may be used by the RLQS server in cases when it needs clients to proactively fall back to the pre-configured :ref:`ExpiredAssignmentBehavior <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior>`, f.e. before the server going into restart. .. attention:: Note that :ref:`expiring <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>` the assignment is not the same as :ref:`abandoning <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` the assignment. While expiring the assignment just transitions the bucket to the "expired assignment" state; abandoning the assignment completely erases the bucket from the data plane memory, and stops the usage reports.
.google.protobuf.Duration assignment_time_to_live = 2 [(.validate.rules) = { ... }
- Specified by:
getAssignmentTimeToLive
in interfaceRateLimitQuotaResponse.BucketAction.QuotaAssignmentActionOrBuilder
- Returns:
- The assignmentTimeToLive.
-
setAssignmentTimeToLive
public RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder setAssignmentTimeToLive(com.google.protobuf.Duration value) A duration after which the assignment is be considered ``expired``. The process of the expiration is described :ref:`above <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>`. * If unset, the assignment has no expiration date. * If set to ``0``, the assignment expires immediately, forcing the client into the :ref:`"expired assignment" <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.expired_assignment_behavior_timeout>` state. This may be used by the RLQS server in cases when it needs clients to proactively fall back to the pre-configured :ref:`ExpiredAssignmentBehavior <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior>`, f.e. before the server going into restart. .. attention:: Note that :ref:`expiring <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>` the assignment is not the same as :ref:`abandoning <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` the assignment. While expiring the assignment just transitions the bucket to the "expired assignment" state; abandoning the assignment completely erases the bucket from the data plane memory, and stops the usage reports.
.google.protobuf.Duration assignment_time_to_live = 2 [(.validate.rules) = { ... }
-
setAssignmentTimeToLive
public RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder setAssignmentTimeToLive(com.google.protobuf.Duration.Builder builderForValue) A duration after which the assignment is be considered ``expired``. The process of the expiration is described :ref:`above <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>`. * If unset, the assignment has no expiration date. * If set to ``0``, the assignment expires immediately, forcing the client into the :ref:`"expired assignment" <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.expired_assignment_behavior_timeout>` state. This may be used by the RLQS server in cases when it needs clients to proactively fall back to the pre-configured :ref:`ExpiredAssignmentBehavior <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior>`, f.e. before the server going into restart. .. attention:: Note that :ref:`expiring <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>` the assignment is not the same as :ref:`abandoning <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` the assignment. While expiring the assignment just transitions the bucket to the "expired assignment" state; abandoning the assignment completely erases the bucket from the data plane memory, and stops the usage reports.
.google.protobuf.Duration assignment_time_to_live = 2 [(.validate.rules) = { ... }
-
mergeAssignmentTimeToLive
public RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder mergeAssignmentTimeToLive(com.google.protobuf.Duration value) A duration after which the assignment is be considered ``expired``. The process of the expiration is described :ref:`above <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>`. * If unset, the assignment has no expiration date. * If set to ``0``, the assignment expires immediately, forcing the client into the :ref:`"expired assignment" <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.expired_assignment_behavior_timeout>` state. This may be used by the RLQS server in cases when it needs clients to proactively fall back to the pre-configured :ref:`ExpiredAssignmentBehavior <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior>`, f.e. before the server going into restart. .. attention:: Note that :ref:`expiring <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>` the assignment is not the same as :ref:`abandoning <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` the assignment. While expiring the assignment just transitions the bucket to the "expired assignment" state; abandoning the assignment completely erases the bucket from the data plane memory, and stops the usage reports.
.google.protobuf.Duration assignment_time_to_live = 2 [(.validate.rules) = { ... }
-
clearAssignmentTimeToLive
public RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder clearAssignmentTimeToLive()A duration after which the assignment is be considered ``expired``. The process of the expiration is described :ref:`above <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>`. * If unset, the assignment has no expiration date. * If set to ``0``, the assignment expires immediately, forcing the client into the :ref:`"expired assignment" <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.expired_assignment_behavior_timeout>` state. This may be used by the RLQS server in cases when it needs clients to proactively fall back to the pre-configured :ref:`ExpiredAssignmentBehavior <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior>`, f.e. before the server going into restart. .. attention:: Note that :ref:`expiring <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>` the assignment is not the same as :ref:`abandoning <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` the assignment. While expiring the assignment just transitions the bucket to the "expired assignment" state; abandoning the assignment completely erases the bucket from the data plane memory, and stops the usage reports.
.google.protobuf.Duration assignment_time_to_live = 2 [(.validate.rules) = { ... }
-
getAssignmentTimeToLiveBuilder
public com.google.protobuf.Duration.Builder getAssignmentTimeToLiveBuilder()A duration after which the assignment is be considered ``expired``. The process of the expiration is described :ref:`above <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>`. * If unset, the assignment has no expiration date. * If set to ``0``, the assignment expires immediately, forcing the client into the :ref:`"expired assignment" <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.expired_assignment_behavior_timeout>` state. This may be used by the RLQS server in cases when it needs clients to proactively fall back to the pre-configured :ref:`ExpiredAssignmentBehavior <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior>`, f.e. before the server going into restart. .. attention:: Note that :ref:`expiring <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>` the assignment is not the same as :ref:`abandoning <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` the assignment. While expiring the assignment just transitions the bucket to the "expired assignment" state; abandoning the assignment completely erases the bucket from the data plane memory, and stops the usage reports.
.google.protobuf.Duration assignment_time_to_live = 2 [(.validate.rules) = { ... }
-
getAssignmentTimeToLiveOrBuilder
public com.google.protobuf.DurationOrBuilder getAssignmentTimeToLiveOrBuilder()A duration after which the assignment is be considered ``expired``. The process of the expiration is described :ref:`above <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>`. * If unset, the assignment has no expiration date. * If set to ``0``, the assignment expires immediately, forcing the client into the :ref:`"expired assignment" <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.expired_assignment_behavior_timeout>` state. This may be used by the RLQS server in cases when it needs clients to proactively fall back to the pre-configured :ref:`ExpiredAssignmentBehavior <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior>`, f.e. before the server going into restart. .. attention:: Note that :ref:`expiring <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>` the assignment is not the same as :ref:`abandoning <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` the assignment. While expiring the assignment just transitions the bucket to the "expired assignment" state; abandoning the assignment completely erases the bucket from the data plane memory, and stops the usage reports.
.google.protobuf.Duration assignment_time_to_live = 2 [(.validate.rules) = { ... }
- Specified by:
getAssignmentTimeToLiveOrBuilder
in interfaceRateLimitQuotaResponse.BucketAction.QuotaAssignmentActionOrBuilder
-
internalGetAssignmentTimeToLiveFieldBuilder
private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.Duration,com.google.protobuf.Duration.Builder, internalGetAssignmentTimeToLiveFieldBuilder()com.google.protobuf.DurationOrBuilder> A duration after which the assignment is be considered ``expired``. The process of the expiration is described :ref:`above <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>`. * If unset, the assignment has no expiration date. * If set to ``0``, the assignment expires immediately, forcing the client into the :ref:`"expired assignment" <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.expired_assignment_behavior_timeout>` state. This may be used by the RLQS server in cases when it needs clients to proactively fall back to the pre-configured :ref:`ExpiredAssignmentBehavior <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior>`, f.e. before the server going into restart. .. attention:: Note that :ref:`expiring <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction>` the assignment is not the same as :ref:`abandoning <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` the assignment. While expiring the assignment just transitions the bucket to the "expired assignment" state; abandoning the assignment completely erases the bucket from the data plane memory, and stops the usage reports.
.google.protobuf.Duration assignment_time_to_live = 2 [(.validate.rules) = { ... }
-
hasRateLimitStrategy
public boolean hasRateLimitStrategy()Configures the local rate limiter for the request matched to the bucket. If not set, allow all requests.
.envoy.type.v3.RateLimitStrategy rate_limit_strategy = 3;
- Specified by:
hasRateLimitStrategy
in interfaceRateLimitQuotaResponse.BucketAction.QuotaAssignmentActionOrBuilder
- Returns:
- Whether the rateLimitStrategy field is set.
-
getRateLimitStrategy
Configures the local rate limiter for the request matched to the bucket. If not set, allow all requests.
.envoy.type.v3.RateLimitStrategy rate_limit_strategy = 3;
- Specified by:
getRateLimitStrategy
in interfaceRateLimitQuotaResponse.BucketAction.QuotaAssignmentActionOrBuilder
- Returns:
- The rateLimitStrategy.
-
setRateLimitStrategy
public RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder setRateLimitStrategy(RateLimitStrategy value) Configures the local rate limiter for the request matched to the bucket. If not set, allow all requests.
.envoy.type.v3.RateLimitStrategy rate_limit_strategy = 3;
-
setRateLimitStrategy
public RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder setRateLimitStrategy(RateLimitStrategy.Builder builderForValue) Configures the local rate limiter for the request matched to the bucket. If not set, allow all requests.
.envoy.type.v3.RateLimitStrategy rate_limit_strategy = 3;
-
mergeRateLimitStrategy
public RateLimitQuotaResponse.BucketAction.QuotaAssignmentAction.Builder mergeRateLimitStrategy(RateLimitStrategy value) Configures the local rate limiter for the request matched to the bucket. If not set, allow all requests.
.envoy.type.v3.RateLimitStrategy rate_limit_strategy = 3;
-
clearRateLimitStrategy
Configures the local rate limiter for the request matched to the bucket. If not set, allow all requests.
.envoy.type.v3.RateLimitStrategy rate_limit_strategy = 3;
-
getRateLimitStrategyBuilder
Configures the local rate limiter for the request matched to the bucket. If not set, allow all requests.
.envoy.type.v3.RateLimitStrategy rate_limit_strategy = 3;
-
getRateLimitStrategyOrBuilder
Configures the local rate limiter for the request matched to the bucket. If not set, allow all requests.
.envoy.type.v3.RateLimitStrategy rate_limit_strategy = 3;
- Specified by:
getRateLimitStrategyOrBuilder
in interfaceRateLimitQuotaResponse.BucketAction.QuotaAssignmentActionOrBuilder
-
internalGetRateLimitStrategyFieldBuilder
private com.google.protobuf.SingleFieldBuilder<RateLimitStrategy,RateLimitStrategy.Builder, internalGetRateLimitStrategyFieldBuilder()RateLimitStrategyOrBuilder> Configures the local rate limiter for the request matched to the bucket. If not set, allow all requests.
.envoy.type.v3.RateLimitStrategy rate_limit_strategy = 3;
-