Class Serializers.Base

java.lang.Object
tools.jackson.databind.ser.Serializers.Base
All Implemented Interfaces:
Serializers
Direct Known Subclasses:
SimpleSerializers
Enclosing interface:
Serializers

public static class Serializers.Base extends Object implements Serializers
Basic Serializers implementation that implements all methods but provides no serializers. Its main purpose is to serve as a base class so that sub-classes only need to override methods they need.
  • Constructor Details

    • Base

      public Base()
  • Method Details

    • findSerializer

      public ValueSerializer<?> findSerializer(SerializationConfig config, JavaType type, BeanDescription beanDesc, JsonFormat.Value formatOverrides)
      Description copied from interface: Serializers
      Method called by serialization framework first time a serializer is needed for specified type, which is not of a container or reference type (for which other methods are called).
      Specified by:
      findSerializer in interface Serializers
      Parameters:
      config - Serialization configuration in use
      type - Fully resolved type of instances to serialize
      beanDesc - Additional information about type
      formatOverrides - (nullable) Optional format overrides (usually from property definition), to change definitions that beanDesc may have (and which are NOT included). Usually combined calling Serializers.Base#calculateEffectiveFormat.
      Returns:
      Configured serializer to use for the type; or null if implementation does not recognize or support type
    • findReferenceSerializer

      public ValueSerializer<?> findReferenceSerializer(SerializationConfig config, ReferenceType type, BeanDescription beanDesc, JsonFormat.Value formatOverrides, TypeSerializer contentTypeSerializer, ValueSerializer<Object> contentValueSerializer)
      Description copied from interface: Serializers
      Method called by serialization framework first time a serializer is needed for given ReferenceType
      Specified by:
      findReferenceSerializer in interface Serializers
      formatOverrides - (nullable) Optional format overrides (usually from property definition), to change definitions that beanDesc may have (and which are NOT included). Usually combined calling Serializers.Base#calculateEffectiveFormat.
    • findArraySerializer

      public ValueSerializer<?> findArraySerializer(SerializationConfig config, ArrayType type, BeanDescription beanDesc, JsonFormat.Value formatOverrides, TypeSerializer elementTypeSerializer, ValueSerializer<Object> elementValueSerializer)
      Description copied from interface: Serializers
      Method called by serialization framework first time a serializer is needed for specified array type. Implementation should return a serializer instance if it supports specified type; or null if it does not.
      Specified by:
      findArraySerializer in interface Serializers
      formatOverrides - (nullable) Optional format overrides (usually from property definition), to change definitions that beanDesc may have (and which are NOT included). Usually combined calling Serializers.Base#calculateEffectiveFormat.
    • findCollectionSerializer

      public ValueSerializer<?> findCollectionSerializer(SerializationConfig config, CollectionType type, BeanDescription beanDesc, JsonFormat.Value formatOverrides, TypeSerializer elementTypeSerializer, ValueSerializer<Object> elementValueSerializer)
      Description copied from interface: Serializers
      Method called by serialization framework first time a serializer is needed for specified Collection type. Implementation should return a serializer instance if it supports specified type; or null if it does not.
      Specified by:
      findCollectionSerializer in interface Serializers
      formatOverrides - (nullable) Optional format overrides (usually from property definition), to change definitions that beanDesc may have (and which are NOT included). Usually combined calling Serializers.Base#calculateEffectiveFormat.
    • findCollectionLikeSerializer

      public ValueSerializer<?> findCollectionLikeSerializer(SerializationConfig config, CollectionLikeType type, BeanDescription beanDesc, JsonFormat.Value formatOverrides, TypeSerializer elementTypeSerializer, ValueSerializer<Object> elementValueSerializer)
      Description copied from interface: Serializers
      Method called by serialization framework first time a serializer is needed for specified "Collection-like" type (type that acts like Collection, but does not implement it). Implementation should return a serializer instance if it supports specified type; or null if it does not.
      Specified by:
      findCollectionLikeSerializer in interface Serializers
      formatOverrides - (nullable) Optional format overrides (usually from property definition), to change definitions that beanDesc may have (and which are NOT included). Usually combined calling Serializers.Base#calculateEffectiveFormat.
    • findMapSerializer

      public ValueSerializer<?> findMapSerializer(SerializationConfig config, MapType type, BeanDescription beanDesc, JsonFormat.Value formatOverrides, ValueSerializer<Object> keySerializer, TypeSerializer elementTypeSerializer, ValueSerializer<Object> elementValueSerializer)
      Description copied from interface: Serializers
      Method called by serialization framework first time a serializer is needed for specified Map type. Implementation should return a serializer instance if it supports specified type; or null if it does not.
      Specified by:
      findMapSerializer in interface Serializers
      formatOverrides - (nullable) Optional format overrides (usually from property definition), to change definitions that beanDesc may have (and which are NOT included). Usually combined calling Serializers.Base#calculateEffectiveFormat.
    • findMapLikeSerializer

      public ValueSerializer<?> findMapLikeSerializer(SerializationConfig config, MapLikeType type, BeanDescription beanDesc, JsonFormat.Value formatOverrides, ValueSerializer<Object> keySerializer, TypeSerializer elementTypeSerializer, ValueSerializer<Object> elementValueSerializer)
      Description copied from interface: Serializers
      Method called by serialization framework first time a serializer is needed for specified "Map-like" type (type that acts like Map, but does not implement it). Implementation should return a serializer instance if it supports specified type; or null if it does not.
      Specified by:
      findMapLikeSerializer in interface Serializers
      formatOverrides - (nullable) Optional format overrides (usually from property definition), to change definitions that beanDesc may have (and which are NOT included). Usually combined calling Serializers.Base#calculateEffectiveFormat.
    • findExplicitPOJOSerializer

      public ValueSerializer<?> findExplicitPOJOSerializer(SerializationConfig config, JavaType type, BeanDescription beanDesc, JsonFormat.Value formatOverrides)
      Description copied from interface: Serializers
      Method called in case that a given type or property is declared to use shape JsonFormat.Shape.POJO and is expected to be serialized "as POJO", that is, as an (JSON) Object. This is usually NOT handled by extension modules as core databind knows how to do this, but sometimes it may be necessary to override this behavior.
      Specified by:
      findExplicitPOJOSerializer in interface Serializers
    • calculateEffectiveFormat

      protected JsonFormat.Value calculateEffectiveFormat(BeanDescription beanDesc, Class<?> baseType, JsonFormat.Value formatOverrides)
      Helper method for determining effective combination of formatting settings from combination of Class annotations and config overrides for type and possible per-property overrides (in this order of precedence from lowest to highest).