Class ProtoCelValueConverter


  • @Immutable
    @Internal
    public final class ProtoCelValueConverter
    extends BaseProtoCelValueConverter
    ProtoCelValueConverter handles bidirectional conversion between native Java and protobuf objects to CelValue. This converter leverages descriptors, thus requires the full version of protobuf implementation.

    Protobuf semantics take precedence for conversion. For example, CEL's TimestampValue will be converted into Protobuf's Timestamp instead of java.time.Instant.

    CEL Library Internals. Do Not Use.

    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object fromProtoMessageFieldToCelValue​(com.google.protobuf.Message message, com.google.protobuf.Descriptors.FieldDescriptor fieldDescriptor)
      Adapts the protobuf message field.
      protected java.lang.Object fromWellKnownProto​(com.google.protobuf.MessageLiteOrBuilder msg, dev.cel.common.internal.WellKnownProto wellKnownProto)  
      static ProtoCelValueConverter newInstance​(dev.cel.common.internal.CelDescriptorPool celDescriptorPool, DynamicProto dynamicProto, dev.cel.common.CelOptions celOptions)
      Constructs a new instance of ProtoCelValueConverter.
      java.lang.Object toRuntimeValue​(java.lang.Object value)
      Protobuf semantics take precedence for conversion.
      • Methods inherited from class dev.cel.common.values.CelValueConverter

        getDefaultInstance, mapContainer, maybeUnwrap, normalizePrimitive
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • newInstance

        public static ProtoCelValueConverter newInstance​(dev.cel.common.internal.CelDescriptorPool celDescriptorPool,
                                                         DynamicProto dynamicProto,
                                                         dev.cel.common.CelOptions celOptions)
        Constructs a new instance of ProtoCelValueConverter.
      • fromWellKnownProto

        protected java.lang.Object fromWellKnownProto​(com.google.protobuf.MessageLiteOrBuilder msg,
                                                      dev.cel.common.internal.WellKnownProto wellKnownProto)
        Overrides:
        fromWellKnownProto in class BaseProtoCelValueConverter
      • fromProtoMessageFieldToCelValue

        public java.lang.Object fromProtoMessageFieldToCelValue​(com.google.protobuf.Message message,
                                                                com.google.protobuf.Descriptors.FieldDescriptor fieldDescriptor)
        Adapts the protobuf message field.