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 RateLimitQuotaBucketSettings
build()
RateLimitQuotaBucketSettings
buildPartial()
private void
buildPartial0(RateLimitQuotaBucketSettings result)
RateLimitQuotaBucketSettings.Builder
clear()
RateLimitQuotaBucketSettings.Builder
clearBucketIdBuilder()
``BucketId`` builder.RateLimitQuotaBucketSettings.Builder
clearDenyResponseSettings()
Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.Builder
clearExpiredAssignmentBehavior()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.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.RateLimitQuotaBucketSettings.Builder
clearReportingInterval()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket.RateLimitQuotaBucketSettings.BucketIdBuilder
getBucketIdBuilder()
``BucketId`` builder.RateLimitQuotaBucketSettings.BucketIdBuilder.Builder
getBucketIdBuilderBuilder()
``BucketId`` builder.private com.google.protobuf.SingleFieldBuilder<RateLimitQuotaBucketSettings.BucketIdBuilder,RateLimitQuotaBucketSettings.BucketIdBuilder.Builder,RateLimitQuotaBucketSettings.BucketIdBuilderOrBuilder>
getBucketIdBuilderFieldBuilder()
``BucketId`` builder.RateLimitQuotaBucketSettings.BucketIdBuilderOrBuilder
getBucketIdBuilderOrBuilder()
``BucketId`` builder.RateLimitQuotaBucketSettings
getDefaultInstanceForType()
RateLimitQuotaBucketSettings.DenyResponseSettings
getDenyResponseSettings()
Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.DenyResponseSettings.Builder
getDenyResponseSettingsBuilder()
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.DenyResponseSettingsOrBuilder
getDenyResponseSettingsOrBuilder()
Customize the deny response to the requests over the rate limit.static com.google.protobuf.Descriptors.Descriptor
getDescriptor()
com.google.protobuf.Descriptors.Descriptor
getDescriptorForType()
RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior
getExpiredAssignmentBehavior()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior.Builder
getExpiredAssignmentBehaviorBuilder()
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.ExpiredAssignmentBehaviorOrBuilder
getExpiredAssignmentBehaviorOrBuilder()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.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.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.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.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.com.google.protobuf.Duration
getReportingInterval()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket.com.google.protobuf.Duration.Builder
getReportingIntervalBuilder()
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.DurationOrBuilder
getReportingIntervalOrBuilder()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket.boolean
hasBucketIdBuilder()
``BucketId`` builder.boolean
hasDenyResponseSettings()
Customize the deny response to the requests over the rate limit.boolean
hasExpiredAssignmentBehavior()
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.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.boolean
hasReportingInterval()
The interval at which the data plane (RLQS client) is to report quota usage for this bucket.protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable()
boolean
isInitialized()
private void
maybeForceBuilderInitialization()
RateLimitQuotaBucketSettings.Builder
mergeBucketIdBuilder(RateLimitQuotaBucketSettings.BucketIdBuilder value)
``BucketId`` builder.RateLimitQuotaBucketSettings.Builder
mergeDenyResponseSettings(RateLimitQuotaBucketSettings.DenyResponseSettings value)
Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.Builder
mergeExpiredAssignmentBehavior(RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior value)
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.RateLimitQuotaBucketSettings.Builder
mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
RateLimitQuotaBucketSettings.Builder
mergeFrom(com.google.protobuf.Message other)
RateLimitQuotaBucketSettings.Builder
mergeFrom(RateLimitQuotaBucketSettings other)
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.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.RateLimitQuotaBucketSettings.Builder
setBucketIdBuilder(RateLimitQuotaBucketSettings.BucketIdBuilder value)
``BucketId`` builder.RateLimitQuotaBucketSettings.Builder
setBucketIdBuilder(RateLimitQuotaBucketSettings.BucketIdBuilder.Builder builderForValue)
``BucketId`` builder.RateLimitQuotaBucketSettings.Builder
setDenyResponseSettings(RateLimitQuotaBucketSettings.DenyResponseSettings value)
Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.Builder
setDenyResponseSettings(RateLimitQuotaBucketSettings.DenyResponseSettings.Builder builderForValue)
Customize the deny response to the requests over the rate limit.RateLimitQuotaBucketSettings.Builder
setExpiredAssignmentBehavior(RateLimitQuotaBucketSettings.ExpiredAssignmentBehavior value)
Configures the behavior in the "expired assignment" state: the bucket's assignment has expired, and cannot be refreshed.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.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.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.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.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.-
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:
internalGetFieldAccessorTable
in classcom.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder>
-
maybeForceBuilderInitialization
private void maybeForceBuilderInitialization()
-
clear
public RateLimitQuotaBucketSettings.Builder 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<RateLimitQuotaBucketSettings.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<RateLimitQuotaBucketSettings.Builder>
-
getDefaultInstanceForType
public RateLimitQuotaBucketSettings getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageOrBuilder
-
build
public RateLimitQuotaBucketSettings build()
- Specified by:
build
in interfacecom.google.protobuf.Message.Builder
- Specified by:
build
in interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
public RateLimitQuotaBucketSettings buildPartial()
- Specified by:
buildPartial
in interfacecom.google.protobuf.Message.Builder
- Specified by:
buildPartial
in interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial0
private void buildPartial0(RateLimitQuotaBucketSettings result)
-
mergeFrom
public RateLimitQuotaBucketSettings.Builder mergeFrom(com.google.protobuf.Message other)
- Specified by:
mergeFrom
in interfacecom.google.protobuf.Message.Builder
- Overrides:
mergeFrom
in classcom.google.protobuf.AbstractMessage.Builder<RateLimitQuotaBucketSettings.Builder>
-
mergeFrom
public RateLimitQuotaBucketSettings.Builder mergeFrom(RateLimitQuotaBucketSettings other)
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitialized
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Overrides:
isInitialized
in 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:
mergeFrom
in interfacecom.google.protobuf.Message.Builder
- Specified by:
mergeFrom
in interfacecom.google.protobuf.MessageLite.Builder
- Overrides:
mergeFrom
in 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:
hasBucketIdBuilder
in 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:
getBucketIdBuilder
in 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:
getBucketIdBuilderOrBuilder
in 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:
hasReportingInterval
in 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:
getReportingInterval
in 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:
getReportingIntervalOrBuilder
in 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:
hasDenyResponseSettings
in 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:
getDenyResponseSettings
in 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:
getDenyResponseSettingsOrBuilder
in 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:
hasNoAssignmentBehavior
in 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:
getNoAssignmentBehavior
in 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:
getNoAssignmentBehaviorOrBuilder
in 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:
hasExpiredAssignmentBehavior
in 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:
getExpiredAssignmentBehavior
in 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:
getExpiredAssignmentBehaviorOrBuilder
in 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;
-
-