Class RateLimit.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<RateLimit.Builder>
com.google.protobuf.GeneratedMessage.Builder<RateLimit.Builder>
io.envoyproxy.envoy.config.route.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.GeneratedMessage.Builder<RateLimit.Builder> implements RateLimitOrBuilder
 Global rate limiting :ref:`architecture overview <arch_overview_global_rate_limit>`.
 Also applies to Local rate limiting :ref:`using descriptors <config_http_filters_local_rate_limit_descriptors>`.
 
Protobuf type envoy.config.route.v3.RateLimit
  • Field Details

  • Constructor Details

    • Builder

      private Builder()
    • Builder

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

    • getDescriptor

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

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

      private void maybeForceBuilderInitialization()
    • clear

      public RateLimit.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.GeneratedMessage.Builder<RateLimit.Builder>
    • getDescriptorForType

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

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

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

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

      private void buildPartialRepeatedFields(RateLimit result)
    • buildPartial0

      private void buildPartial0(RateLimit result)
    • mergeFrom

      public RateLimit.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<RateLimit.Builder>
    • mergeFrom

      public RateLimit.Builder mergeFrom(RateLimit other)
    • isInitialized

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

      public RateLimit.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<RateLimit.Builder>
      Throws:
      IOException
    • hasStage

      public 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.
       
      .google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }
      Specified by:
      hasStage in interface RateLimitOrBuilder
      Returns:
      Whether the stage field is set.
    • getStage

      public 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.
       
      .google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }
      Specified by:
      getStage in interface RateLimitOrBuilder
      Returns:
      The stage.
    • setStage

      public RateLimit.Builder setStage(com.google.protobuf.UInt32Value value)
       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.
       
      .google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }
    • setStage

      public RateLimit.Builder setStage(com.google.protobuf.UInt32Value.Builder builderForValue)
       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.
       
      .google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }
    • mergeStage

      public RateLimit.Builder mergeStage(com.google.protobuf.UInt32Value value)
       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.
       
      .google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }
    • clearStage

      public RateLimit.Builder clearStage()
       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.
       
      .google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }
    • getStageBuilder

      public com.google.protobuf.UInt32Value.Builder getStageBuilder()
       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.
       
      .google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }
    • getStageOrBuilder

      public 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.
       
      .google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }
      Specified by:
      getStageOrBuilder in interface RateLimitOrBuilder
    • getStageFieldBuilder

      private com.google.protobuf.SingleFieldBuilder<com.google.protobuf.UInt32Value,com.google.protobuf.UInt32Value.Builder,com.google.protobuf.UInt32ValueOrBuilder> getStageFieldBuilder()
       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.
       
      .google.protobuf.UInt32Value stage = 1 [(.validate.rules) = { ... }
    • getDisableKey

      public String getDisableKey()
       The key to be set in runtime to disable this rate limit configuration.
       
      string disable_key = 2;
      Specified by:
      getDisableKey in interface RateLimitOrBuilder
      Returns:
      The disableKey.
    • getDisableKeyBytes

      public com.google.protobuf.ByteString getDisableKeyBytes()
       The key to be set in runtime to disable this rate limit configuration.
       
      string disable_key = 2;
      Specified by:
      getDisableKeyBytes in interface RateLimitOrBuilder
      Returns:
      The bytes for disableKey.
    • setDisableKey

      public RateLimit.Builder setDisableKey(String value)
       The key to be set in runtime to disable this rate limit configuration.
       
      string disable_key = 2;
      Parameters:
      value - The disableKey to set.
      Returns:
      This builder for chaining.
    • clearDisableKey

      public RateLimit.Builder clearDisableKey()
       The key to be set in runtime to disable this rate limit configuration.
       
      string disable_key = 2;
      Returns:
      This builder for chaining.
    • setDisableKeyBytes

      public RateLimit.Builder setDisableKeyBytes(com.google.protobuf.ByteString value)
       The key to be set in runtime to disable this rate limit configuration.
       
      string disable_key = 2;
      Parameters:
      value - The bytes for disableKey to set.
      Returns:
      This builder for chaining.
    • ensureActionsIsMutable

      private void ensureActionsIsMutable()
    • getActionsList

      public 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) = { ... }
      Specified by:
      getActionsList in interface RateLimitOrBuilder
    • getActionsCount

      public 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) = { ... }
      Specified by:
      getActionsCount in interface RateLimitOrBuilder
    • getActions

      public RateLimit.Action getActions(int index)
       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) = { ... }
      Specified by:
      getActions in interface RateLimitOrBuilder
    • setActions

      public RateLimit.Builder setActions(int index, RateLimit.Action value)
       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) = { ... }
    • setActions

      public RateLimit.Builder setActions(int index, RateLimit.Action.Builder builderForValue)
       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) = { ... }
    • addActions

      public RateLimit.Builder addActions(RateLimit.Action value)
       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) = { ... }
    • addActions

      public RateLimit.Builder addActions(int index, RateLimit.Action value)
       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) = { ... }
    • addActions

      public RateLimit.Builder addActions(RateLimit.Action.Builder builderForValue)
       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) = { ... }
    • addActions

      public RateLimit.Builder addActions(int index, RateLimit.Action.Builder builderForValue)
       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) = { ... }
    • addAllActions

      public RateLimit.Builder addAllActions(Iterable<? extends RateLimit.Action> values)
       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) = { ... }
    • clearActions

      public RateLimit.Builder clearActions()
       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) = { ... }
    • removeActions

      public RateLimit.Builder removeActions(int index)
       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) = { ... }
    • getActionsBuilder

      public RateLimit.Action.Builder getActionsBuilder(int index)
       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

      public RateLimit.ActionOrBuilder getActionsOrBuilder(int index)
       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) = { ... }
      Specified by:
      getActionsOrBuilder in interface RateLimitOrBuilder
    • getActionsOrBuilderList

      public 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) = { ... }
      Specified by:
      getActionsOrBuilderList in interface RateLimitOrBuilder
    • addActionsBuilder

      public RateLimit.Action.Builder addActionsBuilder()
       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) = { ... }
    • addActionsBuilder

      public RateLimit.Action.Builder addActionsBuilder(int index)
       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) = { ... }
    • getActionsBuilderList

      public List<RateLimit.Action.Builder> getActionsBuilderList()
       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) = { ... }
    • getActionsFieldBuilder

      private com.google.protobuf.RepeatedFieldBuilder<RateLimit.Action,RateLimit.Action.Builder,RateLimit.ActionOrBuilder> getActionsFieldBuilder()
    • hasLimit

      public 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.
       
      .envoy.config.route.v3.RateLimit.Override limit = 4;
      Specified by:
      hasLimit in interface RateLimitOrBuilder
      Returns:
      Whether the limit field is set.
    • getLimit

      public 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.
       
      .envoy.config.route.v3.RateLimit.Override limit = 4;
      Specified by:
      getLimit in interface RateLimitOrBuilder
      Returns:
      The limit.
    • setLimit

      public RateLimit.Builder setLimit(RateLimit.Override value)
       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.
       
      .envoy.config.route.v3.RateLimit.Override limit = 4;
    • setLimit

      public RateLimit.Builder setLimit(RateLimit.Override.Builder builderForValue)
       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.
       
      .envoy.config.route.v3.RateLimit.Override limit = 4;
    • mergeLimit

      public RateLimit.Builder mergeLimit(RateLimit.Override value)
       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.
       
      .envoy.config.route.v3.RateLimit.Override limit = 4;
    • clearLimit

      public RateLimit.Builder clearLimit()
       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.
       
      .envoy.config.route.v3.RateLimit.Override limit = 4;
    • getLimitBuilder

      public RateLimit.Override.Builder getLimitBuilder()
       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.
       
      .envoy.config.route.v3.RateLimit.Override limit = 4;
    • getLimitOrBuilder

      public 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.
       
      .envoy.config.route.v3.RateLimit.Override limit = 4;
      Specified by:
      getLimitOrBuilder in interface RateLimitOrBuilder
    • getLimitFieldBuilder

      private com.google.protobuf.SingleFieldBuilder<RateLimit.Override,RateLimit.Override.Builder,RateLimit.OverrideOrBuilder> getLimitFieldBuilder()
       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.
       
      .envoy.config.route.v3.RateLimit.Override limit = 4;