Class DefaultSerdeRegistry

java.lang.Object
io.micronaut.serde.support.DefaultSerdeRegistry
All Implemented Interfaces:
io.micronaut.core.convert.ConversionServiceProvider, io.micronaut.serde.DeserializerLocator, io.micronaut.serde.NamingStrategyLocator, io.micronaut.serde.SerdeRegistry, io.micronaut.serde.SerializerLocator

@Singleton public class DefaultSerdeRegistry extends Object implements io.micronaut.serde.SerdeRegistry
Default implementation of the SerdeRegistry interface.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final io.micronaut.serde.Serde<BigDecimal>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<BigInteger>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<boolean[]>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Boolean>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<byte[]>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Byte>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<char[]>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Charset>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Charset>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final List<SerdeRegistrar<?>>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<double[]>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Double>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<float[]>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Float>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<int[]>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Integer>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Locale>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<long[]>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Long>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<OptionalDouble>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<OptionalInt>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<OptionalLong>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<short[]>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<Short>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<String>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<TimeZone>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<URI>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<URL>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
    static final io.micronaut.serde.Serde<UUID>
    Deprecated.
    Internal serdes shouldn't be accessed as a static field
  • Constructor Summary

    Constructors
    Constructor
    Description
    DefaultSerdeRegistry(@Nullable io.micronaut.context.BeanContext beanContext, io.micronaut.serde.SerdeIntrospections introspections, io.micronaut.core.convert.ConversionService conversionService, io.micronaut.serde.config.SerdeConfiguration serdeConfiguration, io.micronaut.serde.config.SerializationConfiguration serializationConfiguration, io.micronaut.serde.config.DeserializationConfiguration deserializationConfiguration)
    Default constructor.
    DefaultSerdeRegistry(io.micronaut.context.BeanContext beanContext, ObjectSerializer objectSerializer, ObjectDeserializer objectDeserializer, io.micronaut.serde.Serde<Object[]> objectArraySerde, io.micronaut.serde.SerdeIntrospections introspections, io.micronaut.core.convert.ConversionService conversionService)
    DefaultSerdeRegistry(io.micronaut.context.BeanContext beanContext, ObjectSerializer objectSerializer, ObjectDeserializer objectDeserializer, io.micronaut.serde.Serde<Object[]> objectArraySerde, io.micronaut.serde.SerdeIntrospections introspections, io.micronaut.core.convert.ConversionService conversionService, io.micronaut.serde.config.SerdeConfiguration serdeConfiguration, io.micronaut.serde.config.SerializationConfiguration serializationConfiguration, io.micronaut.serde.config.DeserializationConfiguration deserializationConfiguration)
  • Method Summary

    Modifier and Type
    Method
    Description
    io.micronaut.serde.SerdeRegistry
    cloneWithConfiguration(@Nullable io.micronaut.serde.config.SerdeConfiguration configuration, @Nullable io.micronaut.serde.config.SerializationConfiguration serializationConfiguration, @Nullable io.micronaut.serde.config.DeserializationConfiguration deserializationConfiguration)
     
    <T, D extends io.micronaut.serde.Deserializer<? extends T>>
    D
    findCustomDeserializer(Class<? extends D> deserializerClass)
     
    <T, D extends io.micronaut.serde.Serializer<? extends T>>
    D
    findCustomSerializer(Class<? extends D> serializerClass)
     
    <T> io.micronaut.serde.Deserializer<? extends T>
    findDeserializer(io.micronaut.core.type.Argument<? extends T> type)
     
    <T> @Nullable io.micronaut.serde.Serde<T>
    findInternalSerde(io.micronaut.core.type.Argument<T> type)
    Find internal serde by type.
    <D extends io.micronaut.serde.config.naming.PropertyNamingStrategy>
    D
    findNamingStrategy(Class<? extends D> namingStrategyClass)
     
    <T> io.micronaut.serde.Serializer<? super T>
    findSerializer(io.micronaut.core.type.Argument<? extends T> type)
     
    io.micronaut.core.convert.ConversionService
     
    <T> Collection<io.micronaut.core.beans.BeanIntrospection<? extends T>>
     
    final io.micronaut.serde.config.SerdeConfiguration
     
    io.micronaut.serde.Deserializer.DecoderContext
     
    io.micronaut.serde.Serializer.EncoderContext
     

    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.DeserializerLocator

    findDeserializer

    Methods inherited from interface io.micronaut.serde.SerializerLocator

    findSerializer
  • Field Details

    • INTEGER_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Integer> INTEGER_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • LONG_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Long> LONG_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • SHORT_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Short> SHORT_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • FLOAT_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Float> FLOAT_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • BYTE_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Byte> BYTE_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • DOUBLE_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Double> DOUBLE_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • OPTIONAL_INT_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<OptionalInt> OPTIONAL_INT_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • OPTIONAL_DOUBLE_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<OptionalDouble> OPTIONAL_DOUBLE_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • OPTIONAL_LONG_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<OptionalLong> OPTIONAL_LONG_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • BIG_DECIMAL_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<BigDecimal> BIG_DECIMAL_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • BIG_INTEGER_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<BigInteger> BIG_INTEGER_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • UUID_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<UUID> UUID_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • URL_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<URL> URL_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • URI_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<URI> URI_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • CHARSET_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Charset> CHARSET_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • TIME_ZONE_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<TimeZone> TIME_ZONE_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • LOCALE_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Locale> LOCALE_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • INT_ARRAY_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<int[]> INT_ARRAY_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • LONG_ARRAY_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<long[]> LONG_ARRAY_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • FLOAT_ARRAY_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<float[]> FLOAT_ARRAY_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • SHORT_ARRAY_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<short[]> SHORT_ARRAY_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • DOUBLE_ARRAY_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<double[]> DOUBLE_ARRAY_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • BOOLEAN_ARRAY_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<boolean[]> BOOLEAN_ARRAY_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • BYTE_ARRAY_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<byte[]> BYTE_ARRAY_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • CHAR_ARRAY_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<char[]> CHAR_ARRAY_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • STRING_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<String> STRING_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • BOOLEAN_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Boolean> BOOLEAN_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • CHAR_SERDE

      @Deprecated(since="2.9.0") public static final io.micronaut.serde.Serde<Charset> CHAR_SERDE
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
    • DEFAULT_SERDES

      @Deprecated(since="2.9.0") public static final List<SerdeRegistrar<?>> DEFAULT_SERDES
      Deprecated.
      Internal serdes shouldn't be accessed as a static field
  • Constructor Details

    • DefaultSerdeRegistry

      @Deprecated(forRemoval=true, since="2.9.0") public DefaultSerdeRegistry(io.micronaut.context.BeanContext beanContext, ObjectSerializer objectSerializer, ObjectDeserializer objectDeserializer, io.micronaut.serde.Serde<Object[]> objectArraySerde, io.micronaut.serde.SerdeIntrospections introspections, io.micronaut.core.convert.ConversionService conversionService, io.micronaut.serde.config.SerdeConfiguration serdeConfiguration, io.micronaut.serde.config.SerializationConfiguration serializationConfiguration, io.micronaut.serde.config.DeserializationConfiguration deserializationConfiguration)
      Default constructor.
      Parameters:
      beanContext - The bean context
      objectSerializer - The object serializer
      objectDeserializer - The object deserializer
      objectArraySerde - The object array Serde
      introspections - The introspections
      conversionService - The conversion service
      serdeConfiguration - The SerdeConfiguration
      serializationConfiguration - The SerializationConfiguration
      deserializationConfiguration - The DeserializationConfiguration
    • DefaultSerdeRegistry

      @Inject public DefaultSerdeRegistry(@Nullable @Nullable io.micronaut.context.BeanContext beanContext, io.micronaut.serde.SerdeIntrospections introspections, io.micronaut.core.convert.ConversionService conversionService, io.micronaut.serde.config.SerdeConfiguration serdeConfiguration, io.micronaut.serde.config.SerializationConfiguration serializationConfiguration, io.micronaut.serde.config.DeserializationConfiguration deserializationConfiguration)
      Default constructor.
      Parameters:
      beanContext - The bean context
      introspections - The introspections
      conversionService - The conversion service
      serdeConfiguration - The SerdeConfiguration
      serializationConfiguration - The SerializationConfiguration
      deserializationConfiguration - The DeserializationConfiguration
    • DefaultSerdeRegistry

      @Deprecated public DefaultSerdeRegistry(io.micronaut.context.BeanContext beanContext, ObjectSerializer objectSerializer, ObjectDeserializer objectDeserializer, io.micronaut.serde.Serde<Object[]> objectArraySerde, io.micronaut.serde.SerdeIntrospections introspections, io.micronaut.core.convert.ConversionService conversionService)
      Parameters:
      beanContext - The bean context
      objectSerializer - The object serializer
      objectDeserializer - The object deserializer
      objectArraySerde - The object array Serde
      introspections - The introspections
      conversionService - The conversion service
  • Method Details

    • cloneWithConfiguration

      public io.micronaut.serde.SerdeRegistry cloneWithConfiguration(@Nullable @Nullable io.micronaut.serde.config.SerdeConfiguration configuration, @Nullable @Nullable io.micronaut.serde.config.SerializationConfiguration serializationConfiguration, @Nullable @Nullable io.micronaut.serde.config.DeserializationConfiguration deserializationConfiguration)
      Specified by:
      cloneWithConfiguration in interface io.micronaut.serde.SerdeRegistry
    • findInternalSerde

      @Nullable @Internal public <T> @Nullable io.micronaut.serde.Serde<T> findInternalSerde(io.micronaut.core.type.Argument<T> type)
      Find internal serde by type.
      Type Parameters:
      T - The serde type
      Parameters:
      type - The serde type
      Returns:
      a serde or null
    • findCustomSerializer

      public <T, D extends io.micronaut.serde.Serializer<? extends T>> D findCustomSerializer(Class<? extends D> serializerClass) throws io.micronaut.serde.exceptions.SerdeException
      Specified by:
      findCustomSerializer in interface io.micronaut.serde.SerializerLocator
      Throws:
      io.micronaut.serde.exceptions.SerdeException
    • findCustomDeserializer

      public <T, D extends io.micronaut.serde.Deserializer<? extends T>> D findCustomDeserializer(Class<? extends D> deserializerClass) throws io.micronaut.serde.exceptions.SerdeException
      Specified by:
      findCustomDeserializer in interface io.micronaut.serde.DeserializerLocator
      Throws:
      io.micronaut.serde.exceptions.SerdeException
    • findNamingStrategy

      public <D extends io.micronaut.serde.config.naming.PropertyNamingStrategy> D findNamingStrategy(Class<? extends D> namingStrategyClass) throws io.micronaut.serde.exceptions.SerdeException
      Specified by:
      findNamingStrategy in interface io.micronaut.serde.NamingStrategyLocator
      Throws:
      io.micronaut.serde.exceptions.SerdeException
    • findDeserializer

      public <T> io.micronaut.serde.Deserializer<? extends T> findDeserializer(io.micronaut.core.type.Argument<? extends T> type) throws io.micronaut.serde.exceptions.SerdeException
      Specified by:
      findDeserializer in interface io.micronaut.serde.DeserializerLocator
      Throws:
      io.micronaut.serde.exceptions.SerdeException
    • getDeserializableSubtypes

      public <T> Collection<io.micronaut.core.beans.BeanIntrospection<? extends T>> getDeserializableSubtypes(Class<T> superType)
      Specified by:
      getDeserializableSubtypes in interface io.micronaut.serde.DeserializerLocator
    • findSerializer

      public <T> io.micronaut.serde.Serializer<? super T> findSerializer(io.micronaut.core.type.Argument<? extends T> type) throws io.micronaut.serde.exceptions.SerdeException
      Specified by:
      findSerializer in interface io.micronaut.serde.SerializerLocator
      Throws:
      io.micronaut.serde.exceptions.SerdeException
    • newEncoderContext

      public io.micronaut.serde.Serializer.EncoderContext newEncoderContext(Class<?> view)
      Specified by:
      newEncoderContext in interface io.micronaut.serde.SerdeRegistry
    • newDecoderContext

      public io.micronaut.serde.Deserializer.DecoderContext newDecoderContext(Class<?> view)
      Specified by:
      newDecoderContext in interface io.micronaut.serde.SerdeRegistry
    • getConversionService

      public io.micronaut.core.convert.ConversionService getConversionService()
      Specified by:
      getConversionService in interface io.micronaut.core.convert.ConversionServiceProvider
    • getSerdeConfiguration

      @Internal public final io.micronaut.serde.config.SerdeConfiguration getSerdeConfiguration()