Class PropertySerializerMap
java.lang.Object
org.codehaus.jackson.map.ser.impl.PropertySerializerMap
Helper container used for resolving serializers for dynamic (possibly but not
necessarily polymorphic) properties: properties whose type is not forced
to use dynamic (declared) type and that are not final.
If so, serializer to use can only be established once actual value type is known.
Since this happens a lot unless static typing is forced (or types are final)
this implementation is optimized for efficiency.
Instances are immutable; new instances are created with factory methods: this
is important to ensure correct multi-threaded access.
- Since:
- 1.7
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
Value class used for returning tuple that has both serializer that was retrieved and new map instance -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic PropertySerializerMap
emptyMap()
findAndAddSerializer
(Class<?> type, SerializerProvider provider, BeanProperty property) Method called if initial lookup fails; will both find serializer and construct new map instance if warranted, and return bothfindAndAddSerializer
(JavaType type, SerializerProvider provider, BeanProperty property) abstract PropertySerializerMap
newWith
(Class<?> type, JsonSerializer<Object> serializer) abstract JsonSerializer
<Object> serializerFor
(Class<?> type) Main lookup method.
-
Constructor Details
-
PropertySerializerMap
public PropertySerializerMap()
-
-
Method Details
-
serializerFor
Main lookup method. Takes a "raw" type since usage is always from place where parameterization is fixed such that there can not be type-parametric variations. -
findAndAddSerializer
public final PropertySerializerMap.SerializerAndMapResult findAndAddSerializer(Class<?> type, SerializerProvider provider, BeanProperty property) throws JsonMappingException Method called if initial lookup fails; will both find serializer and construct new map instance if warranted, and return both- Throws:
JsonMappingException
-
findAndAddSerializer
public final PropertySerializerMap.SerializerAndMapResult findAndAddSerializer(JavaType type, SerializerProvider provider, BeanProperty property) throws JsonMappingException - Throws:
JsonMappingException
-
newWith
-
emptyMap
-