Class 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 Detail

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