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
  • Method Summary

    Modifier and Type
    Method
    Description
     
     
     
    Free-form description of the CEL AST, e.g. the original expression text, to be used for debugging assistance.
    Either parsed or checked representation of the CEL program.
     
    Free-form description of the CEL AST, e.g. the original expression text, to be used for debugging assistance.
    com.google.protobuf.ByteString
    Free-form description of the CEL AST, e.g. the original expression text, to be used for debugging assistance.
    static final com.google.protobuf.Descriptors.Descriptor
     
    com.google.protobuf.Descriptors.Descriptor
     
    Either parsed or checked representation of the CEL program.
    Either parsed or checked representation of the CEL program.
    Either parsed or checked representation of the CEL program.
    boolean
    Either parsed or checked representation of the CEL program.
    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
     
    final boolean
     
    Either parsed or checked representation of the CEL program.
     
    mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    mergeFrom(com.google.protobuf.Message other)
     
    Free-form description of the CEL AST, e.g. the original expression text, to be used for debugging assistance.
    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.
    Either parsed or checked representation of the CEL program.
    Either parsed or checked representation of the CEL program.

    Methods inherited from class com.google.protobuf.GeneratedMessage.Builder

    addRepeatedField, clearField, clearOneof, clone, getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownFields, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setField, setRepeatedField, setUnknownFields, setUnknownFieldSetBuilder, setUnknownFieldsProto3

    Methods inherited from class com.google.protobuf.AbstractMessage.Builder

    findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString

    Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder

    addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException

    Methods inherited from class Object

    equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.google.protobuf.Message.Builder

    mergeDelimitedFrom, mergeDelimitedFrom

    Methods inherited from interface com.google.protobuf.MessageLite.Builder

    mergeFrom

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • 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>
    • 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
    • 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
    • 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.