Class RateLimit.Action.GenericKey.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Action.GenericKey.Builder>
io.envoyproxy.envoy.config.route.v3.RateLimit.Action.GenericKey.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, RateLimit.Action.GenericKeyOrBuilder, Cloneable
Enclosing class:
RateLimit.Action.GenericKey

public static final class RateLimit.Action.GenericKey.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<RateLimit.Action.GenericKey.Builder> implements RateLimit.Action.GenericKeyOrBuilder
 The following descriptor entry is appended to the descriptor:

 .. code-block:: cpp

   ("generic_key", "<descriptor_value>")
 
Protobuf type envoy.config.route.v3.RateLimit.Action.GenericKey
  • Method Details

    • 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<RateLimit.Action.GenericKey.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<RateLimit.Action.GenericKey.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<RateLimit.Action.GenericKey.Builder>
    • getDefaultInstanceForType

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

      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public RateLimit.Action.GenericKey buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.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<RateLimit.Action.GenericKey.Builder>
    • setField

      public RateLimit.Action.GenericKey.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<RateLimit.Action.GenericKey.Builder>
    • clearField

      public RateLimit.Action.GenericKey.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<RateLimit.Action.GenericKey.Builder>
    • clearOneof

      public RateLimit.Action.GenericKey.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<RateLimit.Action.GenericKey.Builder>
    • setRepeatedField

      public RateLimit.Action.GenericKey.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<RateLimit.Action.GenericKey.Builder>
    • addRepeatedField

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

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

    • isInitialized

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

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

      public String getDescriptorValue()
       Descriptor value of entry.
      
       The same :ref:`format specifier <config_access_log_format>` as used for
       :ref:`HTTP access logging <config_access_log>` applies here, however
       unknown specifier values are replaced with the empty string instead of ``-``.
      
       .. note::
      
         Formatter parsing is controlled by the runtime feature flag
         ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value``
         (disabled by default).
      
         When enabled: The format string can contain multiple valid substitution
         fields. If multiple substitution fields are present, their results will be concatenated
         to form the final descriptor value. If it contains no substitution fields, the value
         will be used as is. If the final concatenated result is empty and ``default_value`` is set,
         the ``default_value`` will be used. If ``default_value`` is not set and the result is
         empty, this descriptor will be skipped and not included in the rate limit call.
      
         When disabled (default): The descriptor_value is used as a literal string without any formatter
         parsing or substitution.
      
       For example, ``static_value`` will be used as is since there are no substitution fields.
       ``%REQ(:method)%`` will be replaced with the HTTP method, and
       ``%REQ(:method)%%REQ(:path)%`` will be replaced with the concatenation of the HTTP method and path.
       ``%CEL(request.headers['user-id'])%`` will use CEL to extract the user ID from request headers.
       
      string descriptor_value = 1 [(.validate.rules) = { ... }
      Specified by:
      getDescriptorValue in interface RateLimit.Action.GenericKeyOrBuilder
      Returns:
      The descriptorValue.
    • getDescriptorValueBytes

      public com.google.protobuf.ByteString getDescriptorValueBytes()
       Descriptor value of entry.
      
       The same :ref:`format specifier <config_access_log_format>` as used for
       :ref:`HTTP access logging <config_access_log>` applies here, however
       unknown specifier values are replaced with the empty string instead of ``-``.
      
       .. note::
      
         Formatter parsing is controlled by the runtime feature flag
         ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value``
         (disabled by default).
      
         When enabled: The format string can contain multiple valid substitution
         fields. If multiple substitution fields are present, their results will be concatenated
         to form the final descriptor value. If it contains no substitution fields, the value
         will be used as is. If the final concatenated result is empty and ``default_value`` is set,
         the ``default_value`` will be used. If ``default_value`` is not set and the result is
         empty, this descriptor will be skipped and not included in the rate limit call.
      
         When disabled (default): The descriptor_value is used as a literal string without any formatter
         parsing or substitution.
      
       For example, ``static_value`` will be used as is since there are no substitution fields.
       ``%REQ(:method)%`` will be replaced with the HTTP method, and
       ``%REQ(:method)%%REQ(:path)%`` will be replaced with the concatenation of the HTTP method and path.
       ``%CEL(request.headers['user-id'])%`` will use CEL to extract the user ID from request headers.
       
      string descriptor_value = 1 [(.validate.rules) = { ... }
      Specified by:
      getDescriptorValueBytes in interface RateLimit.Action.GenericKeyOrBuilder
      Returns:
      The bytes for descriptorValue.
    • setDescriptorValue

      public RateLimit.Action.GenericKey.Builder setDescriptorValue(String value)
       Descriptor value of entry.
      
       The same :ref:`format specifier <config_access_log_format>` as used for
       :ref:`HTTP access logging <config_access_log>` applies here, however
       unknown specifier values are replaced with the empty string instead of ``-``.
      
       .. note::
      
         Formatter parsing is controlled by the runtime feature flag
         ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value``
         (disabled by default).
      
         When enabled: The format string can contain multiple valid substitution
         fields. If multiple substitution fields are present, their results will be concatenated
         to form the final descriptor value. If it contains no substitution fields, the value
         will be used as is. If the final concatenated result is empty and ``default_value`` is set,
         the ``default_value`` will be used. If ``default_value`` is not set and the result is
         empty, this descriptor will be skipped and not included in the rate limit call.
      
         When disabled (default): The descriptor_value is used as a literal string without any formatter
         parsing or substitution.
      
       For example, ``static_value`` will be used as is since there are no substitution fields.
       ``%REQ(:method)%`` will be replaced with the HTTP method, and
       ``%REQ(:method)%%REQ(:path)%`` will be replaced with the concatenation of the HTTP method and path.
       ``%CEL(request.headers['user-id'])%`` will use CEL to extract the user ID from request headers.
       
      string descriptor_value = 1 [(.validate.rules) = { ... }
      Parameters:
      value - The descriptorValue to set.
      Returns:
      This builder for chaining.
    • clearDescriptorValue

      public RateLimit.Action.GenericKey.Builder clearDescriptorValue()
       Descriptor value of entry.
      
       The same :ref:`format specifier <config_access_log_format>` as used for
       :ref:`HTTP access logging <config_access_log>` applies here, however
       unknown specifier values are replaced with the empty string instead of ``-``.
      
       .. note::
      
         Formatter parsing is controlled by the runtime feature flag
         ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value``
         (disabled by default).
      
         When enabled: The format string can contain multiple valid substitution
         fields. If multiple substitution fields are present, their results will be concatenated
         to form the final descriptor value. If it contains no substitution fields, the value
         will be used as is. If the final concatenated result is empty and ``default_value`` is set,
         the ``default_value`` will be used. If ``default_value`` is not set and the result is
         empty, this descriptor will be skipped and not included in the rate limit call.
      
         When disabled (default): The descriptor_value is used as a literal string without any formatter
         parsing or substitution.
      
       For example, ``static_value`` will be used as is since there are no substitution fields.
       ``%REQ(:method)%`` will be replaced with the HTTP method, and
       ``%REQ(:method)%%REQ(:path)%`` will be replaced with the concatenation of the HTTP method and path.
       ``%CEL(request.headers['user-id'])%`` will use CEL to extract the user ID from request headers.
       
      string descriptor_value = 1 [(.validate.rules) = { ... }
      Returns:
      This builder for chaining.
    • setDescriptorValueBytes

      public RateLimit.Action.GenericKey.Builder setDescriptorValueBytes(com.google.protobuf.ByteString value)
       Descriptor value of entry.
      
       The same :ref:`format specifier <config_access_log_format>` as used for
       :ref:`HTTP access logging <config_access_log>` applies here, however
       unknown specifier values are replaced with the empty string instead of ``-``.
      
       .. note::
      
         Formatter parsing is controlled by the runtime feature flag
         ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value``
         (disabled by default).
      
         When enabled: The format string can contain multiple valid substitution
         fields. If multiple substitution fields are present, their results will be concatenated
         to form the final descriptor value. If it contains no substitution fields, the value
         will be used as is. If the final concatenated result is empty and ``default_value`` is set,
         the ``default_value`` will be used. If ``default_value`` is not set and the result is
         empty, this descriptor will be skipped and not included in the rate limit call.
      
         When disabled (default): The descriptor_value is used as a literal string without any formatter
         parsing or substitution.
      
       For example, ``static_value`` will be used as is since there are no substitution fields.
       ``%REQ(:method)%`` will be replaced with the HTTP method, and
       ``%REQ(:method)%%REQ(:path)%`` will be replaced with the concatenation of the HTTP method and path.
       ``%CEL(request.headers['user-id'])%`` will use CEL to extract the user ID from request headers.
       
      string descriptor_value = 1 [(.validate.rules) = { ... }
      Parameters:
      value - The bytes for descriptorValue to set.
      Returns:
      This builder for chaining.
    • getDefaultValue

      public String getDefaultValue()
       An optional value to use if the final concatenated ``descriptor_value`` result is empty.
       Only applicable when formatter parsing is enabled by the runtime feature flag
       ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value`` (disabled by default).
       
      string default_value = 3;
      Specified by:
      getDefaultValue in interface RateLimit.Action.GenericKeyOrBuilder
      Returns:
      The defaultValue.
    • getDefaultValueBytes

      public com.google.protobuf.ByteString getDefaultValueBytes()
       An optional value to use if the final concatenated ``descriptor_value`` result is empty.
       Only applicable when formatter parsing is enabled by the runtime feature flag
       ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value`` (disabled by default).
       
      string default_value = 3;
      Specified by:
      getDefaultValueBytes in interface RateLimit.Action.GenericKeyOrBuilder
      Returns:
      The bytes for defaultValue.
    • setDefaultValue

      public RateLimit.Action.GenericKey.Builder setDefaultValue(String value)
       An optional value to use if the final concatenated ``descriptor_value`` result is empty.
       Only applicable when formatter parsing is enabled by the runtime feature flag
       ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value`` (disabled by default).
       
      string default_value = 3;
      Parameters:
      value - The defaultValue to set.
      Returns:
      This builder for chaining.
    • clearDefaultValue

      public RateLimit.Action.GenericKey.Builder clearDefaultValue()
       An optional value to use if the final concatenated ``descriptor_value`` result is empty.
       Only applicable when formatter parsing is enabled by the runtime feature flag
       ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value`` (disabled by default).
       
      string default_value = 3;
      Returns:
      This builder for chaining.
    • setDefaultValueBytes

      public RateLimit.Action.GenericKey.Builder setDefaultValueBytes(com.google.protobuf.ByteString value)
       An optional value to use if the final concatenated ``descriptor_value`` result is empty.
       Only applicable when formatter parsing is enabled by the runtime feature flag
       ``envoy.reloadable_features.enable_formatter_for_ratelimit_action_descriptor_value`` (disabled by default).
       
      string default_value = 3;
      Parameters:
      value - The bytes for defaultValue to set.
      Returns:
      This builder for chaining.
    • getDescriptorKey

      public String getDescriptorKey()
       An optional key to use in the descriptor entry. If not set it defaults
       to 'generic_key' as the descriptor key.
       
      string descriptor_key = 2;
      Specified by:
      getDescriptorKey in interface RateLimit.Action.GenericKeyOrBuilder
      Returns:
      The descriptorKey.
    • getDescriptorKeyBytes

      public com.google.protobuf.ByteString getDescriptorKeyBytes()
       An optional key to use in the descriptor entry. If not set it defaults
       to 'generic_key' as the descriptor key.
       
      string descriptor_key = 2;
      Specified by:
      getDescriptorKeyBytes in interface RateLimit.Action.GenericKeyOrBuilder
      Returns:
      The bytes for descriptorKey.
    • setDescriptorKey

      public RateLimit.Action.GenericKey.Builder setDescriptorKey(String value)
       An optional key to use in the descriptor entry. If not set it defaults
       to 'generic_key' as the descriptor key.
       
      string descriptor_key = 2;
      Parameters:
      value - The descriptorKey to set.
      Returns:
      This builder for chaining.
    • clearDescriptorKey

      public RateLimit.Action.GenericKey.Builder clearDescriptorKey()
       An optional key to use in the descriptor entry. If not set it defaults
       to 'generic_key' as the descriptor key.
       
      string descriptor_key = 2;
      Returns:
      This builder for chaining.
    • setDescriptorKeyBytes

      public RateLimit.Action.GenericKey.Builder setDescriptorKeyBytes(com.google.protobuf.ByteString value)
       An optional key to use in the descriptor entry. If not set it defaults
       to 'generic_key' as the descriptor key.
       
      string descriptor_key = 2;
      Parameters:
      value - The bytes for descriptorKey to set.
      Returns:
      This builder for chaining.
    • setUnknownFields

      public final RateLimit.Action.GenericKey.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<RateLimit.Action.GenericKey.Builder>
    • mergeUnknownFields

      public final RateLimit.Action.GenericKey.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<RateLimit.Action.GenericKey.Builder>