Class RateLimitQuotaBucketSettings.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<RateLimitQuotaBucketSettings.Builder>
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, 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 type envoy.extensions.filters.http.rate_limit_quota.v3.RateLimitQuotaBucketSettings
  • Field Details

  • Constructor Details

    • Builder

      private Builder()
    • Builder

      private Builder(com.google.protobuf.AbstractMessage.BuilderParent parent)
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder>
    • maybeForceBuilderInitialization

      private void maybeForceBuilderInitialization()
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder>
    • getDefaultInstanceForType

      public RateLimitQuotaBucketSettings getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public RateLimitQuotaBucketSettings buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • buildPartial0

      private void buildPartial0(RateLimitQuotaBucketSettings result)
    • mergeFrom

      public RateLimitQuotaBucketSettings.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<RateLimitQuotaBucketSettings.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage.Builder<RateLimitQuotaBucketSettings.Builder>
    • mergeFrom

      public RateLimitQuotaBucketSettings.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<RateLimitQuotaBucketSettings.Builder>
      Throws:
      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 interface RateLimitQuotaBucketSettingsOrBuilder
      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 interface RateLimitQuotaBucketSettingsOrBuilder
      Returns:
      The bucketIdBuilder.
    • setBucketIdBuilder

       ``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

       ``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

       ``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 interface RateLimitQuotaBucketSettingsOrBuilder
    • internalGetBucketIdBuilderFieldBuilder

       ``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 interface RateLimitQuotaBucketSettingsOrBuilder
      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 interface RateLimitQuotaBucketSettingsOrBuilder
      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 interface RateLimitQuotaBucketSettingsOrBuilder
    • internalGetReportingIntervalFieldBuilder

      private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.Duration,com.google.protobuf.Duration.Builder,com.google.protobuf.DurationOrBuilder> internalGetReportingIntervalFieldBuilder()
       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 interface RateLimitQuotaBucketSettingsOrBuilder
      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 interface RateLimitQuotaBucketSettingsOrBuilder
      Returns:
      The denyResponseSettings.
    • setDenyResponseSettings

       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

       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

       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 interface RateLimitQuotaBucketSettingsOrBuilder
    • internalGetDenyResponseSettingsFieldBuilder

       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 interface RateLimitQuotaBucketSettingsOrBuilder
      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 interface RateLimitQuotaBucketSettingsOrBuilder
      Returns:
      The noAssignmentBehavior.
    • setNoAssignmentBehavior

       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

       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

       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 interface RateLimitQuotaBucketSettingsOrBuilder
    • internalGetNoAssignmentBehaviorFieldBuilder

       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 interface RateLimitQuotaBucketSettingsOrBuilder
      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 interface RateLimitQuotaBucketSettingsOrBuilder
      Returns:
      The expiredAssignmentBehavior.
    • setExpiredAssignmentBehavior

       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

       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

       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 interface RateLimitQuotaBucketSettingsOrBuilder
    • internalGetExpiredAssignmentBehaviorFieldBuilder

       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;