Class CelMatcher.Builder

  • All Implemented Interfaces:
    CelMatcherOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, java.lang.Cloneable
    Enclosing class:
    CelMatcher

    public static final class CelMatcher.Builder
    extends com.google.protobuf.GeneratedMessage.Builder<CelMatcher.Builder>
    implements CelMatcherOrBuilder
     Performs a match by evaluating a `Common Expression Language
     <https://github.com/google/cel-spec>`_ (CEL) expression against the standardized set of
     :ref:`HTTP attributes <arch_overview_attributes>` specified via ``HttpAttributesCelMatchInput``.
    
     .. attention::
    
     The match is ``true``, iff the result of the evaluation is a bool AND true.
     In all other cases, the match is ``false``, including but not limited to: non-bool types,
     ``false``, ``null``,`` int(1)``, etc.
     In case CEL expression raises an error, the result of the evaluation is interpreted "no match".
    
     Refer to :ref:`Unified Matcher API <envoy_v3_api_msg_.xds.type.matcher.v3.Matcher>` documentation
     for usage details.
    
     [#comment:TODO(sergiitk): Link HttpAttributesMatchInput + usage example.]
     [#comment:TODO(sergiitk): When implemented, add the extension tag.]
     
    Protobuf type xds.type.matcher.v3.CelMatcher
    • Constructor Detail

      • Builder

        private Builder()
      • Builder

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

      • 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<CelMatcher.Builder>
      • maybeForceBuilderInitialization

        private void maybeForceBuilderInitialization()
      • clear

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

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

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

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

        private void buildPartial0​(CelMatcher result)
      • mergeFrom

        public CelMatcher.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<CelMatcher.Builder>
      • isInitialized

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

        public CelMatcher.Builder mergeFrom​(com.google.protobuf.CodedInputStream input,
                                            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                     throws java.io.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<CelMatcher.Builder>
        Throws:
        java.io.IOException
      • hasExprMatch

        public boolean hasExprMatch()
         Either parsed or checked representation of the CEL program.
         
        .xds.type.v3.CelExpression expr_match = 1 [(.validate.rules) = { ... }
        Specified by:
        hasExprMatch in interface CelMatcherOrBuilder
        Returns:
        Whether the exprMatch field is set.
      • getExprMatch

        public CelExpression getExprMatch()
         Either parsed or checked representation of the CEL program.
         
        .xds.type.v3.CelExpression expr_match = 1 [(.validate.rules) = { ... }
        Specified by:
        getExprMatch in interface CelMatcherOrBuilder
        Returns:
        The exprMatch.
      • setExprMatch

        public CelMatcher.Builder setExprMatch​(CelExpression value)
         Either parsed or checked representation of the CEL program.
         
        .xds.type.v3.CelExpression expr_match = 1 [(.validate.rules) = { ... }
      • setExprMatch

        public CelMatcher.Builder setExprMatch​(CelExpression.Builder builderForValue)
         Either parsed or checked representation of the CEL program.
         
        .xds.type.v3.CelExpression expr_match = 1 [(.validate.rules) = { ... }
      • mergeExprMatch

        public CelMatcher.Builder mergeExprMatch​(CelExpression value)
         Either parsed or checked representation of the CEL program.
         
        .xds.type.v3.CelExpression expr_match = 1 [(.validate.rules) = { ... }
      • clearExprMatch

        public CelMatcher.Builder clearExprMatch()
         Either parsed or checked representation of the CEL program.
         
        .xds.type.v3.CelExpression expr_match = 1 [(.validate.rules) = { ... }
      • getExprMatchBuilder

        public CelExpression.Builder getExprMatchBuilder()
         Either parsed or checked representation of the CEL program.
         
        .xds.type.v3.CelExpression expr_match = 1 [(.validate.rules) = { ... }
      • getExprMatchFieldBuilder

        private com.google.protobuf.SingleFieldBuilder<CelExpression,​CelExpression.Builder,​CelExpressionOrBuilder> getExprMatchFieldBuilder()
         Either parsed or checked representation of the CEL program.
         
        .xds.type.v3.CelExpression expr_match = 1 [(.validate.rules) = { ... }
      • getDescription

        public java.lang.String getDescription()
         Free-form description of the CEL AST, e.g. the original expression text, to be
         used for debugging assistance.
         
        string description = 2;
        Specified by:
        getDescription in interface CelMatcherOrBuilder
        Returns:
        The description.
      • getDescriptionBytes

        public com.google.protobuf.ByteString getDescriptionBytes()
         Free-form description of the CEL AST, e.g. the original expression text, to be
         used for debugging assistance.
         
        string description = 2;
        Specified by:
        getDescriptionBytes in interface CelMatcherOrBuilder
        Returns:
        The bytes for description.
      • setDescription

        public CelMatcher.Builder setDescription​(java.lang.String value)
         Free-form description of the CEL AST, e.g. the original expression text, to be
         used for debugging assistance.
         
        string description = 2;
        Parameters:
        value - The description to set.
        Returns:
        This builder for chaining.
      • clearDescription

        public CelMatcher.Builder clearDescription()
         Free-form description of the CEL AST, e.g. the original expression text, to be
         used for debugging assistance.
         
        string description = 2;
        Returns:
        This builder for chaining.
      • setDescriptionBytes

        public CelMatcher.Builder setDescriptionBytes​(com.google.protobuf.ByteString value)
         Free-form description of the CEL AST, e.g. the original expression text, to be
         used for debugging assistance.
         
        string description = 2;
        Parameters:
        value - The bytes for description to set.
        Returns:
        This builder for chaining.