Class RateLimitQuotaBucketSettings.Builder
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite.Builder
-
- com.google.protobuf.AbstractMessage.Builder<BuilderT>
-
- com.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder>
-
- io.envoyproxy.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.Builder
-
- All Implemented Interfaces:
com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,RateLimitQuotaBucketSettingsOrBuilder,java.lang.Cloneable
- Enclosing class:
- RateLimitQuotaBucketSettings
public static final class RateLimitQuotaBucketSettings.Builder extends com.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder> implements RateLimitQuotaBucketSettingsOrBuilder
Rate Limit Quota Bucket Settings to apply on the successful ``bucket_matchers`` match. Specify this message in the :ref:`Matcher.OnMatch.action <envoy_v3_api_field_.xds.type.matcher.v3.Matcher.OnMatch.action>` field of the ``bucket_matchers`` matcher tree to assign the matched requests to the Quota Bucket. Usage example: :ref:`RateLimitQuotaFilterConfig.bucket_matchers <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaFilterConfig.bucket_matchers>`. [#next-free-field: 6]
Protobuf typeenvoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings
-
-
Field Summary
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description RateLimitQuotaBucketSettingsbuild()RateLimitQuotaBucketSettingsbuildPartial()private voidbuildPartial0(RateLimitQuotaBucketSettings result)RateLimitQuotaBucketSettings.Builderclear()RateLimitQuotaBucketSettings.BuilderclearBucketIdBuilder()``BucketId`` builder.RateLimitQuotaBucketSettings.BuilderclearDenyResponseSettings()Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.BuilderclearExpiredAssignmentBehavior()Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.RateLimitQuotaBucketSettings.BuilderclearNoAssignmentBehavior()Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment.RateLimitQuotaBucketSettings.BuilderclearReportingInterval()The interval at which the data plane (RLQS client) is to report quota usage for this bucket.RateLimitQuotaBucketSettings.BucketIdBuildergetBucketIdBuilder()``BucketId`` builder.RateLimitQuotaBucketSettings.BucketIdBuilder.BuildergetBucketIdBuilderBuilder()``BucketId`` builder.private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.BucketIdBuilder,RateLimitQuotaBucketSettings.BucketIdBuilder.Builder,RateLimitQuotaBucketSettings.BucketIdBuilderOrBuilder>getBucketIdBuilderFieldBuilder()``BucketId`` builder.RateLimitQuotaBucketSettings.BucketIdBuilderOrBuildergetBucketIdBuilderOrBuilder()``BucketId`` builder.RateLimitQuotaBucketSettingsgetDefaultInstanceForType()RateLimitQuotaBucketSettings.DenyResponseSettingsgetDenyResponseSettings()Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.DenyResponseSettings.BuildergetDenyResponseSettingsBuilder()Customize the deny response to the requests over the rate limit.private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.DenyResponseSettings,RateLimitQuotaBucketSettings.DenyResponseSettings.Builder,RateLimitQuotaBucketSettings.DenyResponseSettingsOrBuilder>getDenyResponseSettingsFieldBuilder()Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.DenyResponseSettingsOrBuildergetDenyResponseSettingsOrBuilder()Customize the deny response to the requests over the rate limit.static com.google.protobuf.Descriptors.DescriptorgetDescriptor()com.google.protobuf.Descriptors.DescriptorgetDescriptorForType()RateLimitQuotaBucketSettings.ExpiredAssignmentBehaviorgetExpiredAssignmentBehavior()Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.BuildergetExpiredAssignmentBehaviorBuilder()Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior,RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.Builder,RateLimitQuotaBucketSettings.ExpiredAssignmentBehaviorOrBuilder>getExpiredAssignmentBehaviorFieldBuilder()Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.RateLimitQuotaBucketSettings.ExpiredAssignmentBehaviorOrBuildergetExpiredAssignmentBehaviorOrBuilder()Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.RateLimitQuotaBucketSettings.NoAssignmentBehaviorgetNoAssignmentBehavior()Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment.RateLimitQuotaBucketSettings.NoAssignmentBehavior.BuildergetNoAssignmentBehaviorBuilder()Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment.private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.NoAssignmentBehavior,RateLimitQuotaBucketSettings.NoAssignmentBehavior.Builder,RateLimitQuotaBucketSettings.NoAssignmentBehaviorOrBuilder>getNoAssignmentBehaviorFieldBuilder()Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment.RateLimitQuotaBucketSettings.NoAssignmentBehaviorOrBuildergetNoAssignmentBehaviorOrBuilder()Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment.com.google.protobuf.DurationgetReportingInterval()The interval at which the data plane (RLQS client) is to report quota usage for this bucket.com.google.protobuf.Duration.BuildergetReportingIntervalBuilder()The interval at which the data plane (RLQS client) is to report quota usage for this bucket.private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.Duration,com.google.protobuf.Duration.Builder,com.google.protobuf.DurationOrBuilder>getReportingIntervalFieldBuilder()The interval at which the data plane (RLQS client) is to report quota usage for this bucket.com.google.protobuf.DurationOrBuildergetReportingIntervalOrBuilder()The interval at which the data plane (RLQS client) is to report quota usage for this bucket.booleanhasBucketIdBuilder()``BucketId`` builder.booleanhasDenyResponseSettings()Customize the deny response to the requests over the rate limit.booleanhasExpiredAssignmentBehavior()Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.booleanhasNoAssignmentBehavior()Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment.booleanhasReportingInterval()The interval at which the data plane (RLQS client) is to report quota usage for this bucket.protected com.google.protobuf.GeneratedMessage.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()private voidmaybeForceBuilderInitialization()RateLimitQuotaBucketSettings.BuildermergeBucketIdBuilder(RateLimitQuotaBucketSettings.BucketIdBuilder value)``BucketId`` builder.RateLimitQuotaBucketSettings.BuildermergeDenyResponseSettings(RateLimitQuotaBucketSettings.DenyResponseSettings value)Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.BuildermergeExpiredAssignmentBehavior(RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior value)Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.RateLimitQuotaBucketSettings.BuildermergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)RateLimitQuotaBucketSettings.BuildermergeFrom(com.google.protobuf.Message other)RateLimitQuotaBucketSettings.BuildermergeFrom(RateLimitQuotaBucketSettings other)RateLimitQuotaBucketSettings.BuildermergeNoAssignmentBehavior(RateLimitQuotaBucketSettings.NoAssignmentBehavior value)Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment.RateLimitQuotaBucketSettings.BuildermergeReportingInterval(com.google.protobuf.Duration value)The interval at which the data plane (RLQS client) is to report quota usage for this bucket.RateLimitQuotaBucketSettings.BuildersetBucketIdBuilder(RateLimitQuotaBucketSettings.BucketIdBuilder value)``BucketId`` builder.RateLimitQuotaBucketSettings.BuildersetBucketIdBuilder(RateLimitQuotaBucketSettings.BucketIdBuilder.Builder builderForValue)``BucketId`` builder.RateLimitQuotaBucketSettings.BuildersetDenyResponseSettings(RateLimitQuotaBucketSettings.DenyResponseSettings value)Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.BuildersetDenyResponseSettings(RateLimitQuotaBucketSettings.DenyResponseSettings.Builder builderForValue)Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.BuildersetExpiredAssignmentBehavior(RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior value)Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.RateLimitQuotaBucketSettings.BuildersetExpiredAssignmentBehavior(RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.Builder builderForValue)Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.RateLimitQuotaBucketSettings.BuildersetNoAssignmentBehavior(RateLimitQuotaBucketSettings.NoAssignmentBehavior value)Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment.RateLimitQuotaBucketSettings.BuildersetNoAssignmentBehavior(RateLimitQuotaBucketSettings.NoAssignmentBehavior.Builder builderForValue)Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment.RateLimitQuotaBucketSettings.BuildersetReportingInterval(com.google.protobuf.Duration value)The interval at which the data plane (RLQS client) is to report quota usage for this bucket.RateLimitQuotaBucketSettings.BuildersetReportingInterval(com.google.protobuf.Duration.Builder builderForValue)The interval at which the data plane (RLQS client) is to report quota usage for this 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
-
-
-
-
Field Detail
-
bitField0_
private int bitField0_
-
bucketIdBuilder_
private RateLimitQuotaBucketSettings.BucketIdBuilder bucketIdBuilder_
-
bucketIdBuilderBuilder_
private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.BucketIdBuilder,RateLimitQuotaBucketSettings.BucketIdBuilder.Builder,RateLimitQuotaBucketSettings.BucketIdBuilderOrBuilder> bucketIdBuilderBuilder_
-
reportingInterval_
private com.google.protobuf.Duration reportingInterval_
-
reportingIntervalBuilder_
private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.Duration,com.google.protobuf.Duration.Builder,com.google.protobuf.DurationOrBuilder> reportingIntervalBuilder_
-
denyResponseSettings_
private RateLimitQuotaBucketSettings.DenyResponseSettings denyResponseSettings_
-
denyResponseSettingsBuilder_
private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.DenyResponseSettings,RateLimitQuotaBucketSettings.DenyResponseSettings.Builder,RateLimitQuotaBucketSettings.DenyResponseSettingsOrBuilder> denyResponseSettingsBuilder_
-
noAssignmentBehavior_
private RateLimitQuotaBucketSettings.NoAssignmentBehavior noAssignmentBehavior_
-
noAssignmentBehaviorBuilder_
private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.NoAssignmentBehavior,RateLimitQuotaBucketSettings.NoAssignmentBehavior.Builder,RateLimitQuotaBucketSettings.NoAssignmentBehaviorOrBuilder> noAssignmentBehaviorBuilder_
-
expiredAssignmentBehavior_
private RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expiredAssignmentBehavior_
-
expiredAssignmentBehaviorBuilder_
private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior,RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.Builder,RateLimitQuotaBucketSettings.ExpiredAssignmentBehaviorOrBuilder> expiredAssignmentBehaviorBuilder_
-
-
Method Detail
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder>
-
maybeForceBuilderInitialization
private void maybeForceBuilderInitialization()
-
clear
public RateLimitQuotaBucketSettings.Builder clear()
- Specified by:
clearin interfacecom.google.protobuf.Message.Builder- Specified by:
clearin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clearin classcom.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.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.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder>
-
getDefaultInstanceForType
public RateLimitQuotaBucketSettings getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
public RateLimitQuotaBucketSettings build()
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
public RateLimitQuotaBucketSettings buildPartial()
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial0
private void buildPartial0(RateLimitQuotaBucketSettings result)
-
mergeFrom
public RateLimitQuotaBucketSettings.Builder mergeFrom(com.google.protobuf.Message other)
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<RateLimitQuotaBucketSettings.Builder>
-
mergeFrom
public RateLimitQuotaBucketSettings.Builder mergeFrom(RateLimitQuotaBucketSettings other)
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder>
-
mergeFrom
public RateLimitQuotaBucketSettings.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<RateLimitQuotaBucketSettings.Builder>- Throws:
java.io.IOException
-
hasBucketIdBuilder
public boolean hasBucketIdBuilder()
``BucketId`` builder. :ref:`BucketId <envoy_v3_api_msg_service.rate_limit_quota.v3.BucketId>` is a map from the string key to the string value which serves as bucket identifier common for on the control plane and the data plane. While ``BucketId`` is always static, ``BucketIdBuilder`` allows to populate map values with the dynamic properties associated with the each individual request. Example 1: static fields only ``BucketIdBuilder``: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket hello: string_value: world Produces the following ``BucketId`` for all requests: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket hello: world Example 2: static and dynamic fields .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket env: custom_value: typed_config: '@type': type.googleapis.com/envoy.type.matcher.v3.HttpRequestHeaderMatchInput header_name: environment In this example, the value of ``BucketId`` key ``env`` is substituted from the ``environment`` request header. This is equivalent to the following ``pseudo-code``: .. code-block:: yaml name: 'my_bucket' env: $header['environment'] For example, the request with the HTTP header ``env`` set to ``staging`` will produce the following ``BucketId``: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: staging For the request with the HTTP header ``environment`` set to ``prod``, will produce: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: prod .. note:: The order of ``BucketId`` keys do not matter. Buckets ``{ a: 'A', b: 'B' }`` and ``{ b: 'B', a: 'A' }`` are identical. If not set, requests will NOT be reported to the server, and will always limited according to :ref:`no_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.no_assignment_behavior>` configuration..envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder = 1;- Specified by:
hasBucketIdBuilderin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- Whether the bucketIdBuilder field is set.
-
getBucketIdBuilder
public RateLimitQuotaBucketSettings.BucketIdBuilder getBucketIdBuilder()
``BucketId`` builder. :ref:`BucketId <envoy_v3_api_msg_service.rate_limit_quota.v3.BucketId>` is a map from the string key to the string value which serves as bucket identifier common for on the control plane and the data plane. While ``BucketId`` is always static, ``BucketIdBuilder`` allows to populate map values with the dynamic properties associated with the each individual request. Example 1: static fields only ``BucketIdBuilder``: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket hello: string_value: world Produces the following ``BucketId`` for all requests: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket hello: world Example 2: static and dynamic fields .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket env: custom_value: typed_config: '@type': type.googleapis.com/envoy.type.matcher.v3.HttpRequestHeaderMatchInput header_name: environment In this example, the value of ``BucketId`` key ``env`` is substituted from the ``environment`` request header. This is equivalent to the following ``pseudo-code``: .. code-block:: yaml name: 'my_bucket' env: $header['environment'] For example, the request with the HTTP header ``env`` set to ``staging`` will produce the following ``BucketId``: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: staging For the request with the HTTP header ``environment`` set to ``prod``, will produce: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: prod .. note:: The order of ``BucketId`` keys do not matter. Buckets ``{ a: 'A', b: 'B' }`` and ``{ b: 'B', a: 'A' }`` are identical. If not set, requests will NOT be reported to the server, and will always limited according to :ref:`no_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.no_assignment_behavior>` configuration..envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder = 1;- Specified by:
getBucketIdBuilderin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- The bucketIdBuilder.
-
setBucketIdBuilder
public RateLimitQuotaBucketSettings.Builder setBucketIdBuilder(RateLimitQuotaBucketSettings.BucketIdBuilder value)
``BucketId`` builder. :ref:`BucketId <envoy_v3_api_msg_service.rate_limit_quota.v3.BucketId>` is a map from the string key to the string value which serves as bucket identifier common for on the control plane and the data plane. While ``BucketId`` is always static, ``BucketIdBuilder`` allows to populate map values with the dynamic properties associated with the each individual request. Example 1: static fields only ``BucketIdBuilder``: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket hello: string_value: world Produces the following ``BucketId`` for all requests: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket hello: world Example 2: static and dynamic fields .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket env: custom_value: typed_config: '@type': type.googleapis.com/envoy.type.matcher.v3.HttpRequestHeaderMatchInput header_name: environment In this example, the value of ``BucketId`` key ``env`` is substituted from the ``environment`` request header. This is equivalent to the following ``pseudo-code``: .. code-block:: yaml name: 'my_bucket' env: $header['environment'] For example, the request with the HTTP header ``env`` set to ``staging`` will produce the following ``BucketId``: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: staging For the request with the HTTP header ``environment`` set to ``prod``, will produce: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: prod .. note:: The order of ``BucketId`` keys do not matter. Buckets ``{ a: 'A', b: 'B' }`` and ``{ b: 'B', a: 'A' }`` are identical. If not set, requests will NOT be reported to the server, and will always limited according to :ref:`no_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.no_assignment_behavior>` configuration..envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder = 1;
-
setBucketIdBuilder
public RateLimitQuotaBucketSettings.Builder setBucketIdBuilder(RateLimitQuotaBucketSettings.BucketIdBuilder.Builder builderForValue)
``BucketId`` builder. :ref:`BucketId <envoy_v3_api_msg_service.rate_limit_quota.v3.BucketId>` is a map from the string key to the string value which serves as bucket identifier common for on the control plane and the data plane. While ``BucketId`` is always static, ``BucketIdBuilder`` allows to populate map values with the dynamic properties associated with the each individual request. Example 1: static fields only ``BucketIdBuilder``: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket hello: string_value: world Produces the following ``BucketId`` for all requests: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket hello: world Example 2: static and dynamic fields .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket env: custom_value: typed_config: '@type': type.googleapis.com/envoy.type.matcher.v3.HttpRequestHeaderMatchInput header_name: environment In this example, the value of ``BucketId`` key ``env`` is substituted from the ``environment`` request header. This is equivalent to the following ``pseudo-code``: .. code-block:: yaml name: 'my_bucket' env: $header['environment'] For example, the request with the HTTP header ``env`` set to ``staging`` will produce the following ``BucketId``: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: staging For the request with the HTTP header ``environment`` set to ``prod``, will produce: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: prod .. note:: The order of ``BucketId`` keys do not matter. Buckets ``{ a: 'A', b: 'B' }`` and ``{ b: 'B', a: 'A' }`` are identical. If not set, requests will NOT be reported to the server, and will always limited according to :ref:`no_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.no_assignment_behavior>` configuration..envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder = 1;
-
mergeBucketIdBuilder
public RateLimitQuotaBucketSettings.Builder mergeBucketIdBuilder(RateLimitQuotaBucketSettings.BucketIdBuilder value)
``BucketId`` builder. :ref:`BucketId <envoy_v3_api_msg_service.rate_limit_quota.v3.BucketId>` is a map from the string key to the string value which serves as bucket identifier common for on the control plane and the data plane. While ``BucketId`` is always static, ``BucketIdBuilder`` allows to populate map values with the dynamic properties associated with the each individual request. Example 1: static fields only ``BucketIdBuilder``: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket hello: string_value: world Produces the following ``BucketId`` for all requests: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket hello: world Example 2: static and dynamic fields .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket env: custom_value: typed_config: '@type': type.googleapis.com/envoy.type.matcher.v3.HttpRequestHeaderMatchInput header_name: environment In this example, the value of ``BucketId`` key ``env`` is substituted from the ``environment`` request header. This is equivalent to the following ``pseudo-code``: .. code-block:: yaml name: 'my_bucket' env: $header['environment'] For example, the request with the HTTP header ``env`` set to ``staging`` will produce the following ``BucketId``: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: staging For the request with the HTTP header ``environment`` set to ``prod``, will produce: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: prod .. note:: The order of ``BucketId`` keys do not matter. Buckets ``{ a: 'A', b: 'B' }`` and ``{ b: 'B', a: 'A' }`` are identical. If not set, requests will NOT be reported to the server, and will always limited according to :ref:`no_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.no_assignment_behavior>` configuration..envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder = 1;
-
clearBucketIdBuilder
public RateLimitQuotaBucketSettings.Builder clearBucketIdBuilder()
``BucketId`` builder. :ref:`BucketId <envoy_v3_api_msg_service.rate_limit_quota.v3.BucketId>` is a map from the string key to the string value which serves as bucket identifier common for on the control plane and the data plane. While ``BucketId`` is always static, ``BucketIdBuilder`` allows to populate map values with the dynamic properties associated with the each individual request. Example 1: static fields only ``BucketIdBuilder``: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket hello: string_value: world Produces the following ``BucketId`` for all requests: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket hello: world Example 2: static and dynamic fields .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket env: custom_value: typed_config: '@type': type.googleapis.com/envoy.type.matcher.v3.HttpRequestHeaderMatchInput header_name: environment In this example, the value of ``BucketId`` key ``env`` is substituted from the ``environment`` request header. This is equivalent to the following ``pseudo-code``: .. code-block:: yaml name: 'my_bucket' env: $header['environment'] For example, the request with the HTTP header ``env`` set to ``staging`` will produce the following ``BucketId``: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: staging For the request with the HTTP header ``environment`` set to ``prod``, will produce: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: prod .. note:: The order of ``BucketId`` keys do not matter. Buckets ``{ a: 'A', b: 'B' }`` and ``{ b: 'B', a: 'A' }`` are identical. If not set, requests will NOT be reported to the server, and will always limited according to :ref:`no_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.no_assignment_behavior>` configuration..envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder = 1;
-
getBucketIdBuilderBuilder
public RateLimitQuotaBucketSettings.BucketIdBuilder.Builder getBucketIdBuilderBuilder()
``BucketId`` builder. :ref:`BucketId <envoy_v3_api_msg_service.rate_limit_quota.v3.BucketId>` is a map from the string key to the string value which serves as bucket identifier common for on the control plane and the data plane. While ``BucketId`` is always static, ``BucketIdBuilder`` allows to populate map values with the dynamic properties associated with the each individual request. Example 1: static fields only ``BucketIdBuilder``: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket hello: string_value: world Produces the following ``BucketId`` for all requests: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket hello: world Example 2: static and dynamic fields .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket env: custom_value: typed_config: '@type': type.googleapis.com/envoy.type.matcher.v3.HttpRequestHeaderMatchInput header_name: environment In this example, the value of ``BucketId`` key ``env`` is substituted from the ``environment`` request header. This is equivalent to the following ``pseudo-code``: .. code-block:: yaml name: 'my_bucket' env: $header['environment'] For example, the request with the HTTP header ``env`` set to ``staging`` will produce the following ``BucketId``: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: staging For the request with the HTTP header ``environment`` set to ``prod``, will produce: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: prod .. note:: The order of ``BucketId`` keys do not matter. Buckets ``{ a: 'A', b: 'B' }`` and ``{ b: 'B', a: 'A' }`` are identical. If not set, requests will NOT be reported to the server, and will always limited according to :ref:`no_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.no_assignment_behavior>` configuration..envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder = 1;
-
getBucketIdBuilderOrBuilder
public RateLimitQuotaBucketSettings.BucketIdBuilderOrBuilder getBucketIdBuilderOrBuilder()
``BucketId`` builder. :ref:`BucketId <envoy_v3_api_msg_service.rate_limit_quota.v3.BucketId>` is a map from the string key to the string value which serves as bucket identifier common for on the control plane and the data plane. While ``BucketId`` is always static, ``BucketIdBuilder`` allows to populate map values with the dynamic properties associated with the each individual request. Example 1: static fields only ``BucketIdBuilder``: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket hello: string_value: world Produces the following ``BucketId`` for all requests: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket hello: world Example 2: static and dynamic fields .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket env: custom_value: typed_config: '@type': type.googleapis.com/envoy.type.matcher.v3.HttpRequestHeaderMatchInput header_name: environment In this example, the value of ``BucketId`` key ``env`` is substituted from the ``environment`` request header. This is equivalent to the following ``pseudo-code``: .. code-block:: yaml name: 'my_bucket' env: $header['environment'] For example, the request with the HTTP header ``env`` set to ``staging`` will produce the following ``BucketId``: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: staging For the request with the HTTP header ``environment`` set to ``prod``, will produce: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: prod .. note:: The order of ``BucketId`` keys do not matter. Buckets ``{ a: 'A', b: 'B' }`` and ``{ b: 'B', a: 'A' }`` are identical. If not set, requests will NOT be reported to the server, and will always limited according to :ref:`no_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.no_assignment_behavior>` configuration..envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder = 1;- Specified by:
getBucketIdBuilderOrBuilderin interfaceRateLimitQuotaBucketSettingsOrBuilder
-
getBucketIdBuilderFieldBuilder
private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.BucketIdBuilder,RateLimitQuotaBucketSettings.BucketIdBuilder.Builder,RateLimitQuotaBucketSettings.BucketIdBuilderOrBuilder> getBucketIdBuilderFieldBuilder()
``BucketId`` builder. :ref:`BucketId <envoy_v3_api_msg_service.rate_limit_quota.v3.BucketId>` is a map from the string key to the string value which serves as bucket identifier common for on the control plane and the data plane. While ``BucketId`` is always static, ``BucketIdBuilder`` allows to populate map values with the dynamic properties associated with the each individual request. Example 1: static fields only ``BucketIdBuilder``: .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket hello: string_value: world Produces the following ``BucketId`` for all requests: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket hello: world Example 2: static and dynamic fields .. validated-code-block:: yaml :type-name: envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder: name: string_value: my_bucket env: custom_value: typed_config: '@type': type.googleapis.com/envoy.type.matcher.v3.HttpRequestHeaderMatchInput header_name: environment In this example, the value of ``BucketId`` key ``env`` is substituted from the ``environment`` request header. This is equivalent to the following ``pseudo-code``: .. code-block:: yaml name: 'my_bucket' env: $header['environment'] For example, the request with the HTTP header ``env`` set to ``staging`` will produce the following ``BucketId``: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: staging For the request with the HTTP header ``environment`` set to ``prod``, will produce: .. validated-code-block:: yaml :type-name: envoy.service.rate_limit_quota.v3.BucketId bucket: name: my_bucket env: prod .. note:: The order of ``BucketId`` keys do not matter. Buckets ``{ a: 'A', b: 'B' }`` and ``{ b: 'B', a: 'A' }`` are identical. If not set, requests will NOT be reported to the server, and will always limited according to :ref:`no_assignment_behavior <envoy_v3_api_field_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.no_assignment_behavior>` configuration..envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.BucketIdBuilder bucket_id_builder = 1;
-
hasReportingInterval
public boolean hasReportingInterval()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket. When the first request is matched to a bucket with no assignment, the data plane is to report the request immediately in the :ref:`RateLimitQuotaUsageReports <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaUsageReports>` message. For the RLQS server, this signals that the data plane is now subscribed to the quota assignments in this bucket, and will start sending the assignment as described in the :ref:`RLQS documentation <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. After sending the initial report, the data plane is to continue reporting the bucket usage with the internal specified in this field. If for any reason RLQS client doesn't receive the initial assignment for the reported bucket, the data plane will eventually consider the bucket abandoned and stop sending the usage reports. This is explained in more details at :ref:`Rate Limit Quota Service (RLQS) <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. [#comment: 100000000 nanoseconds = 0.1 seconds]
.google.protobuf.Duration reporting_interval = 2 [(.validate.rules) = { ... }- Specified by:
hasReportingIntervalin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- Whether the reportingInterval field is set.
-
getReportingInterval
public com.google.protobuf.Duration getReportingInterval()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket. When the first request is matched to a bucket with no assignment, the data plane is to report the request immediately in the :ref:`RateLimitQuotaUsageReports <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaUsageReports>` message. For the RLQS server, this signals that the data plane is now subscribed to the quota assignments in this bucket, and will start sending the assignment as described in the :ref:`RLQS documentation <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. After sending the initial report, the data plane is to continue reporting the bucket usage with the internal specified in this field. If for any reason RLQS client doesn't receive the initial assignment for the reported bucket, the data plane will eventually consider the bucket abandoned and stop sending the usage reports. This is explained in more details at :ref:`Rate Limit Quota Service (RLQS) <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. [#comment: 100000000 nanoseconds = 0.1 seconds]
.google.protobuf.Duration reporting_interval = 2 [(.validate.rules) = { ... }- Specified by:
getReportingIntervalin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- The reportingInterval.
-
setReportingInterval
public RateLimitQuotaBucketSettings.Builder setReportingInterval(com.google.protobuf.Duration value)
The interval at which the data plane (RLQS client) is to report quota usage for this bucket. When the first request is matched to a bucket with no assignment, the data plane is to report the request immediately in the :ref:`RateLimitQuotaUsageReports <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaUsageReports>` message. For the RLQS server, this signals that the data plane is now subscribed to the quota assignments in this bucket, and will start sending the assignment as described in the :ref:`RLQS documentation <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. After sending the initial report, the data plane is to continue reporting the bucket usage with the internal specified in this field. If for any reason RLQS client doesn't receive the initial assignment for the reported bucket, the data plane will eventually consider the bucket abandoned and stop sending the usage reports. This is explained in more details at :ref:`Rate Limit Quota Service (RLQS) <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. [#comment: 100000000 nanoseconds = 0.1 seconds]
.google.protobuf.Duration reporting_interval = 2 [(.validate.rules) = { ... }
-
setReportingInterval
public RateLimitQuotaBucketSettings.Builder setReportingInterval(com.google.protobuf.Duration.Builder builderForValue)
The interval at which the data plane (RLQS client) is to report quota usage for this bucket. When the first request is matched to a bucket with no assignment, the data plane is to report the request immediately in the :ref:`RateLimitQuotaUsageReports <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaUsageReports>` message. For the RLQS server, this signals that the data plane is now subscribed to the quota assignments in this bucket, and will start sending the assignment as described in the :ref:`RLQS documentation <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. After sending the initial report, the data plane is to continue reporting the bucket usage with the internal specified in this field. If for any reason RLQS client doesn't receive the initial assignment for the reported bucket, the data plane will eventually consider the bucket abandoned and stop sending the usage reports. This is explained in more details at :ref:`Rate Limit Quota Service (RLQS) <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. [#comment: 100000000 nanoseconds = 0.1 seconds]
.google.protobuf.Duration reporting_interval = 2 [(.validate.rules) = { ... }
-
mergeReportingInterval
public RateLimitQuotaBucketSettings.Builder mergeReportingInterval(com.google.protobuf.Duration value)
The interval at which the data plane (RLQS client) is to report quota usage for this bucket. When the first request is matched to a bucket with no assignment, the data plane is to report the request immediately in the :ref:`RateLimitQuotaUsageReports <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaUsageReports>` message. For the RLQS server, this signals that the data plane is now subscribed to the quota assignments in this bucket, and will start sending the assignment as described in the :ref:`RLQS documentation <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. After sending the initial report, the data plane is to continue reporting the bucket usage with the internal specified in this field. If for any reason RLQS client doesn't receive the initial assignment for the reported bucket, the data plane will eventually consider the bucket abandoned and stop sending the usage reports. This is explained in more details at :ref:`Rate Limit Quota Service (RLQS) <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. [#comment: 100000000 nanoseconds = 0.1 seconds]
.google.protobuf.Duration reporting_interval = 2 [(.validate.rules) = { ... }
-
clearReportingInterval
public RateLimitQuotaBucketSettings.Builder clearReportingInterval()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket. When the first request is matched to a bucket with no assignment, the data plane is to report the request immediately in the :ref:`RateLimitQuotaUsageReports <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaUsageReports>` message. For the RLQS server, this signals that the data plane is now subscribed to the quota assignments in this bucket, and will start sending the assignment as described in the :ref:`RLQS documentation <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. After sending the initial report, the data plane is to continue reporting the bucket usage with the internal specified in this field. If for any reason RLQS client doesn't receive the initial assignment for the reported bucket, the data plane will eventually consider the bucket abandoned and stop sending the usage reports. This is explained in more details at :ref:`Rate Limit Quota Service (RLQS) <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. [#comment: 100000000 nanoseconds = 0.1 seconds]
.google.protobuf.Duration reporting_interval = 2 [(.validate.rules) = { ... }
-
getReportingIntervalBuilder
public com.google.protobuf.Duration.Builder getReportingIntervalBuilder()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket. When the first request is matched to a bucket with no assignment, the data plane is to report the request immediately in the :ref:`RateLimitQuotaUsageReports <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaUsageReports>` message. For the RLQS server, this signals that the data plane is now subscribed to the quota assignments in this bucket, and will start sending the assignment as described in the :ref:`RLQS documentation <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. After sending the initial report, the data plane is to continue reporting the bucket usage with the internal specified in this field. If for any reason RLQS client doesn't receive the initial assignment for the reported bucket, the data plane will eventually consider the bucket abandoned and stop sending the usage reports. This is explained in more details at :ref:`Rate Limit Quota Service (RLQS) <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. [#comment: 100000000 nanoseconds = 0.1 seconds]
.google.protobuf.Duration reporting_interval = 2 [(.validate.rules) = { ... }
-
getReportingIntervalOrBuilder
public com.google.protobuf.DurationOrBuilder getReportingIntervalOrBuilder()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket. When the first request is matched to a bucket with no assignment, the data plane is to report the request immediately in the :ref:`RateLimitQuotaUsageReports <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaUsageReports>` message. For the RLQS server, this signals that the data plane is now subscribed to the quota assignments in this bucket, and will start sending the assignment as described in the :ref:`RLQS documentation <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. After sending the initial report, the data plane is to continue reporting the bucket usage with the internal specified in this field. If for any reason RLQS client doesn't receive the initial assignment for the reported bucket, the data plane will eventually consider the bucket abandoned and stop sending the usage reports. This is explained in more details at :ref:`Rate Limit Quota Service (RLQS) <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. [#comment: 100000000 nanoseconds = 0.1 seconds]
.google.protobuf.Duration reporting_interval = 2 [(.validate.rules) = { ... }- Specified by:
getReportingIntervalOrBuilderin interfaceRateLimitQuotaBucketSettingsOrBuilder
-
getReportingIntervalFieldBuilder
private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.Duration,com.google.protobuf.Duration.Builder,com.google.protobuf.DurationOrBuilder> getReportingIntervalFieldBuilder()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket. When the first request is matched to a bucket with no assignment, the data plane is to report the request immediately in the :ref:`RateLimitQuotaUsageReports <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaUsageReports>` message. For the RLQS server, this signals that the data plane is now subscribed to the quota assignments in this bucket, and will start sending the assignment as described in the :ref:`RLQS documentation <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. After sending the initial report, the data plane is to continue reporting the bucket usage with the internal specified in this field. If for any reason RLQS client doesn't receive the initial assignment for the reported bucket, the data plane will eventually consider the bucket abandoned and stop sending the usage reports. This is explained in more details at :ref:`Rate Limit Quota Service (RLQS) <envoy_v3_api_file_envoy/service/rate_limit_quota/v3/rlqs.proto>`. [#comment: 100000000 nanoseconds = 0.1 seconds]
.google.protobuf.Duration reporting_interval = 2 [(.validate.rules) = { ... }
-
hasDenyResponseSettings
public boolean hasDenyResponseSettings()
Customize the deny response to the requests over the rate limit. If not set, the filter will be configured as if an empty message is set, and will behave according to the defaults specified in :ref:`DenyResponseSettings <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings>`.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings deny_response_settings = 3;- Specified by:
hasDenyResponseSettingsin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- Whether the denyResponseSettings field is set.
-
getDenyResponseSettings
public RateLimitQuotaBucketSettings.DenyResponseSettings getDenyResponseSettings()
Customize the deny response to the requests over the rate limit. If not set, the filter will be configured as if an empty message is set, and will behave according to the defaults specified in :ref:`DenyResponseSettings <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings>`.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings deny_response_settings = 3;- Specified by:
getDenyResponseSettingsin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- The denyResponseSettings.
-
setDenyResponseSettings
public RateLimitQuotaBucketSettings.Builder setDenyResponseSettings(RateLimitQuotaBucketSettings.DenyResponseSettings value)
Customize the deny response to the requests over the rate limit. If not set, the filter will be configured as if an empty message is set, and will behave according to the defaults specified in :ref:`DenyResponseSettings <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings>`.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings deny_response_settings = 3;
-
setDenyResponseSettings
public RateLimitQuotaBucketSettings.Builder setDenyResponseSettings(RateLimitQuotaBucketSettings.DenyResponseSettings.Builder builderForValue)
Customize the deny response to the requests over the rate limit. If not set, the filter will be configured as if an empty message is set, and will behave according to the defaults specified in :ref:`DenyResponseSettings <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings>`.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings deny_response_settings = 3;
-
mergeDenyResponseSettings
public RateLimitQuotaBucketSettings.Builder mergeDenyResponseSettings(RateLimitQuotaBucketSettings.DenyResponseSettings value)
Customize the deny response to the requests over the rate limit. If not set, the filter will be configured as if an empty message is set, and will behave according to the defaults specified in :ref:`DenyResponseSettings <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings>`.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings deny_response_settings = 3;
-
clearDenyResponseSettings
public RateLimitQuotaBucketSettings.Builder clearDenyResponseSettings()
Customize the deny response to the requests over the rate limit. If not set, the filter will be configured as if an empty message is set, and will behave according to the defaults specified in :ref:`DenyResponseSettings <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings>`.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings deny_response_settings = 3;
-
getDenyResponseSettingsBuilder
public RateLimitQuotaBucketSettings.DenyResponseSettings.Builder getDenyResponseSettingsBuilder()
Customize the deny response to the requests over the rate limit. If not set, the filter will be configured as if an empty message is set, and will behave according to the defaults specified in :ref:`DenyResponseSettings <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings>`.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings deny_response_settings = 3;
-
getDenyResponseSettingsOrBuilder
public RateLimitQuotaBucketSettings.DenyResponseSettingsOrBuilder getDenyResponseSettingsOrBuilder()
Customize the deny response to the requests over the rate limit. If not set, the filter will be configured as if an empty message is set, and will behave according to the defaults specified in :ref:`DenyResponseSettings <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings>`.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings deny_response_settings = 3;- Specified by:
getDenyResponseSettingsOrBuilderin interfaceRateLimitQuotaBucketSettingsOrBuilder
-
getDenyResponseSettingsFieldBuilder
private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.DenyResponseSettings,RateLimitQuotaBucketSettings.DenyResponseSettings.Builder,RateLimitQuotaBucketSettings.DenyResponseSettingsOrBuilder> getDenyResponseSettingsFieldBuilder()
Customize the deny response to the requests over the rate limit. If not set, the filter will be configured as if an empty message is set, and will behave according to the defaults specified in :ref:`DenyResponseSettings <envoy_v3_api_msg_extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings>`.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.DenyResponseSettings deny_response_settings = 3;
-
hasNoAssignmentBehavior
public boolean hasNoAssignmentBehavior()
Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment. If not set, the default behavior is to allow all requests.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.NoAssignmentBehavior no_assignment_behavior = 4;- Specified by:
hasNoAssignmentBehaviorin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- Whether the noAssignmentBehavior field is set.
-
getNoAssignmentBehavior
public RateLimitQuotaBucketSettings.NoAssignmentBehavior getNoAssignmentBehavior()
Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment. If not set, the default behavior is to allow all requests.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.NoAssignmentBehavior no_assignment_behavior = 4;- Specified by:
getNoAssignmentBehaviorin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- The noAssignmentBehavior.
-
setNoAssignmentBehavior
public RateLimitQuotaBucketSettings.Builder setNoAssignmentBehavior(RateLimitQuotaBucketSettings.NoAssignmentBehavior value)
Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment. If not set, the default behavior is to allow all requests.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.NoAssignmentBehavior no_assignment_behavior = 4;
-
setNoAssignmentBehavior
public RateLimitQuotaBucketSettings.Builder setNoAssignmentBehavior(RateLimitQuotaBucketSettings.NoAssignmentBehavior.Builder builderForValue)
Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment. If not set, the default behavior is to allow all requests.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.NoAssignmentBehavior no_assignment_behavior = 4;
-
mergeNoAssignmentBehavior
public RateLimitQuotaBucketSettings.Builder mergeNoAssignmentBehavior(RateLimitQuotaBucketSettings.NoAssignmentBehavior value)
Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment. If not set, the default behavior is to allow all requests.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.NoAssignmentBehavior no_assignment_behavior = 4;
-
clearNoAssignmentBehavior
public RateLimitQuotaBucketSettings.Builder clearNoAssignmentBehavior()
Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment. If not set, the default behavior is to allow all requests.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.NoAssignmentBehavior no_assignment_behavior = 4;
-
getNoAssignmentBehaviorBuilder
public RateLimitQuotaBucketSettings.NoAssignmentBehavior.Builder getNoAssignmentBehaviorBuilder()
Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment. If not set, the default behavior is to allow all requests.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.NoAssignmentBehavior no_assignment_behavior = 4;
-
getNoAssignmentBehaviorOrBuilder
public RateLimitQuotaBucketSettings.NoAssignmentBehaviorOrBuilder getNoAssignmentBehaviorOrBuilder()
Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment. If not set, the default behavior is to allow all requests.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.NoAssignmentBehavior no_assignment_behavior = 4;- Specified by:
getNoAssignmentBehaviorOrBuilderin interfaceRateLimitQuotaBucketSettingsOrBuilder
-
getNoAssignmentBehaviorFieldBuilder
private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.NoAssignmentBehavior,RateLimitQuotaBucketSettings.NoAssignmentBehavior.Builder,RateLimitQuotaBucketSettings.NoAssignmentBehaviorOrBuilder> getNoAssignmentBehaviorFieldBuilder()
Configures the behavior in the "no assignment" state: after the first request has been matched to the bucket, and before the the RLQS server returns the first quota assignment. If not set, the default behavior is to allow all requests.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.NoAssignmentBehavior no_assignment_behavior = 4;
-
hasExpiredAssignmentBehavior
public boolean hasExpiredAssignmentBehavior()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed. If not set, the bucket is abandoned when its ``active`` assignment expires. The process of abandoning the bucket, and restarting the subscription is described in the :ref:`AbandonAction <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` message.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expired_assignment_behavior = 5;- Specified by:
hasExpiredAssignmentBehaviorin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- Whether the expiredAssignmentBehavior field is set.
-
getExpiredAssignmentBehavior
public RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior getExpiredAssignmentBehavior()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed. If not set, the bucket is abandoned when its ``active`` assignment expires. The process of abandoning the bucket, and restarting the subscription is described in the :ref:`AbandonAction <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` message.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expired_assignment_behavior = 5;- Specified by:
getExpiredAssignmentBehaviorin interfaceRateLimitQuotaBucketSettingsOrBuilder- Returns:
- The expiredAssignmentBehavior.
-
setExpiredAssignmentBehavior
public RateLimitQuotaBucketSettings.Builder setExpiredAssignmentBehavior(RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior value)
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed. If not set, the bucket is abandoned when its ``active`` assignment expires. The process of abandoning the bucket, and restarting the subscription is described in the :ref:`AbandonAction <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` message.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expired_assignment_behavior = 5;
-
setExpiredAssignmentBehavior
public RateLimitQuotaBucketSettings.Builder setExpiredAssignmentBehavior(RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.Builder builderForValue)
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed. If not set, the bucket is abandoned when its ``active`` assignment expires. The process of abandoning the bucket, and restarting the subscription is described in the :ref:`AbandonAction <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` message.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expired_assignment_behavior = 5;
-
mergeExpiredAssignmentBehavior
public RateLimitQuotaBucketSettings.Builder mergeExpiredAssignmentBehavior(RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior value)
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed. If not set, the bucket is abandoned when its ``active`` assignment expires. The process of abandoning the bucket, and restarting the subscription is described in the :ref:`AbandonAction <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` message.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expired_assignment_behavior = 5;
-
clearExpiredAssignmentBehavior
public RateLimitQuotaBucketSettings.Builder clearExpiredAssignmentBehavior()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed. If not set, the bucket is abandoned when its ``active`` assignment expires. The process of abandoning the bucket, and restarting the subscription is described in the :ref:`AbandonAction <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` message.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expired_assignment_behavior = 5;
-
getExpiredAssignmentBehaviorBuilder
public RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.Builder getExpiredAssignmentBehaviorBuilder()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed. If not set, the bucket is abandoned when its ``active`` assignment expires. The process of abandoning the bucket, and restarting the subscription is described in the :ref:`AbandonAction <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` message.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expired_assignment_behavior = 5;
-
getExpiredAssignmentBehaviorOrBuilder
public RateLimitQuotaBucketSettings.ExpiredAssignmentBehaviorOrBuilder getExpiredAssignmentBehaviorOrBuilder()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed. If not set, the bucket is abandoned when its ``active`` assignment expires. The process of abandoning the bucket, and restarting the subscription is described in the :ref:`AbandonAction <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` message.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expired_assignment_behavior = 5;- Specified by:
getExpiredAssignmentBehaviorOrBuilderin interfaceRateLimitQuotaBucketSettingsOrBuilder
-
getExpiredAssignmentBehaviorFieldBuilder
private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior,RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.Builder,RateLimitQuotaBucketSettings.ExpiredAssignmentBehaviorOrBuilder> getExpiredAssignmentBehaviorFieldBuilder()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed. If not set, the bucket is abandoned when its ``active`` assignment expires. The process of abandoning the bucket, and restarting the subscription is described in the :ref:`AbandonAction <envoy_v3_api_msg_service.rate_limit_quota.v3.RateLimitQuotaResponse.BucketAction.AbandonAction>` message.
.envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior expired_assignment_behavior = 5;
-
-