Class LocalRateLimit.Builder

  • All Implemented Interfaces:
    com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, LocalRateLimitOrBuilder, Cloneable
    Enclosing class:
    LocalRateLimit

    public static final class LocalRateLimit.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
    implements LocalRateLimitOrBuilder
     [#next-free-field: 13]
     
    Protobuf type envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
    • Method Detail

      • getDescriptor

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

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
      • clear

        public LocalRateLimit.Builder 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.GeneratedMessageV3.Builder<LocalRateLimit.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.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
      • getDefaultInstanceForType

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

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

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

        public LocalRateLimit.Builder clone()
        Specified by:
        clone in interface com.google.protobuf.Message.Builder
        Specified by:
        clone in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clone in class com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
      • setField

        public LocalRateLimit.Builder setField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                               Object value)
        Specified by:
        setField in interface com.google.protobuf.Message.Builder
        Overrides:
        setField in class com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
      • clearField

        public LocalRateLimit.Builder clearField​(com.google.protobuf.Descriptors.FieldDescriptor field)
        Specified by:
        clearField in interface com.google.protobuf.Message.Builder
        Overrides:
        clearField in class com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
      • clearOneof

        public LocalRateLimit.Builder clearOneof​(com.google.protobuf.Descriptors.OneofDescriptor oneof)
        Specified by:
        clearOneof in interface com.google.protobuf.Message.Builder
        Overrides:
        clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
      • setRepeatedField

        public LocalRateLimit.Builder setRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                       int index,
                                                       Object value)
        Specified by:
        setRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
      • addRepeatedField

        public LocalRateLimit.Builder addRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                       Object value)
        Specified by:
        addRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
      • mergeFrom

        public LocalRateLimit.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<LocalRateLimit.Builder>
      • isInitialized

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

        public LocalRateLimit.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<LocalRateLimit.Builder>
        Throws:
        IOException
      • getStatPrefix

        public String getStatPrefix()
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Specified by:
        getStatPrefix in interface LocalRateLimitOrBuilder
        Returns:
        The statPrefix.
      • getStatPrefixBytes

        public com.google.protobuf.ByteString getStatPrefixBytes()
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Specified by:
        getStatPrefixBytes in interface LocalRateLimitOrBuilder
        Returns:
        The bytes for statPrefix.
      • setStatPrefix

        public LocalRateLimit.Builder setStatPrefix​(String value)
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Parameters:
        value - The statPrefix to set.
        Returns:
        This builder for chaining.
      • clearStatPrefix

        public LocalRateLimit.Builder clearStatPrefix()
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Returns:
        This builder for chaining.
      • setStatPrefixBytes

        public LocalRateLimit.Builder setStatPrefixBytes​(com.google.protobuf.ByteString value)
         The human readable prefix to use when emitting stats.
         
        string stat_prefix = 1 [(.validate.rules) = { ... }
        Parameters:
        value - The bytes for statPrefix to set.
        Returns:
        This builder for chaining.
      • hasStatus

        public boolean hasStatus()
         This field allows for a custom HTTP response status code to the downstream client when
         the request has been rate limited.
         Defaults to 429 (TooManyRequests).
         .. note::
           If this is set to < 400, 429 will be used instead.
         
        .envoy.type.v3.HttpStatus status = 2;
        Specified by:
        hasStatus in interface LocalRateLimitOrBuilder
        Returns:
        Whether the status field is set.
      • getStatus

        public HttpStatus getStatus()
         This field allows for a custom HTTP response status code to the downstream client when
         the request has been rate limited.
         Defaults to 429 (TooManyRequests).
         .. note::
           If this is set to < 400, 429 will be used instead.
         
        .envoy.type.v3.HttpStatus status = 2;
        Specified by:
        getStatus in interface LocalRateLimitOrBuilder
        Returns:
        The status.
      • setStatus

        public LocalRateLimit.Builder setStatus​(HttpStatus value)
         This field allows for a custom HTTP response status code to the downstream client when
         the request has been rate limited.
         Defaults to 429 (TooManyRequests).
         .. note::
           If this is set to < 400, 429 will be used instead.
         
        .envoy.type.v3.HttpStatus status = 2;
      • setStatus

        public LocalRateLimit.Builder setStatus​(HttpStatus.Builder builderForValue)
         This field allows for a custom HTTP response status code to the downstream client when
         the request has been rate limited.
         Defaults to 429 (TooManyRequests).
         .. note::
           If this is set to < 400, 429 will be used instead.
         
        .envoy.type.v3.HttpStatus status = 2;
      • mergeStatus

        public LocalRateLimit.Builder mergeStatus​(HttpStatus value)
         This field allows for a custom HTTP response status code to the downstream client when
         the request has been rate limited.
         Defaults to 429 (TooManyRequests).
         .. note::
           If this is set to < 400, 429 will be used instead.
         
        .envoy.type.v3.HttpStatus status = 2;
      • clearStatus

        public LocalRateLimit.Builder clearStatus()
         This field allows for a custom HTTP response status code to the downstream client when
         the request has been rate limited.
         Defaults to 429 (TooManyRequests).
         .. note::
           If this is set to < 400, 429 will be used instead.
         
        .envoy.type.v3.HttpStatus status = 2;
      • getStatusBuilder

        public HttpStatus.Builder getStatusBuilder()
         This field allows for a custom HTTP response status code to the downstream client when
         the request has been rate limited.
         Defaults to 429 (TooManyRequests).
         .. note::
           If this is set to < 400, 429 will be used instead.
         
        .envoy.type.v3.HttpStatus status = 2;
      • getStatusOrBuilder

        public HttpStatusOrBuilder getStatusOrBuilder()
         This field allows for a custom HTTP response status code to the downstream client when
         the request has been rate limited.
         Defaults to 429 (TooManyRequests).
         .. note::
           If this is set to < 400, 429 will be used instead.
         
        .envoy.type.v3.HttpStatus status = 2;
        Specified by:
        getStatusOrBuilder in interface LocalRateLimitOrBuilder
      • hasTokenBucket

        public boolean hasTokenBucket()
         The token bucket configuration to use for rate limiting requests that are processed by this
         filter. Each request processed by the filter consumes a single token. If the token is available,
         the request will be allowed. If no tokens are available, the request will receive the configured
         rate limit status.
         .. note::
           It's fine for the token bucket to be unset for the global configuration since the rate limit
           can be applied at a the virtual host or route level. Thus, the token bucket must be set
           for the per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the bucket becomes unique to that route.
         .. note::
           In the current implementation the token bucket's :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be >= 50ms to avoid too aggressive
           refills.
         
        .envoy.type.v3.TokenBucket token_bucket = 3;
        Specified by:
        hasTokenBucket in interface LocalRateLimitOrBuilder
        Returns:
        Whether the tokenBucket field is set.
      • getTokenBucket

        public TokenBucket getTokenBucket()
         The token bucket configuration to use for rate limiting requests that are processed by this
         filter. Each request processed by the filter consumes a single token. If the token is available,
         the request will be allowed. If no tokens are available, the request will receive the configured
         rate limit status.
         .. note::
           It's fine for the token bucket to be unset for the global configuration since the rate limit
           can be applied at a the virtual host or route level. Thus, the token bucket must be set
           for the per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the bucket becomes unique to that route.
         .. note::
           In the current implementation the token bucket's :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be >= 50ms to avoid too aggressive
           refills.
         
        .envoy.type.v3.TokenBucket token_bucket = 3;
        Specified by:
        getTokenBucket in interface LocalRateLimitOrBuilder
        Returns:
        The tokenBucket.
      • setTokenBucket

        public LocalRateLimit.Builder setTokenBucket​(TokenBucket value)
         The token bucket configuration to use for rate limiting requests that are processed by this
         filter. Each request processed by the filter consumes a single token. If the token is available,
         the request will be allowed. If no tokens are available, the request will receive the configured
         rate limit status.
         .. note::
           It's fine for the token bucket to be unset for the global configuration since the rate limit
           can be applied at a the virtual host or route level. Thus, the token bucket must be set
           for the per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the bucket becomes unique to that route.
         .. note::
           In the current implementation the token bucket's :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be >= 50ms to avoid too aggressive
           refills.
         
        .envoy.type.v3.TokenBucket token_bucket = 3;
      • setTokenBucket

        public LocalRateLimit.Builder setTokenBucket​(TokenBucket.Builder builderForValue)
         The token bucket configuration to use for rate limiting requests that are processed by this
         filter. Each request processed by the filter consumes a single token. If the token is available,
         the request will be allowed. If no tokens are available, the request will receive the configured
         rate limit status.
         .. note::
           It's fine for the token bucket to be unset for the global configuration since the rate limit
           can be applied at a the virtual host or route level. Thus, the token bucket must be set
           for the per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the bucket becomes unique to that route.
         .. note::
           In the current implementation the token bucket's :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be >= 50ms to avoid too aggressive
           refills.
         
        .envoy.type.v3.TokenBucket token_bucket = 3;
      • mergeTokenBucket

        public LocalRateLimit.Builder mergeTokenBucket​(TokenBucket value)
         The token bucket configuration to use for rate limiting requests that are processed by this
         filter. Each request processed by the filter consumes a single token. If the token is available,
         the request will be allowed. If no tokens are available, the request will receive the configured
         rate limit status.
         .. note::
           It's fine for the token bucket to be unset for the global configuration since the rate limit
           can be applied at a the virtual host or route level. Thus, the token bucket must be set
           for the per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the bucket becomes unique to that route.
         .. note::
           In the current implementation the token bucket's :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be >= 50ms to avoid too aggressive
           refills.
         
        .envoy.type.v3.TokenBucket token_bucket = 3;
      • clearTokenBucket

        public LocalRateLimit.Builder clearTokenBucket()
         The token bucket configuration to use for rate limiting requests that are processed by this
         filter. Each request processed by the filter consumes a single token. If the token is available,
         the request will be allowed. If no tokens are available, the request will receive the configured
         rate limit status.
         .. note::
           It's fine for the token bucket to be unset for the global configuration since the rate limit
           can be applied at a the virtual host or route level. Thus, the token bucket must be set
           for the per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the bucket becomes unique to that route.
         .. note::
           In the current implementation the token bucket's :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be >= 50ms to avoid too aggressive
           refills.
         
        .envoy.type.v3.TokenBucket token_bucket = 3;
      • getTokenBucketBuilder

        public TokenBucket.Builder getTokenBucketBuilder()
         The token bucket configuration to use for rate limiting requests that are processed by this
         filter. Each request processed by the filter consumes a single token. If the token is available,
         the request will be allowed. If no tokens are available, the request will receive the configured
         rate limit status.
         .. note::
           It's fine for the token bucket to be unset for the global configuration since the rate limit
           can be applied at a the virtual host or route level. Thus, the token bucket must be set
           for the per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the bucket becomes unique to that route.
         .. note::
           In the current implementation the token bucket's :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be >= 50ms to avoid too aggressive
           refills.
         
        .envoy.type.v3.TokenBucket token_bucket = 3;
      • getTokenBucketOrBuilder

        public TokenBucketOrBuilder getTokenBucketOrBuilder()
         The token bucket configuration to use for rate limiting requests that are processed by this
         filter. Each request processed by the filter consumes a single token. If the token is available,
         the request will be allowed. If no tokens are available, the request will receive the configured
         rate limit status.
         .. note::
           It's fine for the token bucket to be unset for the global configuration since the rate limit
           can be applied at a the virtual host or route level. Thus, the token bucket must be set
           for the per route configuration otherwise the config will be rejected.
         .. note::
           When using per route configuration, the bucket becomes unique to that route.
         .. note::
           In the current implementation the token bucket's :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be >= 50ms to avoid too aggressive
           refills.
         
        .envoy.type.v3.TokenBucket token_bucket = 3;
        Specified by:
        getTokenBucketOrBuilder in interface LocalRateLimitOrBuilder
      • hasFilterEnabled

        public boolean hasFilterEnabled()
         If set, this will enable -- but not necessarily enforce -- the rate limit for the given
         fraction of requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enabled = 4;
        Specified by:
        hasFilterEnabled in interface LocalRateLimitOrBuilder
        Returns:
        Whether the filterEnabled field is set.
      • getFilterEnabled

        public RuntimeFractionalPercent getFilterEnabled()
         If set, this will enable -- but not necessarily enforce -- the rate limit for the given
         fraction of requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enabled = 4;
        Specified by:
        getFilterEnabled in interface LocalRateLimitOrBuilder
        Returns:
        The filterEnabled.
      • setFilterEnabled

        public LocalRateLimit.Builder setFilterEnabled​(RuntimeFractionalPercent value)
         If set, this will enable -- but not necessarily enforce -- the rate limit for the given
         fraction of requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enabled = 4;
      • setFilterEnabled

        public LocalRateLimit.Builder setFilterEnabled​(RuntimeFractionalPercent.Builder builderForValue)
         If set, this will enable -- but not necessarily enforce -- the rate limit for the given
         fraction of requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enabled = 4;
      • mergeFilterEnabled

        public LocalRateLimit.Builder mergeFilterEnabled​(RuntimeFractionalPercent value)
         If set, this will enable -- but not necessarily enforce -- the rate limit for the given
         fraction of requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enabled = 4;
      • clearFilterEnabled

        public LocalRateLimit.Builder clearFilterEnabled()
         If set, this will enable -- but not necessarily enforce -- the rate limit for the given
         fraction of requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enabled = 4;
      • getFilterEnabledBuilder

        public RuntimeFractionalPercent.Builder getFilterEnabledBuilder()
         If set, this will enable -- but not necessarily enforce -- the rate limit for the given
         fraction of requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enabled = 4;
      • hasFilterEnforced

        public boolean hasFilterEnforced()
         If set, this will enforce the rate limit decisions for the given fraction of requests.
         Note: this only applies to the fraction of enabled requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enforced = 5;
        Specified by:
        hasFilterEnforced in interface LocalRateLimitOrBuilder
        Returns:
        Whether the filterEnforced field is set.
      • getFilterEnforced

        public RuntimeFractionalPercent getFilterEnforced()
         If set, this will enforce the rate limit decisions for the given fraction of requests.
         Note: this only applies to the fraction of enabled requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enforced = 5;
        Specified by:
        getFilterEnforced in interface LocalRateLimitOrBuilder
        Returns:
        The filterEnforced.
      • setFilterEnforced

        public LocalRateLimit.Builder setFilterEnforced​(RuntimeFractionalPercent value)
         If set, this will enforce the rate limit decisions for the given fraction of requests.
         Note: this only applies to the fraction of enabled requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enforced = 5;
      • setFilterEnforced

        public LocalRateLimit.Builder setFilterEnforced​(RuntimeFractionalPercent.Builder builderForValue)
         If set, this will enforce the rate limit decisions for the given fraction of requests.
         Note: this only applies to the fraction of enabled requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enforced = 5;
      • mergeFilterEnforced

        public LocalRateLimit.Builder mergeFilterEnforced​(RuntimeFractionalPercent value)
         If set, this will enforce the rate limit decisions for the given fraction of requests.
         Note: this only applies to the fraction of enabled requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enforced = 5;
      • clearFilterEnforced

        public LocalRateLimit.Builder clearFilterEnforced()
         If set, this will enforce the rate limit decisions for the given fraction of requests.
         Note: this only applies to the fraction of enabled requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enforced = 5;
      • getFilterEnforcedBuilder

        public RuntimeFractionalPercent.Builder getFilterEnforcedBuilder()
         If set, this will enforce the rate limit decisions for the given fraction of requests.
         Note: this only applies to the fraction of enabled requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enforced = 5;
      • getFilterEnforcedOrBuilder

        public RuntimeFractionalPercentOrBuilder getFilterEnforcedOrBuilder()
         If set, this will enforce the rate limit decisions for the given fraction of requests.
         Note: this only applies to the fraction of enabled requests.
         Defaults to 0% of requests for safety.
         
        .envoy.config.core.v3.RuntimeFractionalPercent filter_enforced = 5;
        Specified by:
        getFilterEnforcedOrBuilder in interface LocalRateLimitOrBuilder
      • getRequestHeadersToAddWhenNotEnforcedList

        public List<HeaderValueOption> getRequestHeadersToAddWhenNotEnforcedList()
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
        Specified by:
        getRequestHeadersToAddWhenNotEnforcedList in interface LocalRateLimitOrBuilder
      • getRequestHeadersToAddWhenNotEnforcedCount

        public int getRequestHeadersToAddWhenNotEnforcedCount()
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
        Specified by:
        getRequestHeadersToAddWhenNotEnforcedCount in interface LocalRateLimitOrBuilder
      • getRequestHeadersToAddWhenNotEnforced

        public HeaderValueOption getRequestHeadersToAddWhenNotEnforced​(int index)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
        Specified by:
        getRequestHeadersToAddWhenNotEnforced in interface LocalRateLimitOrBuilder
      • setRequestHeadersToAddWhenNotEnforced

        public LocalRateLimit.Builder setRequestHeadersToAddWhenNotEnforced​(int index,
                                                                            HeaderValueOption value)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • setRequestHeadersToAddWhenNotEnforced

        public LocalRateLimit.Builder setRequestHeadersToAddWhenNotEnforced​(int index,
                                                                            HeaderValueOption.Builder builderForValue)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • addRequestHeadersToAddWhenNotEnforced

        public LocalRateLimit.Builder addRequestHeadersToAddWhenNotEnforced​(HeaderValueOption value)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • addRequestHeadersToAddWhenNotEnforced

        public LocalRateLimit.Builder addRequestHeadersToAddWhenNotEnforced​(int index,
                                                                            HeaderValueOption value)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • addRequestHeadersToAddWhenNotEnforced

        public LocalRateLimit.Builder addRequestHeadersToAddWhenNotEnforced​(HeaderValueOption.Builder builderForValue)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • addRequestHeadersToAddWhenNotEnforced

        public LocalRateLimit.Builder addRequestHeadersToAddWhenNotEnforced​(int index,
                                                                            HeaderValueOption.Builder builderForValue)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • addAllRequestHeadersToAddWhenNotEnforced

        public LocalRateLimit.Builder addAllRequestHeadersToAddWhenNotEnforced​(Iterable<? extends HeaderValueOption> values)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • clearRequestHeadersToAddWhenNotEnforced

        public LocalRateLimit.Builder clearRequestHeadersToAddWhenNotEnforced()
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • removeRequestHeadersToAddWhenNotEnforced

        public LocalRateLimit.Builder removeRequestHeadersToAddWhenNotEnforced​(int index)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • getRequestHeadersToAddWhenNotEnforcedBuilder

        public HeaderValueOption.Builder getRequestHeadersToAddWhenNotEnforcedBuilder​(int index)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • getRequestHeadersToAddWhenNotEnforcedOrBuilder

        public HeaderValueOptionOrBuilder getRequestHeadersToAddWhenNotEnforcedOrBuilder​(int index)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
        Specified by:
        getRequestHeadersToAddWhenNotEnforcedOrBuilder in interface LocalRateLimitOrBuilder
      • getRequestHeadersToAddWhenNotEnforcedOrBuilderList

        public List<? extends HeaderValueOptionOrBuilder> getRequestHeadersToAddWhenNotEnforcedOrBuilderList()
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
        Specified by:
        getRequestHeadersToAddWhenNotEnforcedOrBuilderList in interface LocalRateLimitOrBuilder
      • addRequestHeadersToAddWhenNotEnforcedBuilder

        public HeaderValueOption.Builder addRequestHeadersToAddWhenNotEnforcedBuilder()
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • addRequestHeadersToAddWhenNotEnforcedBuilder

        public HeaderValueOption.Builder addRequestHeadersToAddWhenNotEnforcedBuilder​(int index)
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • getRequestHeadersToAddWhenNotEnforcedBuilderList

        public List<HeaderValueOption.Builder> getRequestHeadersToAddWhenNotEnforcedBuilderList()
         Specifies a list of HTTP headers that should be added to each request that
         has been rate limited and is also forwarded upstream. This can only occur when the
         filter is enabled but not enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption request_headers_to_add_when_not_enforced = 10 [(.validate.rules) = { ... }
      • getResponseHeadersToAddList

        public List<HeaderValueOption> getResponseHeadersToAddList()
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
        Specified by:
        getResponseHeadersToAddList in interface LocalRateLimitOrBuilder
      • getResponseHeadersToAddCount

        public int getResponseHeadersToAddCount()
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
        Specified by:
        getResponseHeadersToAddCount in interface LocalRateLimitOrBuilder
      • getResponseHeadersToAdd

        public HeaderValueOption getResponseHeadersToAdd​(int index)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
        Specified by:
        getResponseHeadersToAdd in interface LocalRateLimitOrBuilder
      • setResponseHeadersToAdd

        public LocalRateLimit.Builder setResponseHeadersToAdd​(int index,
                                                              HeaderValueOption value)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • setResponseHeadersToAdd

        public LocalRateLimit.Builder setResponseHeadersToAdd​(int index,
                                                              HeaderValueOption.Builder builderForValue)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • addResponseHeadersToAdd

        public LocalRateLimit.Builder addResponseHeadersToAdd​(HeaderValueOption value)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • addResponseHeadersToAdd

        public LocalRateLimit.Builder addResponseHeadersToAdd​(int index,
                                                              HeaderValueOption value)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • addResponseHeadersToAdd

        public LocalRateLimit.Builder addResponseHeadersToAdd​(HeaderValueOption.Builder builderForValue)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • addResponseHeadersToAdd

        public LocalRateLimit.Builder addResponseHeadersToAdd​(int index,
                                                              HeaderValueOption.Builder builderForValue)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • addAllResponseHeadersToAdd

        public LocalRateLimit.Builder addAllResponseHeadersToAdd​(Iterable<? extends HeaderValueOption> values)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • clearResponseHeadersToAdd

        public LocalRateLimit.Builder clearResponseHeadersToAdd()
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • removeResponseHeadersToAdd

        public LocalRateLimit.Builder removeResponseHeadersToAdd​(int index)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • getResponseHeadersToAddBuilder

        public HeaderValueOption.Builder getResponseHeadersToAddBuilder​(int index)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • getResponseHeadersToAddOrBuilder

        public HeaderValueOptionOrBuilder getResponseHeadersToAddOrBuilder​(int index)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
        Specified by:
        getResponseHeadersToAddOrBuilder in interface LocalRateLimitOrBuilder
      • getResponseHeadersToAddOrBuilderList

        public List<? extends HeaderValueOptionOrBuilder> getResponseHeadersToAddOrBuilderList()
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
        Specified by:
        getResponseHeadersToAddOrBuilderList in interface LocalRateLimitOrBuilder
      • addResponseHeadersToAddBuilder

        public HeaderValueOption.Builder addResponseHeadersToAddBuilder()
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • addResponseHeadersToAddBuilder

        public HeaderValueOption.Builder addResponseHeadersToAddBuilder​(int index)
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • getResponseHeadersToAddBuilderList

        public List<HeaderValueOption.Builder> getResponseHeadersToAddBuilderList()
         Specifies a list of HTTP headers that should be added to each response for requests that
         have been rate limited. This occurs when the filter is either enabled or fully enforced.
         
        repeated .envoy.config.core.v3.HeaderValueOption response_headers_to_add = 6 [(.validate.rules) = { ... }
      • getDescriptorsList

        public List<LocalRateLimitDescriptor> getDescriptorsList()
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
        Specified by:
        getDescriptorsList in interface LocalRateLimitOrBuilder
      • getDescriptorsCount

        public int getDescriptorsCount()
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
        Specified by:
        getDescriptorsCount in interface LocalRateLimitOrBuilder
      • getDescriptors

        public LocalRateLimitDescriptor getDescriptors​(int index)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
        Specified by:
        getDescriptors in interface LocalRateLimitOrBuilder
      • setDescriptors

        public LocalRateLimit.Builder setDescriptors​(int index,
                                                     LocalRateLimitDescriptor value)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • setDescriptors

        public LocalRateLimit.Builder setDescriptors​(int index,
                                                     LocalRateLimitDescriptor.Builder builderForValue)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • addDescriptors

        public LocalRateLimit.Builder addDescriptors​(LocalRateLimitDescriptor value)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • addDescriptors

        public LocalRateLimit.Builder addDescriptors​(int index,
                                                     LocalRateLimitDescriptor value)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • addDescriptors

        public LocalRateLimit.Builder addDescriptors​(LocalRateLimitDescriptor.Builder builderForValue)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • addDescriptors

        public LocalRateLimit.Builder addDescriptors​(int index,
                                                     LocalRateLimitDescriptor.Builder builderForValue)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • addAllDescriptors

        public LocalRateLimit.Builder addAllDescriptors​(Iterable<? extends LocalRateLimitDescriptor> values)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • clearDescriptors

        public LocalRateLimit.Builder clearDescriptors()
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • removeDescriptors

        public LocalRateLimit.Builder removeDescriptors​(int index)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • getDescriptorsBuilder

        public LocalRateLimitDescriptor.Builder getDescriptorsBuilder​(int index)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • getDescriptorsOrBuilder

        public LocalRateLimitDescriptorOrBuilder getDescriptorsOrBuilder​(int index)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
        Specified by:
        getDescriptorsOrBuilder in interface LocalRateLimitOrBuilder
      • getDescriptorsOrBuilderList

        public List<? extends LocalRateLimitDescriptorOrBuilder> getDescriptorsOrBuilderList()
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
        Specified by:
        getDescriptorsOrBuilderList in interface LocalRateLimitOrBuilder
      • addDescriptorsBuilder

        public LocalRateLimitDescriptor.Builder addDescriptorsBuilder()
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • addDescriptorsBuilder

        public LocalRateLimitDescriptor.Builder addDescriptorsBuilder​(int index)
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • getDescriptorsBuilderList

        public List<LocalRateLimitDescriptor.Builder> getDescriptorsBuilderList()
         The rate limit descriptor list to use in the local rate limit to override
         on. The rate limit descriptor is selected by the first full match from the
         request descriptors.
         Example on how to use ::ref:`this <config_http_filters_local_rate_limit_descriptors>`
         .. note::
           In the current implementation the descriptor's token bucket :ref:`fill_interval
           <envoy_v3_api_field_type.v3.TokenBucket.fill_interval>` must be a multiple
           global :ref:`token bucket's<envoy_v3_api_field_extensions.filters.http.local_ratelimit.v3.LocalRateLimit.token_bucket>` fill interval.
           The descriptors must match verbatim for rate limiting to apply. There is no partial
           match by a subset of descriptor entries in the current implementation.
         
        repeated .envoy.extensions.common.ratelimit.v3.LocalRateLimitDescriptor descriptors = 8;
      • getStage

        public int getStage()
         Specifies the rate limit configurations to be applied with the same
         stage number. If not set, the default stage number is 0.
         .. note::
          The filter supports a range of 0 - 10 inclusively for stage numbers.
         
        uint32 stage = 9 [(.validate.rules) = { ... }
        Specified by:
        getStage in interface LocalRateLimitOrBuilder
        Returns:
        The stage.
      • setStage

        public LocalRateLimit.Builder setStage​(int value)
         Specifies the rate limit configurations to be applied with the same
         stage number. If not set, the default stage number is 0.
         .. note::
          The filter supports a range of 0 - 10 inclusively for stage numbers.
         
        uint32 stage = 9 [(.validate.rules) = { ... }
        Parameters:
        value - The stage to set.
        Returns:
        This builder for chaining.
      • clearStage

        public LocalRateLimit.Builder clearStage()
         Specifies the rate limit configurations to be applied with the same
         stage number. If not set, the default stage number is 0.
         .. note::
          The filter supports a range of 0 - 10 inclusively for stage numbers.
         
        uint32 stage = 9 [(.validate.rules) = { ... }
        Returns:
        This builder for chaining.
      • getLocalRateLimitPerDownstreamConnection

        public boolean getLocalRateLimitPerDownstreamConnection()
         Specifies the scope of the rate limiter's token bucket.
         If set to false, the token bucket is shared across all worker threads,
         thus the rate limits are applied per Envoy process.
         If set to true, a token bucket is allocated for each connection.
         Thus the rate limits are applied per connection thereby allowing
         one to rate limit requests on a per connection basis.
         If unspecified, the default value is false.
         
        bool local_rate_limit_per_downstream_connection = 11;
        Specified by:
        getLocalRateLimitPerDownstreamConnection in interface LocalRateLimitOrBuilder
        Returns:
        The localRateLimitPerDownstreamConnection.
      • setLocalRateLimitPerDownstreamConnection

        public LocalRateLimit.Builder setLocalRateLimitPerDownstreamConnection​(boolean value)
         Specifies the scope of the rate limiter's token bucket.
         If set to false, the token bucket is shared across all worker threads,
         thus the rate limits are applied per Envoy process.
         If set to true, a token bucket is allocated for each connection.
         Thus the rate limits are applied per connection thereby allowing
         one to rate limit requests on a per connection basis.
         If unspecified, the default value is false.
         
        bool local_rate_limit_per_downstream_connection = 11;
        Parameters:
        value - The localRateLimitPerDownstreamConnection to set.
        Returns:
        This builder for chaining.
      • clearLocalRateLimitPerDownstreamConnection

        public LocalRateLimit.Builder clearLocalRateLimitPerDownstreamConnection()
         Specifies the scope of the rate limiter's token bucket.
         If set to false, the token bucket is shared across all worker threads,
         thus the rate limits are applied per Envoy process.
         If set to true, a token bucket is allocated for each connection.
         Thus the rate limits are applied per connection thereby allowing
         one to rate limit requests on a per connection basis.
         If unspecified, the default value is false.
         
        bool local_rate_limit_per_downstream_connection = 11;
        Returns:
        This builder for chaining.
      • getEnableXRatelimitHeadersValue

        public int getEnableXRatelimitHeadersValue()
         Defines the standard version to use for X-RateLimit headers emitted by the filter.
         Disabled by default.
         
        .envoy.extensions.common.ratelimit.v3.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 12 [(.validate.rules) = { ... }
        Specified by:
        getEnableXRatelimitHeadersValue in interface LocalRateLimitOrBuilder
        Returns:
        The enum numeric value on the wire for enableXRatelimitHeaders.
      • setEnableXRatelimitHeadersValue

        public LocalRateLimit.Builder setEnableXRatelimitHeadersValue​(int value)
         Defines the standard version to use for X-RateLimit headers emitted by the filter.
         Disabled by default.
         
        .envoy.extensions.common.ratelimit.v3.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 12 [(.validate.rules) = { ... }
        Parameters:
        value - The enum numeric value on the wire for enableXRatelimitHeaders to set.
        Returns:
        This builder for chaining.
      • getEnableXRatelimitHeaders

        public XRateLimitHeadersRFCVersion getEnableXRatelimitHeaders()
         Defines the standard version to use for X-RateLimit headers emitted by the filter.
         Disabled by default.
         
        .envoy.extensions.common.ratelimit.v3.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 12 [(.validate.rules) = { ... }
        Specified by:
        getEnableXRatelimitHeaders in interface LocalRateLimitOrBuilder
        Returns:
        The enableXRatelimitHeaders.
      • setEnableXRatelimitHeaders

        public LocalRateLimit.Builder setEnableXRatelimitHeaders​(XRateLimitHeadersRFCVersion value)
         Defines the standard version to use for X-RateLimit headers emitted by the filter.
         Disabled by default.
         
        .envoy.extensions.common.ratelimit.v3.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 12 [(.validate.rules) = { ... }
        Parameters:
        value - The enableXRatelimitHeaders to set.
        Returns:
        This builder for chaining.
      • clearEnableXRatelimitHeaders

        public LocalRateLimit.Builder clearEnableXRatelimitHeaders()
         Defines the standard version to use for X-RateLimit headers emitted by the filter.
         Disabled by default.
         
        .envoy.extensions.common.ratelimit.v3.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 12 [(.validate.rules) = { ... }
        Returns:
        This builder for chaining.
      • setUnknownFields

        public final LocalRateLimit.Builder setUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        setUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>
      • mergeUnknownFields

        public final LocalRateLimit.Builder mergeUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        mergeUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<LocalRateLimit.Builder>