Class RequirementRule.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<RequirementRule.Builder>
io.envoyproxy.envoy.extensions.filters.http.jwt_authn.v3.RequirementRule.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, RequirementRuleOrBuilder, Cloneable
Enclosing class:
RequirementRule

public static final class RequirementRule.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<RequirementRule.Builder> implements RequirementRuleOrBuilder
 This message specifies a Jwt requirement for a specific Route condition.
 Example 1:

 .. code-block:: yaml

    - match:
        prefix: /healthz

 In above example, "requires" field is empty for /healthz prefix match,
 it means that requests matching the path prefix don't require JWT authentication.

 Example 2:

 .. code-block:: yaml

    - match:
        prefix: /
      requires: { provider_name: provider-A }

 In above example, all requests matched the path prefix require jwt authentication
 from "provider-A".
 
Protobuf type envoy.extensions.filters.http.jwt_authn.v3.RequirementRule
  • 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<RequirementRule.Builder>
    • clear

      public RequirementRule.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<RequirementRule.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<RequirementRule.Builder>
    • getDefaultInstanceForType

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

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

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

      public RequirementRule.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<RequirementRule.Builder>
    • setField

      public RequirementRule.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<RequirementRule.Builder>
    • clearField

      public RequirementRule.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<RequirementRule.Builder>
    • clearOneof

      public RequirementRule.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<RequirementRule.Builder>
    • setRepeatedField

      public RequirementRule.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<RequirementRule.Builder>
    • addRepeatedField

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

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

      public RequirementRule.Builder mergeFrom(RequirementRule other)
    • isInitialized

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

      public RequirementRule.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<RequirementRule.Builder>
      Throws:
      IOException
    • getRequirementTypeCase

      public RequirementRule.RequirementTypeCase getRequirementTypeCase()
      Specified by:
      getRequirementTypeCase in interface RequirementRuleOrBuilder
    • clearRequirementType

      public RequirementRule.Builder clearRequirementType()
    • hasMatch

      public boolean hasMatch()
       The route matching parameter. Only when the match is satisfied, the "requires" field will
       apply.
      
       For example: following match will match all requests.
      
       .. code-block:: yaml
      
          match:
            prefix: /
       
      .envoy.config.route.v3.RouteMatch match = 1 [(.validate.rules) = { ... }
      Specified by:
      hasMatch in interface RequirementRuleOrBuilder
      Returns:
      Whether the match field is set.
    • getMatch

      public RouteMatch getMatch()
       The route matching parameter. Only when the match is satisfied, the "requires" field will
       apply.
      
       For example: following match will match all requests.
      
       .. code-block:: yaml
      
          match:
            prefix: /
       
      .envoy.config.route.v3.RouteMatch match = 1 [(.validate.rules) = { ... }
      Specified by:
      getMatch in interface RequirementRuleOrBuilder
      Returns:
      The match.
    • setMatch

      public RequirementRule.Builder setMatch(RouteMatch value)
       The route matching parameter. Only when the match is satisfied, the "requires" field will
       apply.
      
       For example: following match will match all requests.
      
       .. code-block:: yaml
      
          match:
            prefix: /
       
      .envoy.config.route.v3.RouteMatch match = 1 [(.validate.rules) = { ... }
    • setMatch

      public RequirementRule.Builder setMatch(RouteMatch.Builder builderForValue)
       The route matching parameter. Only when the match is satisfied, the "requires" field will
       apply.
      
       For example: following match will match all requests.
      
       .. code-block:: yaml
      
          match:
            prefix: /
       
      .envoy.config.route.v3.RouteMatch match = 1 [(.validate.rules) = { ... }
    • mergeMatch

      public RequirementRule.Builder mergeMatch(RouteMatch value)
       The route matching parameter. Only when the match is satisfied, the "requires" field will
       apply.
      
       For example: following match will match all requests.
      
       .. code-block:: yaml
      
          match:
            prefix: /
       
      .envoy.config.route.v3.RouteMatch match = 1 [(.validate.rules) = { ... }
    • clearMatch

      public RequirementRule.Builder clearMatch()
       The route matching parameter. Only when the match is satisfied, the "requires" field will
       apply.
      
       For example: following match will match all requests.
      
       .. code-block:: yaml
      
          match:
            prefix: /
       
      .envoy.config.route.v3.RouteMatch match = 1 [(.validate.rules) = { ... }
    • getMatchBuilder

      public RouteMatch.Builder getMatchBuilder()
       The route matching parameter. Only when the match is satisfied, the "requires" field will
       apply.
      
       For example: following match will match all requests.
      
       .. code-block:: yaml
      
          match:
            prefix: /
       
      .envoy.config.route.v3.RouteMatch match = 1 [(.validate.rules) = { ... }
    • getMatchOrBuilder

      public RouteMatchOrBuilder getMatchOrBuilder()
       The route matching parameter. Only when the match is satisfied, the "requires" field will
       apply.
      
       For example: following match will match all requests.
      
       .. code-block:: yaml
      
          match:
            prefix: /
       
      .envoy.config.route.v3.RouteMatch match = 1 [(.validate.rules) = { ... }
      Specified by:
      getMatchOrBuilder in interface RequirementRuleOrBuilder
    • hasRequires

      public boolean hasRequires()
       Specify a Jwt requirement. Please see detail comment in message JwtRequirement.
       
      .envoy.extensions.filters.http.jwt_authn.v3.JwtRequirement requires = 2;
      Specified by:
      hasRequires in interface RequirementRuleOrBuilder
      Returns:
      Whether the requires field is set.
    • getRequires

      public JwtRequirement getRequires()
       Specify a Jwt requirement. Please see detail comment in message JwtRequirement.
       
      .envoy.extensions.filters.http.jwt_authn.v3.JwtRequirement requires = 2;
      Specified by:
      getRequires in interface RequirementRuleOrBuilder
      Returns:
      The requires.
    • setRequires

      public RequirementRule.Builder setRequires(JwtRequirement value)
       Specify a Jwt requirement. Please see detail comment in message JwtRequirement.
       
      .envoy.extensions.filters.http.jwt_authn.v3.JwtRequirement requires = 2;
    • setRequires

      public RequirementRule.Builder setRequires(JwtRequirement.Builder builderForValue)
       Specify a Jwt requirement. Please see detail comment in message JwtRequirement.
       
      .envoy.extensions.filters.http.jwt_authn.v3.JwtRequirement requires = 2;
    • mergeRequires

      public RequirementRule.Builder mergeRequires(JwtRequirement value)
       Specify a Jwt requirement. Please see detail comment in message JwtRequirement.
       
      .envoy.extensions.filters.http.jwt_authn.v3.JwtRequirement requires = 2;
    • clearRequires

      public RequirementRule.Builder clearRequires()
       Specify a Jwt requirement. Please see detail comment in message JwtRequirement.
       
      .envoy.extensions.filters.http.jwt_authn.v3.JwtRequirement requires = 2;
    • getRequiresBuilder

      public JwtRequirement.Builder getRequiresBuilder()
       Specify a Jwt requirement. Please see detail comment in message JwtRequirement.
       
      .envoy.extensions.filters.http.jwt_authn.v3.JwtRequirement requires = 2;
    • getRequiresOrBuilder

      public JwtRequirementOrBuilder getRequiresOrBuilder()
       Specify a Jwt requirement. Please see detail comment in message JwtRequirement.
       
      .envoy.extensions.filters.http.jwt_authn.v3.JwtRequirement requires = 2;
      Specified by:
      getRequiresOrBuilder in interface RequirementRuleOrBuilder
    • hasRequirementName

      public boolean hasRequirementName()
       Use requirement_name to specify a Jwt requirement.
       This requirement_name MUST be specified at the
       :ref:`requirement_map <envoy_v3_api_field_extensions.filters.http.jwt_authn.v3.JwtAuthentication.requirement_map>`
       in ``JwtAuthentication``.
       
      string requirement_name = 3 [(.validate.rules) = { ... }
      Specified by:
      hasRequirementName in interface RequirementRuleOrBuilder
      Returns:
      Whether the requirementName field is set.
    • getRequirementName

      public String getRequirementName()
       Use requirement_name to specify a Jwt requirement.
       This requirement_name MUST be specified at the
       :ref:`requirement_map <envoy_v3_api_field_extensions.filters.http.jwt_authn.v3.JwtAuthentication.requirement_map>`
       in ``JwtAuthentication``.
       
      string requirement_name = 3 [(.validate.rules) = { ... }
      Specified by:
      getRequirementName in interface RequirementRuleOrBuilder
      Returns:
      The requirementName.
    • getRequirementNameBytes

      public com.google.protobuf.ByteString getRequirementNameBytes()
       Use requirement_name to specify a Jwt requirement.
       This requirement_name MUST be specified at the
       :ref:`requirement_map <envoy_v3_api_field_extensions.filters.http.jwt_authn.v3.JwtAuthentication.requirement_map>`
       in ``JwtAuthentication``.
       
      string requirement_name = 3 [(.validate.rules) = { ... }
      Specified by:
      getRequirementNameBytes in interface RequirementRuleOrBuilder
      Returns:
      The bytes for requirementName.
    • setRequirementName

      public RequirementRule.Builder setRequirementName(String value)
       Use requirement_name to specify a Jwt requirement.
       This requirement_name MUST be specified at the
       :ref:`requirement_map <envoy_v3_api_field_extensions.filters.http.jwt_authn.v3.JwtAuthentication.requirement_map>`
       in ``JwtAuthentication``.
       
      string requirement_name = 3 [(.validate.rules) = { ... }
      Parameters:
      value - The requirementName to set.
      Returns:
      This builder for chaining.
    • clearRequirementName

      public RequirementRule.Builder clearRequirementName()
       Use requirement_name to specify a Jwt requirement.
       This requirement_name MUST be specified at the
       :ref:`requirement_map <envoy_v3_api_field_extensions.filters.http.jwt_authn.v3.JwtAuthentication.requirement_map>`
       in ``JwtAuthentication``.
       
      string requirement_name = 3 [(.validate.rules) = { ... }
      Returns:
      This builder for chaining.
    • setRequirementNameBytes

      public RequirementRule.Builder setRequirementNameBytes(com.google.protobuf.ByteString value)
       Use requirement_name to specify a Jwt requirement.
       This requirement_name MUST be specified at the
       :ref:`requirement_map <envoy_v3_api_field_extensions.filters.http.jwt_authn.v3.JwtAuthentication.requirement_map>`
       in ``JwtAuthentication``.
       
      string requirement_name = 3 [(.validate.rules) = { ... }
      Parameters:
      value - The bytes for requirementName to set.
      Returns:
      This builder for chaining.
    • setUnknownFields

      public final RequirementRule.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<RequirementRule.Builder>
    • mergeUnknownFields

      public final RequirementRule.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<RequirementRule.Builder>