Class OptionalCodec<E,​L extends java.util.Optional<E>>

  • Type Parameters:
    E - The type of the value inside the Optional.
    L - The type of the Optional (Optional).
    All Implemented Interfaces:
    Codec<L>

    public final class OptionalCodec<E,​L extends java.util.Optional<E>>
    extends BaseCodec<L>
    Codec for encoding and decoding Optional types.
    • Constructor Detail

      • OptionalCodec

        public OptionalCodec​(Codec<E> valueCodec)
        Constructs a OptionalCodec with the specified Codec.
        Parameters:
        valueCodec - The codec to use for the value.
    • Method Detail

      • decode

        public L decode​(UTF8FaunaParser parser)
                 throws CodecException
        Description copied from interface: Codec
        Decodes an object from the provided UTF8FaunaParser.
        Parameters:
        parser - The parser to use for reading and decoding the data.
        Returns:
        The decoded object of type T.
        Throws:
        CodecException - If an error occurs during decoding.
      • encode

        public void encode​(UTF8FaunaGenerator gen,
                           L obj)
                    throws CodecException
        Description copied from interface: Codec
        Encodes the specified object using the provided UTF8FaunaGenerator.
        Parameters:
        gen - The generator to use for writing and encoding the data.
        obj - The object of type T to encode.
        Throws:
        CodecException - If an error occurs during encoding.
      • getCodecClass

        public java.lang.Class<?> getCodecClass()
        Description copied from interface: Codec
        Gets the class associated with this codec.
        Returns:
        The Class type that this codec handles.
      • getSupportedTypes

        public FaunaType[] getSupportedTypes()
        Description copied from interface: Codec
        Gets the set of supported Fauna data types for this codec.
        Returns:
        An array of FaunaType values representing the supported types.