Interface RateLimitOrBuilder
- All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder
- All Known Implementing Classes:
RateLimit,RateLimit.Builder
public interface RateLimitOrBuilder
extends com.google.protobuf.MessageOrBuilder
-
Method Summary
Modifier and TypeMethodDescriptiongetActions(int index) A list of actions that are to be applied for this rate limit configuration.intA list of actions that are to be applied for this rate limit configuration.A list of actions that are to be applied for this rate limit configuration.getActionsOrBuilder(int index) A list of actions that are to be applied for this rate limit configuration.List<? extends RateLimit.ActionOrBuilder>A list of actions that are to be applied for this rate limit configuration.booleanIf true, the rate limit request will be applied when the stream completes.The key to be set in runtime to disable this rate limit configuration. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.com.google.protobuf.ByteStringThe key to be set in runtime to disable this rate limit configuration. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.An optional hits addend to be appended to the descriptor produced by this rate limit configuration. .. note:: This is only supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.An optional hits addend to be appended to the descriptor produced by this rate limit configuration. .. note:: This is only supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.getLimit()An optional limit override to be appended to the descriptor produced by this rate limit configuration.An optional limit override to be appended to the descriptor produced by this rate limit configuration.com.google.protobuf.UInt32ValuegetStage()Refers to the stage set in the filter.com.google.protobuf.UInt32ValueOrBuilderRefers to the stage set in the filter.booleanAn optional hits addend to be appended to the descriptor produced by this rate limit configuration. .. note:: This is only supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.booleanhasLimit()An optional limit override to be appended to the descriptor produced by this rate limit configuration.booleanhasStage()Refers to the stage set in the filter.Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder
isInitializedMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Method Details
-
hasStage
boolean hasStage()Refers to the stage set in the filter. The rate limit configuration only applies to filters with the same stage number. The default stage number is 0. .. note:: The filter supports a range of 0 - 10 inclusively for stage numbers. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
.google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }- Returns:
- Whether the stage field is set.
-
getStage
com.google.protobuf.UInt32Value getStage()Refers to the stage set in the filter. The rate limit configuration only applies to filters with the same stage number. The default stage number is 0. .. note:: The filter supports a range of 0 - 10 inclusively for stage numbers. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
.google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }- Returns:
- The stage.
-
getStageOrBuilder
com.google.protobuf.UInt32ValueOrBuilder getStageOrBuilder()Refers to the stage set in the filter. The rate limit configuration only applies to filters with the same stage number. The default stage number is 0. .. note:: The filter supports a range of 0 - 10 inclusively for stage numbers. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
.google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... } -
getDisableKey
String getDisableKey()The key to be set in runtime to disable this rate limit configuration. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
string disable_key = 2;- Returns:
- The disableKey.
-
getDisableKeyBytes
com.google.protobuf.ByteString getDisableKeyBytes()The key to be set in runtime to disable this rate limit configuration. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
string disable_key = 2;- Returns:
- The bytes for disableKey.
-
getActionsList
List<RateLimit.Action> getActionsList()A list of actions that are to be applied for this rate limit configuration. Order matters as the actions are processed sequentially and the descriptor is composed by appending descriptor entries in that sequence. If an action cannot append a descriptor entry, no descriptor is generated for the configuration. See :ref:`composing actions <config_http_filters_rate_limit_composing_actions>` for additional documentation.
repeated .envoy.config.route.v3.RateLimit.Action actions = 3 [(.validate.rules) = { ... } -
getActions
A list of actions that are to be applied for this rate limit configuration. Order matters as the actions are processed sequentially and the descriptor is composed by appending descriptor entries in that sequence. If an action cannot append a descriptor entry, no descriptor is generated for the configuration. See :ref:`composing actions <config_http_filters_rate_limit_composing_actions>` for additional documentation.
repeated .envoy.config.route.v3.RateLimit.Action actions = 3 [(.validate.rules) = { ... } -
getActionsCount
int getActionsCount()A list of actions that are to be applied for this rate limit configuration. Order matters as the actions are processed sequentially and the descriptor is composed by appending descriptor entries in that sequence. If an action cannot append a descriptor entry, no descriptor is generated for the configuration. See :ref:`composing actions <config_http_filters_rate_limit_composing_actions>` for additional documentation.
repeated .envoy.config.route.v3.RateLimit.Action actions = 3 [(.validate.rules) = { ... } -
getActionsOrBuilderList
List<? extends RateLimit.ActionOrBuilder> getActionsOrBuilderList()A list of actions that are to be applied for this rate limit configuration. Order matters as the actions are processed sequentially and the descriptor is composed by appending descriptor entries in that sequence. If an action cannot append a descriptor entry, no descriptor is generated for the configuration. See :ref:`composing actions <config_http_filters_rate_limit_composing_actions>` for additional documentation.
repeated .envoy.config.route.v3.RateLimit.Action actions = 3 [(.validate.rules) = { ... } -
getActionsOrBuilder
A list of actions that are to be applied for this rate limit configuration. Order matters as the actions are processed sequentially and the descriptor is composed by appending descriptor entries in that sequence. If an action cannot append a descriptor entry, no descriptor is generated for the configuration. See :ref:`composing actions <config_http_filters_rate_limit_composing_actions>` for additional documentation.
repeated .envoy.config.route.v3.RateLimit.Action actions = 3 [(.validate.rules) = { ... } -
hasLimit
boolean hasLimit()An optional limit override to be appended to the descriptor produced by this rate limit configuration. If the override value is invalid or cannot be resolved from metadata, no override is provided. See :ref:`rate limit override <config_http_filters_rate_limit_rate_limit_override>` for more information. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
.envoy.config.route.v3.RateLimit.Override limit = 4;- Returns:
- Whether the limit field is set.
-
getLimit
RateLimit.Override getLimit()An optional limit override to be appended to the descriptor produced by this rate limit configuration. If the override value is invalid or cannot be resolved from metadata, no override is provided. See :ref:`rate limit override <config_http_filters_rate_limit_rate_limit_override>` for more information. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
.envoy.config.route.v3.RateLimit.Override limit = 4;- Returns:
- The limit.
-
getLimitOrBuilder
RateLimit.OverrideOrBuilder getLimitOrBuilder()An optional limit override to be appended to the descriptor produced by this rate limit configuration. If the override value is invalid or cannot be resolved from metadata, no override is provided. See :ref:`rate limit override <config_http_filters_rate_limit_rate_limit_override>` for more information. .. note:: This is not supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
.envoy.config.route.v3.RateLimit.Override limit = 4; -
hasHitsAddend
boolean hasHitsAddend()An optional hits addend to be appended to the descriptor produced by this rate limit configuration. .. note:: This is only supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
.envoy.config.route.v3.RateLimit.HitsAddend hits_addend = 5;- Returns:
- Whether the hitsAddend field is set.
-
getHitsAddend
RateLimit.HitsAddend getHitsAddend()An optional hits addend to be appended to the descriptor produced by this rate limit configuration. .. note:: This is only supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
.envoy.config.route.v3.RateLimit.HitsAddend hits_addend = 5;- Returns:
- The hitsAddend.
-
getHitsAddendOrBuilder
RateLimit.HitsAddendOrBuilder getHitsAddendOrBuilder()An optional hits addend to be appended to the descriptor produced by this rate limit configuration. .. note:: This is only supported if the rate limit action is configured in the ``typed_per_filter_config`` like :ref:`VirtualHost.typed_per_filter_config<envoy_v3_api_field_config.route.v3.VirtualHost.typed_per_filter_config>` or :ref:`Route.typed_per_filter_config<envoy_v3_api_field_config.route.v3.Route.typed_per_filter_config>`, etc.
.envoy.config.route.v3.RateLimit.HitsAddend hits_addend = 5; -
getApplyOnStreamDone
boolean getApplyOnStreamDone()If true, the rate limit request will be applied when the stream completes. The default value is false. This is useful when the rate limit budget needs to reflect the response context that is not available on the request path. For example, let's say the upstream service calculates the usage statistics and returns them in the response body and we want to utilize these numbers to apply the rate limit action for the subsequent requests. Combined with another filter that can set the desired addend based on the response (e.g. Lua filter), this can be used to subtract the usage statistics from the rate limit budget. A rate limit applied on the stream completion is "fire-and-forget" by nature, and rate limit is not enforced by this config. In other words, the current request won't be blocked when this is true, but the budget will be updated for the subsequent requests based on the action with this field set to true. Users should ensure that the rate limit is enforced by the actions applied on the request path, i.e. the ones with this field set to false. Currently, this is only supported by the HTTP global rate filter.
bool apply_on_stream_done = 6;- Returns:
- The applyOnStreamDone.
-