Class CelMatcher.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<CelMatcher.Builder>
com.google.protobuf.GeneratedMessage.Builder<CelMatcher.Builder>
com.github.xds.type.matcher.v3.CelMatcher.Builder
All Implemented Interfaces:
CelMatcherOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, 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
  • 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<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>
    • mergeFrom

      public CelMatcher.Builder mergeFrom(CelMatcher other)
    • 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 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:
      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) = { ... }
    • getExprMatchOrBuilder

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

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

      public 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(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.