public class SimpleSerializers extends Serializers.Base implements Serializable
Serializers which allows registration of
 serializers based on raw (type erased class).
 It can work well for basic bean and scalar type serializers, but is not
 a good fit for handling generic types (like Maps and Collections).
 Type registrations are assumed to be general; meaning that registration of serializer
 for a super type will also be used for handling subtypes, unless an exact match
 is found first. As an example, handler for CharSequence would also be used
 serializing StringBuilder instances, unless a direct mapping was found.
Serializers.Base| Modifier and Type | Field and Description | 
|---|---|
| protected HashMap<ClassKey,JsonSerializer<?>> | _classMappingsClass-based mappings that are used both for exact and
 sub-class matches. | 
| protected boolean | _hasEnumSerializerFlag to help find "generic" enum serializer, if one has been registered. | 
| protected HashMap<ClassKey,JsonSerializer<?>> | _interfaceMappingsInterface-based matches. | 
| Constructor and Description | 
|---|
| SimpleSerializers() | 
| SimpleSerializers(List<JsonSerializer<?>> sers) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | _addSerializer(Class<?> cls,
              JsonSerializer<?> ser) | 
| protected JsonSerializer<?> | _findInterfaceMapping(Class<?> cls,
                     ClassKey key) | 
| <T> void | addSerializer(Class<? extends T> type,
             JsonSerializer<T> ser) | 
| void | addSerializer(JsonSerializer<?> ser)Method for adding given serializer for type that  JsonSerializer.handledType()specifies (which MUST return a non-null class; and can NOT beObject, as a
 sanity check). | 
| void | addSerializers(List<JsonSerializer<?>> sers) | 
| JsonSerializer<?> | findArraySerializer(SerializationConfig config,
                   ArrayType type,
                   BeanDescription beanDesc,
                   TypeSerializer elementTypeSerializer,
                   JsonSerializer<Object> elementValueSerializer)Method called by serialization framework first time a serializer is needed for
 specified array type. | 
| JsonSerializer<?> | findCollectionLikeSerializer(SerializationConfig config,
                            CollectionLikeType type,
                            BeanDescription beanDesc,
                            TypeSerializer elementTypeSerializer,
                            JsonSerializer<Object> elementValueSerializer)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). | 
| JsonSerializer<?> | findCollectionSerializer(SerializationConfig config,
                        CollectionType type,
                        BeanDescription beanDesc,
                        TypeSerializer elementTypeSerializer,
                        JsonSerializer<Object> elementValueSerializer)Method called by serialization framework first time a serializer is needed for
 specified  Collectiontype. | 
| JsonSerializer<?> | findMapLikeSerializer(SerializationConfig config,
                     MapLikeType type,
                     BeanDescription beanDesc,
                     JsonSerializer<Object> keySerializer,
                     TypeSerializer elementTypeSerializer,
                     JsonSerializer<Object> elementValueSerializer)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). | 
| JsonSerializer<?> | findMapSerializer(SerializationConfig config,
                 MapType type,
                 BeanDescription beanDesc,
                 JsonSerializer<Object> keySerializer,
                 TypeSerializer elementTypeSerializer,
                 JsonSerializer<Object> elementValueSerializer)Method called by serialization framework first time a serializer is needed for
 specified  Maptype. | 
| JsonSerializer<?> | findSerializer(SerializationConfig config,
              JavaType type,
              BeanDescription beanDesc)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). | 
findReferenceSerializerprotected HashMap<ClassKey,JsonSerializer<?>> _classMappings
protected HashMap<ClassKey,JsonSerializer<?>> _interfaceMappings
protected boolean _hasEnumSerializer
public SimpleSerializers()
public SimpleSerializers(List<JsonSerializer<?>> sers)
public void addSerializer(JsonSerializer<?> ser)
JsonSerializer.handledType()
 specifies (which MUST return a non-null class; and can NOT be Object, as a
 sanity check).
 For serializers that do not declare handled type, use the variant that takes
 two arguments.ser - public <T> void addSerializer(Class<? extends T> type, JsonSerializer<T> ser)
public void addSerializers(List<JsonSerializer<?>> sers)
public JsonSerializer<?> findSerializer(SerializationConfig config, JavaType type, BeanDescription beanDesc)
SerializersfindSerializer in interface SerializersfindSerializer in class Serializers.Baseconfig - Serialization configuration in usetype - Fully resolved type of instances to serializebeanDesc - Additional information about typepublic JsonSerializer<?> findArraySerializer(SerializationConfig config, ArrayType type, BeanDescription beanDesc, TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
SerializersfindArraySerializer in interface SerializersfindArraySerializer in class Serializers.Basepublic JsonSerializer<?> findCollectionSerializer(SerializationConfig config, CollectionType type, BeanDescription beanDesc, TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
SerializersCollection type.
 Implementation should return a serializer instance if it supports
 specified type; or null if it does not.findCollectionSerializer in interface SerializersfindCollectionSerializer in class Serializers.Basepublic JsonSerializer<?> findCollectionLikeSerializer(SerializationConfig config, CollectionLikeType type, BeanDescription beanDesc, TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
SerializersCollection,
 but does not implement it).
 Implementation should return a serializer instance if it supports
 specified type; or null if it does not.findCollectionLikeSerializer in interface SerializersfindCollectionLikeSerializer in class Serializers.Basepublic JsonSerializer<?> findMapSerializer(SerializationConfig config, MapType type, BeanDescription beanDesc, JsonSerializer<Object> keySerializer, TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
SerializersMap type.
 Implementation should return a serializer instance if it supports
 specified type; or null if it does not.findMapSerializer in interface SerializersfindMapSerializer in class Serializers.Basepublic JsonSerializer<?> findMapLikeSerializer(SerializationConfig config, MapLikeType type, BeanDescription beanDesc, JsonSerializer<Object> keySerializer, TypeSerializer elementTypeSerializer, JsonSerializer<Object> elementValueSerializer)
SerializersMap,
 but does not implement it).
 Implementation should return a serializer instance if it supports
 specified type; or null if it does not.findMapLikeSerializer in interface SerializersfindMapLikeSerializer in class Serializers.Baseprotected JsonSerializer<?> _findInterfaceMapping(Class<?> cls, ClassKey key)
protected void _addSerializer(Class<?> cls, JsonSerializer<?> ser)
Copyright © 2008–2020 FasterXML. All rights reserved.