Package org.springframework.boot.jackson
Class JsonObjectDeserializer<T>
java.lang.Object
com.fasterxml.jackson.databind.JsonDeserializer<T>
org.springframework.boot.jackson.JsonObjectDeserializer<T>
- Type Parameters:
T- the supported object type
- All Implemented Interfaces:
com.fasterxml.jackson.databind.deser.NullValueProvider
public abstract class JsonObjectDeserializer<T>
extends com.fasterxml.jackson.databind.JsonDeserializer<T>
Helper base class for
JsonDeserializer implementations that deserialize
objects.- Since:
- 1.4.0
- Author:
- Phillip Webb
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonDeserializer
com.fasterxml.jackson.databind.JsonDeserializer.None -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal Tdeserialize(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt) protected abstract TdeserializeObject(com.fasterxml.jackson.core.JsonParser jsonParser, com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.ObjectCodec codec, com.fasterxml.jackson.databind.JsonNode tree) Deserialize JSON content into the value type this serializer handles.protected final com.fasterxml.jackson.databind.JsonNodegetRequiredNode(com.fasterxml.jackson.databind.JsonNode tree, String fieldName) Helper method to return aJsonNodefrom the tree.protected final <D> DnullSafeValue(com.fasterxml.jackson.databind.JsonNode jsonNode, Class<D> type) Helper method to extract a value from the givenjsonNodeor returnnullwhen the node itself isnull.protected final <D,R> R nullSafeValue(com.fasterxml.jackson.databind.JsonNode jsonNode, Class<D> type, Function<D, R> mapper) Helper method to extract a value from the givenjsonNodeor returnnullwhen the node itself isnull.Methods inherited from class com.fasterxml.jackson.databind.JsonDeserializer
deserialize, deserializeWithType, deserializeWithType, findBackReference, getAbsentValue, getDelegatee, getEmptyAccessPattern, getEmptyValue, getEmptyValue, getKnownPropertyNames, getNullAccessPattern, getNullValue, getNullValue, getObjectIdReader, handledType, isCachable, logicalType, replaceDelegatee, supportsUpdate, unwrappingDeserializer
-
Constructor Details
-
JsonObjectDeserializer
public JsonObjectDeserializer()
-
-
Method Details
-
deserialize
public final T deserialize(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt) throws IOException - Specified by:
deserializein classcom.fasterxml.jackson.databind.JsonDeserializer<T>- Throws:
IOException
-
deserializeObject
protected abstract T deserializeObject(com.fasterxml.jackson.core.JsonParser jsonParser, com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.ObjectCodec codec, com.fasterxml.jackson.databind.JsonNode tree) throws IOException Deserialize JSON content into the value type this serializer handles.- Parameters:
jsonParser- the source parser used for reading JSON contentcontext- context that can be used to access information about this deserialization activitycodec- theObjectCodecassociated with the parsertree- deserialized JSON content as tree expressed using set ofTreeNodeinstances- Returns:
- the deserialized object
- Throws:
IOException- on error- See Also:
-
nullSafeValue
protected final <D,R> R nullSafeValue(com.fasterxml.jackson.databind.JsonNode jsonNode, Class<D> type, Function<D, R> mapper) Helper method to extract a value from the givenjsonNodeor returnnullwhen the node itself isnull.- Type Parameters:
D- the data type requestedR- the result type- Parameters:
jsonNode- the source node (may benull)type- the data type. May beString,Boolean,Long,Integer,Short,Double,Float,BigDecimalorBigInteger.mapper- a mapper to convert the value when it is notnull- Returns:
- the node value or
null - Since:
- 3.4.0
-
nullSafeValue
protected final <D> D nullSafeValue(com.fasterxml.jackson.databind.JsonNode jsonNode, Class<D> type) Helper method to extract a value from the givenjsonNodeor returnnullwhen the node itself isnull.- Type Parameters:
D- the data type requested- Parameters:
jsonNode- the source node (may benull)type- the data type. May beString,Boolean,Long,Integer,Short,Double,Float,BigDecimalorBigInteger.- Returns:
- the node value or
null
-
getRequiredNode
protected final com.fasterxml.jackson.databind.JsonNode getRequiredNode(com.fasterxml.jackson.databind.JsonNode tree, String fieldName) Helper method to return aJsonNodefrom the tree.- Parameters:
tree- the source treefieldName- the field name to extract- Returns:
- the
JsonNode
-