Class RateLimit.Builder
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite.Builder
-
- com.google.protobuf.AbstractMessage.Builder<BuilderType>
-
- com.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
- io.envoyproxy.envoy.extensions.filters.http.ratelimit.v3.RateLimit.Builder
-
- All Implemented Interfaces:
com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,RateLimitOrBuilder,Cloneable
- Enclosing class:
- RateLimit
public static final class RateLimit.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder> implements RateLimitOrBuilder
[#next-free-field: 11]
Protobuf typeenvoy.extensions.filters.http.ratelimit.v3.RateLimit
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description RateLimit.BuilderaddRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)RateLimitbuild()RateLimitbuildPartial()RateLimit.Builderclear()RateLimit.BuilderclearDisableXEnvoyRatelimitedHeader()Disables emitting the :ref:`x-envoy-ratelimited<config_http_filters_router_x-envoy-ratelimited>` header in case of rate limiting (i.e. 429 responses).RateLimit.BuilderclearDomain()The rate limit domain to use when calling the rate limit service.RateLimit.BuilderclearEnableXRatelimitHeaders()Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy.RateLimit.BuilderclearFailureModeDeny()The filter's behaviour in case the rate limiting service does not respond back.RateLimit.BuilderclearField(com.google.protobuf.Descriptors.FieldDescriptor field)RateLimit.BuilderclearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)RateLimit.BuilderclearRateLimitedAsResourceExhausted()Specifies whether a ``RESOURCE_EXHAUSTED`` gRPC code must be returned instead of the default ``UNAVAILABLE`` gRPC code for a rate limited gRPC call.RateLimit.BuilderclearRateLimitedStatus()This field allows for a custom HTTP response status code to the downstream client when the request has been rate limited.RateLimit.BuilderclearRateLimitService()Configuration for an external rate limit service provider.RateLimit.BuilderclearRequestType()The type of requests the filter should apply to.RateLimit.BuilderclearStage()Specifies the rate limit configurations to be applied with the same stage number.RateLimit.BuilderclearTimeout()The timeout in milliseconds for the rate limit service RPC.RateLimit.Builderclone()RateLimitgetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()com.google.protobuf.Descriptors.DescriptorgetDescriptorForType()booleangetDisableXEnvoyRatelimitedHeader()Disables emitting the :ref:`x-envoy-ratelimited<config_http_filters_router_x-envoy-ratelimited>` header in case of rate limiting (i.e. 429 responses).StringgetDomain()The rate limit domain to use when calling the rate limit service.com.google.protobuf.ByteStringgetDomainBytes()The rate limit domain to use when calling the rate limit service.RateLimit.XRateLimitHeadersRFCVersiongetEnableXRatelimitHeaders()Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy.intgetEnableXRatelimitHeadersValue()Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy.booleangetFailureModeDeny()The filter's behaviour in case the rate limiting service does not respond back.booleangetRateLimitedAsResourceExhausted()Specifies whether a ``RESOURCE_EXHAUSTED`` gRPC code must be returned instead of the default ``UNAVAILABLE`` gRPC code for a rate limited gRPC call.HttpStatusgetRateLimitedStatus()This field allows for a custom HTTP response status code to the downstream client when the request has been rate limited.HttpStatus.BuildergetRateLimitedStatusBuilder()This field allows for a custom HTTP response status code to the downstream client when the request has been rate limited.HttpStatusOrBuildergetRateLimitedStatusOrBuilder()This field allows for a custom HTTP response status code to the downstream client when the request has been rate limited.RateLimitServiceConfiggetRateLimitService()Configuration for an external rate limit service provider.RateLimitServiceConfig.BuildergetRateLimitServiceBuilder()Configuration for an external rate limit service provider.RateLimitServiceConfigOrBuildergetRateLimitServiceOrBuilder()Configuration for an external rate limit service provider.StringgetRequestType()The type of requests the filter should apply to.com.google.protobuf.ByteStringgetRequestTypeBytes()The type of requests the filter should apply to.intgetStage()Specifies the rate limit configurations to be applied with the same stage number.com.google.protobuf.DurationgetTimeout()The timeout in milliseconds for the rate limit service RPC.com.google.protobuf.Duration.BuildergetTimeoutBuilder()The timeout in milliseconds for the rate limit service RPC.com.google.protobuf.DurationOrBuildergetTimeoutOrBuilder()The timeout in milliseconds for the rate limit service RPC.booleanhasRateLimitedStatus()This field allows for a custom HTTP response status code to the downstream client when the request has been rate limited.booleanhasRateLimitService()Configuration for an external rate limit service provider.booleanhasTimeout()The timeout in milliseconds for the rate limit service RPC.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()RateLimit.BuildermergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)RateLimit.BuildermergeFrom(com.google.protobuf.Message other)RateLimit.BuildermergeFrom(RateLimit other)RateLimit.BuildermergeRateLimitedStatus(HttpStatus value)This field allows for a custom HTTP response status code to the downstream client when the request has been rate limited.RateLimit.BuildermergeRateLimitService(RateLimitServiceConfig value)Configuration for an external rate limit service provider.RateLimit.BuildermergeTimeout(com.google.protobuf.Duration value)The timeout in milliseconds for the rate limit service RPC.RateLimit.BuildermergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)RateLimit.BuildersetDisableXEnvoyRatelimitedHeader(boolean value)Disables emitting the :ref:`x-envoy-ratelimited<config_http_filters_router_x-envoy-ratelimited>` header in case of rate limiting (i.e. 429 responses).RateLimit.BuildersetDomain(String value)The rate limit domain to use when calling the rate limit service.RateLimit.BuildersetDomainBytes(com.google.protobuf.ByteString value)The rate limit domain to use when calling the rate limit service.RateLimit.BuildersetEnableXRatelimitHeaders(RateLimit.XRateLimitHeadersRFCVersion value)Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy.RateLimit.BuildersetEnableXRatelimitHeadersValue(int value)Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy.RateLimit.BuildersetFailureModeDeny(boolean value)The filter's behaviour in case the rate limiting service does not respond back.RateLimit.BuildersetField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)RateLimit.BuildersetRateLimitedAsResourceExhausted(boolean value)Specifies whether a ``RESOURCE_EXHAUSTED`` gRPC code must be returned instead of the default ``UNAVAILABLE`` gRPC code for a rate limited gRPC call.RateLimit.BuildersetRateLimitedStatus(HttpStatus value)This field allows for a custom HTTP response status code to the downstream client when the request has been rate limited.RateLimit.BuildersetRateLimitedStatus(HttpStatus.Builder builderForValue)This field allows for a custom HTTP response status code to the downstream client when the request has been rate limited.RateLimit.BuildersetRateLimitService(RateLimitServiceConfig value)Configuration for an external rate limit service provider.RateLimit.BuildersetRateLimitService(RateLimitServiceConfig.Builder builderForValue)Configuration for an external rate limit service provider.RateLimit.BuildersetRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)RateLimit.BuildersetRequestType(String value)The type of requests the filter should apply to.RateLimit.BuildersetRequestTypeBytes(com.google.protobuf.ByteString value)The type of requests the filter should apply to.RateLimit.BuildersetStage(int value)Specifies the rate limit configurations to be applied with the same stage number.RateLimit.BuildersetTimeout(com.google.protobuf.Duration value)The timeout in milliseconds for the rate limit service RPC.RateLimit.BuildersetTimeout(com.google.protobuf.Duration.Builder builderForValue)The timeout in milliseconds for the rate limit service RPC.RateLimit.BuildersetUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)-
Methods inherited from class com.google.protobuf.GeneratedMessageV3.Builder
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, newBuilderForField, onBuilt, onChanged, setUnknownFieldsProto3
-
Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Method Detail
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
clear
public RateLimit.Builder clear()
- Specified by:
clearin interfacecom.google.protobuf.Message.Builder- Specified by:
clearin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clearin classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.Message.Builder- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getDescriptorForTypein classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
getDefaultInstanceForType
public RateLimit getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
public RateLimit build()
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
public RateLimit buildPartial()
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
clone
public RateLimit.Builder clone()
- Specified by:
clonein interfacecom.google.protobuf.Message.Builder- Specified by:
clonein interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clonein classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
setField
public RateLimit.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
- Specified by:
setFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
clearField
public RateLimit.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
- Specified by:
clearFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
clearFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
clearOneof
public RateLimit.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
- Specified by:
clearOneofin interfacecom.google.protobuf.Message.Builder- Overrides:
clearOneofin classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
setRepeatedField
public RateLimit.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
- Specified by:
setRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
addRepeatedField
public RateLimit.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
- Specified by:
addRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
addRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
mergeFrom
public RateLimit.Builder mergeFrom(com.google.protobuf.Message other)
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<RateLimit.Builder>
-
mergeFrom
public RateLimit.Builder mergeFrom(RateLimit other)
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
mergeFrom
public RateLimit.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<RateLimit.Builder>- Throws:
IOException
-
getDomain
public String getDomain()
The rate limit domain to use when calling the rate limit service.
string domain = 1 [(.validate.rules) = { ... }- Specified by:
getDomainin interfaceRateLimitOrBuilder- Returns:
- The domain.
-
getDomainBytes
public com.google.protobuf.ByteString getDomainBytes()
The rate limit domain to use when calling the rate limit service.
string domain = 1 [(.validate.rules) = { ... }- Specified by:
getDomainBytesin interfaceRateLimitOrBuilder- Returns:
- The bytes for domain.
-
setDomain
public RateLimit.Builder setDomain(String value)
The rate limit domain to use when calling the rate limit service.
string domain = 1 [(.validate.rules) = { ... }- Parameters:
value- The domain to set.- Returns:
- This builder for chaining.
-
clearDomain
public RateLimit.Builder clearDomain()
The rate limit domain to use when calling the rate limit service.
string domain = 1 [(.validate.rules) = { ... }- Returns:
- This builder for chaining.
-
setDomainBytes
public RateLimit.Builder setDomainBytes(com.google.protobuf.ByteString value)
The rate limit domain to use when calling the rate limit service.
string domain = 1 [(.validate.rules) = { ... }- Parameters:
value- The bytes for domain to set.- Returns:
- This builder for chaining.
-
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 = 2 [(.validate.rules) = { ... }- Specified by:
getStagein interfaceRateLimitOrBuilder- Returns:
- The stage.
-
setStage
public RateLimit.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 = 2 [(.validate.rules) = { ... }- Parameters:
value- The stage to set.- Returns:
- This builder for chaining.
-
clearStage
public RateLimit.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 = 2 [(.validate.rules) = { ... }- Returns:
- This builder for chaining.
-
getRequestType
public String getRequestType()
The type of requests the filter should apply to. The supported types are ``internal``, ``external`` or ``both``. A request is considered internal if :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is set to true. If :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is not set or false, a request is considered external. The filter defaults to ``both``, and it will apply to all request types.
string request_type = 3 [(.validate.rules) = { ... }- Specified by:
getRequestTypein interfaceRateLimitOrBuilder- Returns:
- The requestType.
-
getRequestTypeBytes
public com.google.protobuf.ByteString getRequestTypeBytes()
The type of requests the filter should apply to. The supported types are ``internal``, ``external`` or ``both``. A request is considered internal if :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is set to true. If :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is not set or false, a request is considered external. The filter defaults to ``both``, and it will apply to all request types.
string request_type = 3 [(.validate.rules) = { ... }- Specified by:
getRequestTypeBytesin interfaceRateLimitOrBuilder- Returns:
- The bytes for requestType.
-
setRequestType
public RateLimit.Builder setRequestType(String value)
The type of requests the filter should apply to. The supported types are ``internal``, ``external`` or ``both``. A request is considered internal if :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is set to true. If :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is not set or false, a request is considered external. The filter defaults to ``both``, and it will apply to all request types.
string request_type = 3 [(.validate.rules) = { ... }- Parameters:
value- The requestType to set.- Returns:
- This builder for chaining.
-
clearRequestType
public RateLimit.Builder clearRequestType()
The type of requests the filter should apply to. The supported types are ``internal``, ``external`` or ``both``. A request is considered internal if :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is set to true. If :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is not set or false, a request is considered external. The filter defaults to ``both``, and it will apply to all request types.
string request_type = 3 [(.validate.rules) = { ... }- Returns:
- This builder for chaining.
-
setRequestTypeBytes
public RateLimit.Builder setRequestTypeBytes(com.google.protobuf.ByteString value)
The type of requests the filter should apply to. The supported types are ``internal``, ``external`` or ``both``. A request is considered internal if :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is set to true. If :ref:`x-envoy-internal<config_http_conn_man_headers_x-envoy-internal>` is not set or false, a request is considered external. The filter defaults to ``both``, and it will apply to all request types.
string request_type = 3 [(.validate.rules) = { ... }- Parameters:
value- The bytes for requestType to set.- Returns:
- This builder for chaining.
-
hasTimeout
public boolean hasTimeout()
The timeout in milliseconds for the rate limit service RPC. If not set, this defaults to 20ms.
.google.protobuf.Duration timeout = 4;- Specified by:
hasTimeoutin interfaceRateLimitOrBuilder- Returns:
- Whether the timeout field is set.
-
getTimeout
public com.google.protobuf.Duration getTimeout()
The timeout in milliseconds for the rate limit service RPC. If not set, this defaults to 20ms.
.google.protobuf.Duration timeout = 4;- Specified by:
getTimeoutin interfaceRateLimitOrBuilder- Returns:
- The timeout.
-
setTimeout
public RateLimit.Builder setTimeout(com.google.protobuf.Duration value)
The timeout in milliseconds for the rate limit service RPC. If not set, this defaults to 20ms.
.google.protobuf.Duration timeout = 4;
-
setTimeout
public RateLimit.Builder setTimeout(com.google.protobuf.Duration.Builder builderForValue)
The timeout in milliseconds for the rate limit service RPC. If not set, this defaults to 20ms.
.google.protobuf.Duration timeout = 4;
-
mergeTimeout
public RateLimit.Builder mergeTimeout(com.google.protobuf.Duration value)
The timeout in milliseconds for the rate limit service RPC. If not set, this defaults to 20ms.
.google.protobuf.Duration timeout = 4;
-
clearTimeout
public RateLimit.Builder clearTimeout()
The timeout in milliseconds for the rate limit service RPC. If not set, this defaults to 20ms.
.google.protobuf.Duration timeout = 4;
-
getTimeoutBuilder
public com.google.protobuf.Duration.Builder getTimeoutBuilder()
The timeout in milliseconds for the rate limit service RPC. If not set, this defaults to 20ms.
.google.protobuf.Duration timeout = 4;
-
getTimeoutOrBuilder
public com.google.protobuf.DurationOrBuilder getTimeoutOrBuilder()
The timeout in milliseconds for the rate limit service RPC. If not set, this defaults to 20ms.
.google.protobuf.Duration timeout = 4;- Specified by:
getTimeoutOrBuilderin interfaceRateLimitOrBuilder
-
getFailureModeDeny
public boolean getFailureModeDeny()
The filter's behaviour in case the rate limiting service does not respond back. When it is set to true, Envoy will not allow traffic in case of communication failure between rate limiting service and the proxy.
bool failure_mode_deny = 5;- Specified by:
getFailureModeDenyin interfaceRateLimitOrBuilder- Returns:
- The failureModeDeny.
-
setFailureModeDeny
public RateLimit.Builder setFailureModeDeny(boolean value)
The filter's behaviour in case the rate limiting service does not respond back. When it is set to true, Envoy will not allow traffic in case of communication failure between rate limiting service and the proxy.
bool failure_mode_deny = 5;- Parameters:
value- The failureModeDeny to set.- Returns:
- This builder for chaining.
-
clearFailureModeDeny
public RateLimit.Builder clearFailureModeDeny()
The filter's behaviour in case the rate limiting service does not respond back. When it is set to true, Envoy will not allow traffic in case of communication failure between rate limiting service and the proxy.
bool failure_mode_deny = 5;- Returns:
- This builder for chaining.
-
getRateLimitedAsResourceExhausted
public boolean getRateLimitedAsResourceExhausted()
Specifies whether a ``RESOURCE_EXHAUSTED`` gRPC code must be returned instead of the default ``UNAVAILABLE`` gRPC code for a rate limited gRPC call. The HTTP code will be 200 for a gRPC response.
bool rate_limited_as_resource_exhausted = 6;- Specified by:
getRateLimitedAsResourceExhaustedin interfaceRateLimitOrBuilder- Returns:
- The rateLimitedAsResourceExhausted.
-
setRateLimitedAsResourceExhausted
public RateLimit.Builder setRateLimitedAsResourceExhausted(boolean value)
Specifies whether a ``RESOURCE_EXHAUSTED`` gRPC code must be returned instead of the default ``UNAVAILABLE`` gRPC code for a rate limited gRPC call. The HTTP code will be 200 for a gRPC response.
bool rate_limited_as_resource_exhausted = 6;- Parameters:
value- The rateLimitedAsResourceExhausted to set.- Returns:
- This builder for chaining.
-
clearRateLimitedAsResourceExhausted
public RateLimit.Builder clearRateLimitedAsResourceExhausted()
Specifies whether a ``RESOURCE_EXHAUSTED`` gRPC code must be returned instead of the default ``UNAVAILABLE`` gRPC code for a rate limited gRPC call. The HTTP code will be 200 for a gRPC response.
bool rate_limited_as_resource_exhausted = 6;- Returns:
- This builder for chaining.
-
hasRateLimitService
public boolean hasRateLimitService()
Configuration for an external rate limit service provider. If not specified, any calls to the rate limit service will immediately return success.
.envoy.config.ratelimit.v3.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }- Specified by:
hasRateLimitServicein interfaceRateLimitOrBuilder- Returns:
- Whether the rateLimitService field is set.
-
getRateLimitService
public RateLimitServiceConfig getRateLimitService()
Configuration for an external rate limit service provider. If not specified, any calls to the rate limit service will immediately return success.
.envoy.config.ratelimit.v3.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }- Specified by:
getRateLimitServicein interfaceRateLimitOrBuilder- Returns:
- The rateLimitService.
-
setRateLimitService
public RateLimit.Builder setRateLimitService(RateLimitServiceConfig value)
Configuration for an external rate limit service provider. If not specified, any calls to the rate limit service will immediately return success.
.envoy.config.ratelimit.v3.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }
-
setRateLimitService
public RateLimit.Builder setRateLimitService(RateLimitServiceConfig.Builder builderForValue)
Configuration for an external rate limit service provider. If not specified, any calls to the rate limit service will immediately return success.
.envoy.config.ratelimit.v3.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }
-
mergeRateLimitService
public RateLimit.Builder mergeRateLimitService(RateLimitServiceConfig value)
Configuration for an external rate limit service provider. If not specified, any calls to the rate limit service will immediately return success.
.envoy.config.ratelimit.v3.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }
-
clearRateLimitService
public RateLimit.Builder clearRateLimitService()
Configuration for an external rate limit service provider. If not specified, any calls to the rate limit service will immediately return success.
.envoy.config.ratelimit.v3.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }
-
getRateLimitServiceBuilder
public RateLimitServiceConfig.Builder getRateLimitServiceBuilder()
Configuration for an external rate limit service provider. If not specified, any calls to the rate limit service will immediately return success.
.envoy.config.ratelimit.v3.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }
-
getRateLimitServiceOrBuilder
public RateLimitServiceConfigOrBuilder getRateLimitServiceOrBuilder()
Configuration for an external rate limit service provider. If not specified, any calls to the rate limit service will immediately return success.
.envoy.config.ratelimit.v3.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }- Specified by:
getRateLimitServiceOrBuilderin interfaceRateLimitOrBuilder
-
getEnableXRatelimitHeadersValue
public int getEnableXRatelimitHeadersValue()
Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy. The values are returned by the rate limiting service in :ref:`current_limit<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.current_limit>` field. Example: ``10, 10;w=1;name="per-ip", 1000;w=3600``. * ``X-RateLimit-Remaining`` - indicates the remaining requests in the current time-window. The values are returned by the rate limiting service in :ref:`limit_remaining<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.limit_remaining>` field. * ``X-RateLimit-Reset`` - indicates the number of seconds until reset of the current time-window. The values are returned by the rate limiting service in :ref:`duration_until_reset<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.duration_until_reset>` field. In case rate limiting policy specifies more then one time window, the values above represent the window that is closest to reaching its limit. For more information about the headers specification see selected version of the `draft RFC <https://tools.ietf.org/id/draft-polli-ratelimit-headers-03.html>`_. Disabled by default. [#next-major-version: unify with local ratelimit, should use common.ratelimit.v3.XRateLimitHeadersRFCVersion instead.]
.envoy.extensions.filters.http.ratelimit.v3.RateLimit.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 8 [(.validate.rules) = { ... }- Specified by:
getEnableXRatelimitHeadersValuein interfaceRateLimitOrBuilder- Returns:
- The enum numeric value on the wire for enableXRatelimitHeaders.
-
setEnableXRatelimitHeadersValue
public RateLimit.Builder setEnableXRatelimitHeadersValue(int value)
Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy. The values are returned by the rate limiting service in :ref:`current_limit<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.current_limit>` field. Example: ``10, 10;w=1;name="per-ip", 1000;w=3600``. * ``X-RateLimit-Remaining`` - indicates the remaining requests in the current time-window. The values are returned by the rate limiting service in :ref:`limit_remaining<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.limit_remaining>` field. * ``X-RateLimit-Reset`` - indicates the number of seconds until reset of the current time-window. The values are returned by the rate limiting service in :ref:`duration_until_reset<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.duration_until_reset>` field. In case rate limiting policy specifies more then one time window, the values above represent the window that is closest to reaching its limit. For more information about the headers specification see selected version of the `draft RFC <https://tools.ietf.org/id/draft-polli-ratelimit-headers-03.html>`_. Disabled by default. [#next-major-version: unify with local ratelimit, should use common.ratelimit.v3.XRateLimitHeadersRFCVersion instead.]
.envoy.extensions.filters.http.ratelimit.v3.RateLimit.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 8 [(.validate.rules) = { ... }- Parameters:
value- The enum numeric value on the wire for enableXRatelimitHeaders to set.- Returns:
- This builder for chaining.
-
getEnableXRatelimitHeaders
public RateLimit.XRateLimitHeadersRFCVersion getEnableXRatelimitHeaders()
Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy. The values are returned by the rate limiting service in :ref:`current_limit<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.current_limit>` field. Example: ``10, 10;w=1;name="per-ip", 1000;w=3600``. * ``X-RateLimit-Remaining`` - indicates the remaining requests in the current time-window. The values are returned by the rate limiting service in :ref:`limit_remaining<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.limit_remaining>` field. * ``X-RateLimit-Reset`` - indicates the number of seconds until reset of the current time-window. The values are returned by the rate limiting service in :ref:`duration_until_reset<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.duration_until_reset>` field. In case rate limiting policy specifies more then one time window, the values above represent the window that is closest to reaching its limit. For more information about the headers specification see selected version of the `draft RFC <https://tools.ietf.org/id/draft-polli-ratelimit-headers-03.html>`_. Disabled by default. [#next-major-version: unify with local ratelimit, should use common.ratelimit.v3.XRateLimitHeadersRFCVersion instead.]
.envoy.extensions.filters.http.ratelimit.v3.RateLimit.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 8 [(.validate.rules) = { ... }- Specified by:
getEnableXRatelimitHeadersin interfaceRateLimitOrBuilder- Returns:
- The enableXRatelimitHeaders.
-
setEnableXRatelimitHeaders
public RateLimit.Builder setEnableXRatelimitHeaders(RateLimit.XRateLimitHeadersRFCVersion value)
Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy. The values are returned by the rate limiting service in :ref:`current_limit<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.current_limit>` field. Example: ``10, 10;w=1;name="per-ip", 1000;w=3600``. * ``X-RateLimit-Remaining`` - indicates the remaining requests in the current time-window. The values are returned by the rate limiting service in :ref:`limit_remaining<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.limit_remaining>` field. * ``X-RateLimit-Reset`` - indicates the number of seconds until reset of the current time-window. The values are returned by the rate limiting service in :ref:`duration_until_reset<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.duration_until_reset>` field. In case rate limiting policy specifies more then one time window, the values above represent the window that is closest to reaching its limit. For more information about the headers specification see selected version of the `draft RFC <https://tools.ietf.org/id/draft-polli-ratelimit-headers-03.html>`_. Disabled by default. [#next-major-version: unify with local ratelimit, should use common.ratelimit.v3.XRateLimitHeadersRFCVersion instead.]
.envoy.extensions.filters.http.ratelimit.v3.RateLimit.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 8 [(.validate.rules) = { ... }- Parameters:
value- The enableXRatelimitHeaders to set.- Returns:
- This builder for chaining.
-
clearEnableXRatelimitHeaders
public RateLimit.Builder clearEnableXRatelimitHeaders()
Defines the standard version to use for X-RateLimit headers emitted by the filter: * ``X-RateLimit-Limit`` - indicates the request-quota associated to the client in the current time-window followed by the description of the quota policy. The values are returned by the rate limiting service in :ref:`current_limit<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.current_limit>` field. Example: ``10, 10;w=1;name="per-ip", 1000;w=3600``. * ``X-RateLimit-Remaining`` - indicates the remaining requests in the current time-window. The values are returned by the rate limiting service in :ref:`limit_remaining<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.limit_remaining>` field. * ``X-RateLimit-Reset`` - indicates the number of seconds until reset of the current time-window. The values are returned by the rate limiting service in :ref:`duration_until_reset<envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.DescriptorStatus.duration_until_reset>` field. In case rate limiting policy specifies more then one time window, the values above represent the window that is closest to reaching its limit. For more information about the headers specification see selected version of the `draft RFC <https://tools.ietf.org/id/draft-polli-ratelimit-headers-03.html>`_. Disabled by default. [#next-major-version: unify with local ratelimit, should use common.ratelimit.v3.XRateLimitHeadersRFCVersion instead.]
.envoy.extensions.filters.http.ratelimit.v3.RateLimit.XRateLimitHeadersRFCVersion enable_x_ratelimit_headers = 8 [(.validate.rules) = { ... }- Returns:
- This builder for chaining.
-
getDisableXEnvoyRatelimitedHeader
public boolean getDisableXEnvoyRatelimitedHeader()
Disables emitting the :ref:`x-envoy-ratelimited<config_http_filters_router_x-envoy-ratelimited>` header in case of rate limiting (i.e. 429 responses). Having this header not present potentially makes the request retriable.
bool disable_x_envoy_ratelimited_header = 9;- Specified by:
getDisableXEnvoyRatelimitedHeaderin interfaceRateLimitOrBuilder- Returns:
- The disableXEnvoyRatelimitedHeader.
-
setDisableXEnvoyRatelimitedHeader
public RateLimit.Builder setDisableXEnvoyRatelimitedHeader(boolean value)
Disables emitting the :ref:`x-envoy-ratelimited<config_http_filters_router_x-envoy-ratelimited>` header in case of rate limiting (i.e. 429 responses). Having this header not present potentially makes the request retriable.
bool disable_x_envoy_ratelimited_header = 9;- Parameters:
value- The disableXEnvoyRatelimitedHeader to set.- Returns:
- This builder for chaining.
-
clearDisableXEnvoyRatelimitedHeader
public RateLimit.Builder clearDisableXEnvoyRatelimitedHeader()
Disables emitting the :ref:`x-envoy-ratelimited<config_http_filters_router_x-envoy-ratelimited>` header in case of rate limiting (i.e. 429 responses). Having this header not present potentially makes the request retriable.
bool disable_x_envoy_ratelimited_header = 9;- Returns:
- This builder for chaining.
-
hasRateLimitedStatus
public boolean hasRateLimitedStatus()
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 rate_limited_status = 10;- Specified by:
hasRateLimitedStatusin interfaceRateLimitOrBuilder- Returns:
- Whether the rateLimitedStatus field is set.
-
getRateLimitedStatus
public HttpStatus getRateLimitedStatus()
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 rate_limited_status = 10;- Specified by:
getRateLimitedStatusin interfaceRateLimitOrBuilder- Returns:
- The rateLimitedStatus.
-
setRateLimitedStatus
public RateLimit.Builder setRateLimitedStatus(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 rate_limited_status = 10;
-
setRateLimitedStatus
public RateLimit.Builder setRateLimitedStatus(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 rate_limited_status = 10;
-
mergeRateLimitedStatus
public RateLimit.Builder mergeRateLimitedStatus(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 rate_limited_status = 10;
-
clearRateLimitedStatus
public RateLimit.Builder clearRateLimitedStatus()
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 rate_limited_status = 10;
-
getRateLimitedStatusBuilder
public HttpStatus.Builder getRateLimitedStatusBuilder()
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 rate_limited_status = 10;
-
getRateLimitedStatusOrBuilder
public HttpStatusOrBuilder getRateLimitedStatusOrBuilder()
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 rate_limited_status = 10;- Specified by:
getRateLimitedStatusOrBuilderin interfaceRateLimitOrBuilder
-
setUnknownFields
public final RateLimit.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
setUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
setUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
mergeUnknownFields
public final RateLimit.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
- Specified by:
mergeUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Builder>
-
-