Class CelExpressionConfig
java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
io.envoyproxy.envoy.config.core.v3.CelExpressionConfig
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,CelExpressionConfigOrBuilder,Serializable
public final class CelExpressionConfig
extends com.google.protobuf.GeneratedMessageV3
implements CelExpressionConfigOrBuilder
CEL expression evaluation configuration. These options control the behavior of the Common Expression Language runtime for individual CEL expressions.Protobuf type
envoy.config.core.v3.CelExpressionConfig- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classCEL expression evaluation configuration.Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT, BuilderT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intFields inherited from class com.google.protobuf.GeneratedMessageV3
alwaysUseFieldBuilders, unknownFieldsFields inherited from class com.google.protobuf.AbstractMessage
memoizedSizeFields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode -
Method Summary
Modifier and TypeMethodDescriptionbooleanstatic CelExpressionConfigstatic final com.google.protobuf.Descriptors.DescriptorbooleanEnable string concatenation for CEL expressions.booleanEnable string conversion functions for CEL expressions.booleanEnable string manipulation functions for CEL expressions.com.google.protobuf.Parser<CelExpressionConfig>intinthashCode()protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTablefinal booleanstatic CelExpressionConfig.Builderstatic CelExpressionConfig.BuildernewBuilder(CelExpressionConfig prototype) protected CelExpressionConfig.BuildernewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) protected ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused) static CelExpressionConfigparseDelimitedFrom(InputStream input) static CelExpressionConfigparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CelExpressionConfigparseFrom(byte[] data) static CelExpressionConfigparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CelExpressionConfigparseFrom(com.google.protobuf.ByteString data) static CelExpressionConfigparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CelExpressionConfigparseFrom(com.google.protobuf.CodedInputStream input) static CelExpressionConfigparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CelExpressionConfigparseFrom(InputStream input) static CelExpressionConfigparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static CelExpressionConfigparseFrom(ByteBuffer data) static CelExpressionConfigparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser<CelExpressionConfig>parser()voidwriteTo(com.google.protobuf.CodedOutputStream output) Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTagMethods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toStringMethods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
ENABLE_STRING_CONVERSION_FIELD_NUMBER
public static final int ENABLE_STRING_CONVERSION_FIELD_NUMBER- See Also:
-
ENABLE_STRING_CONCAT_FIELD_NUMBER
public static final int ENABLE_STRING_CONCAT_FIELD_NUMBER- See Also:
-
ENABLE_STRING_FUNCTIONS_FIELD_NUMBER
public static final int ENABLE_STRING_FUNCTIONS_FIELD_NUMBER- See Also:
-
-
Method Details
-
newInstance
- Overrides:
newInstancein classcom.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3
-
getEnableStringConversion
public boolean getEnableStringConversion()Enable string conversion functions for CEL expressions. When enabled, CEL expressions can convert values to strings using the ``string()`` function. .. attention:: This option is disabled by default to avoid unbounded memory allocation. CEL evaluation cost is typically bounded by the expression size, but converting arbitrary values (e.g., large messages, lists, or maps) to strings may allocate memory proportional to input data size, which can be unbounded and lead to memory exhaustion.
bool enable_string_conversion = 1;- Specified by:
getEnableStringConversionin interfaceCelExpressionConfigOrBuilder- Returns:
- The enableStringConversion.
-
getEnableStringConcat
public boolean getEnableStringConcat()Enable string concatenation for CEL expressions. When enabled, CEL expressions can concatenate strings using the ``+`` operator. .. attention:: This option is disabled by default to avoid unbounded memory allocation. While CEL normally bounds evaluation by expression size, enabling string concatenation allows building outputs whose size depends on input data, potentially causing large intermediate allocations and memory exhaustion.
bool enable_string_concat = 2;- Specified by:
getEnableStringConcatin interfaceCelExpressionConfigOrBuilder- Returns:
- The enableStringConcat.
-
getEnableStringFunctions
public boolean getEnableStringFunctions()Enable string manipulation functions for CEL expressions. When enabled, CEL expressions can use additional string functions: * ``replace(old, new)`` - Replaces all occurrences of ``old`` with ``new``. * ``split(separator)`` - Splits a string into a list of substrings. * ``lowerAscii()`` - Converts ASCII characters to lowercase. * ``upperAscii()`` - Converts ASCII characters to uppercase. .. note:: Standard CEL string functions like ``contains()``, ``startsWith()``, and ``endsWith()`` are always available regardless of this setting. .. attention:: This option is disabled by default to avoid unbounded memory allocation. Although CEL generally bounds evaluation by expression size, functions such as ``replace``, ``split``, ``lowerAscii()``, and ``upperAscii()`` can allocate memory proportional to input data size. Under adversarial inputs this can lead to unbounded allocations and memory exhaustion.
bool enable_string_functions = 3;- Specified by:
getEnableStringFunctionsin interfaceCelExpressionConfigOrBuilder- Returns:
- The enableStringFunctions.
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessageV3- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessageV3
-
equals
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static CelExpressionConfig parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CelExpressionConfig parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CelExpressionConfig parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CelExpressionConfig parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CelExpressionConfig parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CelExpressionConfig parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static CelExpressionConfig parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
- Throws:
IOException
-
parseDelimitedFrom
public static CelExpressionConfig parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
public static CelExpressionConfig parseFrom(com.google.protobuf.CodedInputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static CelExpressionConfig parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilderForType
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
-
newBuilder
-
toBuilder
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected CelExpressionConfig.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) - Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
-
parser
-
getParserForType
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-