Class CustomizedObjectSerializer<T>

java.lang.Object
io.micronaut.serde.support.serializers.CustomizedObjectSerializer<T>
Type Parameters:
T - The type to serialize
All Implemented Interfaces:
io.micronaut.serde.Serializer<T>

@Internal public class CustomizedObjectSerializer<T> extends Object implements io.micronaut.serde.Serializer<T>
Fallback Serializer for general Object values. For deserialization, deserializes to standard types like Number, String, Boolean, Map and List.

This class is used in multiple scenarios:

  • When the user has an Object property in a serializable bean.
  • When the user explicitly calls JsonMapper.writeValue(java.io.OutputStream, java.lang.Object)(gen, Object .class)
  • Nested Class Summary

    Nested classes/interfaces inherited from interface io.micronaut.serde.Serializer

    io.micronaut.serde.Serializer.EncoderContext
  • Constructor Summary

    Constructors
    Constructor
    Description
    CustomizedObjectSerializer(io.micronaut.serde.support.serializers.SerBean<Object> serBean)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected @NonNull List<io.micronaut.serde.support.serializers.SerBean.SerProperty<Object,Object>>
    getWriteProperties(io.micronaut.serde.support.serializers.SerBean<Object> serBean)
    Obtains the write properties for this serializer.
    final void
    serialize(io.micronaut.serde.Encoder encoder, io.micronaut.serde.Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends T> type, T value)
     

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface io.micronaut.serde.Serializer

    createSpecific, isAbsent, isEmpty
  • Constructor Details

    • CustomizedObjectSerializer

      public CustomizedObjectSerializer(io.micronaut.serde.support.serializers.SerBean<Object> serBean)
  • Method Details

    • serialize

      public final void serialize(io.micronaut.serde.Encoder encoder, io.micronaut.serde.Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends T> type, T value) throws IOException
      Specified by:
      serialize in interface io.micronaut.serde.Serializer<T>
      Throws:
      IOException
    • getWriteProperties

      @NonNull protected @NonNull List<io.micronaut.serde.support.serializers.SerBean.SerProperty<Object,Object>> getWriteProperties(io.micronaut.serde.support.serializers.SerBean<Object> serBean)
      Obtains the write properties for this serializer.
      Parameters:
      serBean - The serialization bean.
      Returns:
      The write properties, never null