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 Type
    Method
    Description
    The rate limit domain to use when calling the rate limit service.
    com.google.protobuf.ByteString
    The rate limit domain to use when calling the rate limit service.
    boolean
    The filter's behaviour in case the rate limiting service does not respond back.
    boolean
    Specifies whether a `RESOURCE_EXHAUSTED` gRPC code must be returned instead of the default `UNAVAILABLE` gRPC code for a rate limited gRPC call.
    Configuration for an external rate limit service provider.
    Configuration for an external rate limit service provider.
    The type of requests the filter should apply to.
    com.google.protobuf.ByteString
    The type of requests the filter should apply to.
    int
    Specifies the rate limit configurations to be applied with the same stage number.
    com.google.protobuf.Duration
    The timeout in milliseconds for the rate limit service RPC.
    com.google.protobuf.DurationOrBuilder
    The timeout in milliseconds for the rate limit service RPC.
    boolean
    Configuration for an external rate limit service provider.
    boolean
    The timeout in milliseconds for the rate limit service RPC.

    Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

    isInitialized

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • Method Details

    • getDomain

      String getDomain()
       The rate limit domain to use when calling the rate limit service.
       
      string domain = 1 [(.validate.rules) = { ... }
      Returns:
      The domain.
    • getDomainBytes

      com.google.protobuf.ByteString getDomainBytes()
       The rate limit domain to use when calling the rate limit service.
       
      string domain = 1 [(.validate.rules) = { ... }
      Returns:
      The bytes for domain.
    • getStage

      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) = { ... }
      Returns:
      The stage.
    • getRequestType

      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) = { ... }
      Returns:
      The requestType.
    • getRequestTypeBytes

      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) = { ... }
      Returns:
      The bytes for requestType.
    • hasTimeout

      boolean hasTimeout()
       The timeout in milliseconds for the rate limit service RPC. If not
       set, this defaults to 20ms.
       
      .google.protobuf.Duration timeout = 4;
      Returns:
      Whether the timeout field is set.
    • getTimeout

      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;
      Returns:
      The timeout.
    • getTimeoutOrBuilder

      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;
    • getFailureModeDeny

      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.
       Defaults to false.
       
      bool failure_mode_deny = 5;
      Returns:
      The failureModeDeny.
    • getRateLimitedAsResourceExhausted

      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;
      Returns:
      The rateLimitedAsResourceExhausted.
    • hasRateLimitService

      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.v2.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }
      Returns:
      Whether the rateLimitService field is set.
    • getRateLimitService

      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.v2.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }
      Returns:
      The rateLimitService.
    • getRateLimitServiceOrBuilder

      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.v2.RateLimitServiceConfig rate_limit_service = 7 [(.validate.rules) = { ... }