Class EnrichedMapDeserializer
java.lang.Object
com.fasterxml.jackson.databind.JsonDeserializer<T>
com.fasterxml.jackson.databind.deser.std.StdDeserializer<T>
com.fasterxml.jackson.databind.deser.std.ContainerDeserializerBase<Map<Object,Object>>
com.fasterxml.jackson.databind.deser.std.MapDeserializer
com.atlassian.confluence.rest.serialization.jackson2.MapAndKeyValuePairDeserializer
com.atlassian.confluence.rest.serialization.jackson2.EnrichedMapDeserializer
- All Implemented Interfaces:
com.fasterxml.jackson.databind.deser.ContextualDeserializer
,com.fasterxml.jackson.databind.deser.NullValueProvider
,com.fasterxml.jackson.databind.deser.ResolvableDeserializer
,com.fasterxml.jackson.databind.deser.ValueInstantiator.Gettable
,Serializable
Deserializes maps that have been enriched with extra properties such as _links and _expandable.
These maps need a custom deserializer because the _ underscore-prefixed properties will not deserialise to legitimate map keys - they'll either throw exceptions or return garbage values.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonDeserializer
com.fasterxml.jackson.databind.JsonDeserializer.None
-
Field Summary
Fields inherited from class com.fasterxml.jackson.databind.deser.std.MapDeserializer
_checkDupSquash, _delegateDeserializer, _hasDefaultCreator, _ignorableProperties, _includableProperties, _inclusionChecker, _keyDeserializer, _propertyBasedCreator, _standardStringKey, _valueDeserializer, _valueInstantiator, _valueTypeDeserializer
Fields inherited from class com.fasterxml.jackson.databind.deser.std.ContainerDeserializerBase
_containerType, _nullProvider, _skipNullValues, _unwrapSingle
Fields inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer
_valueClass, _valueType, F_MASK_ACCEPT_ARRAYS, F_MASK_INT_COERCIONS
-
Constructor Summary
ConstructorsConstructorDescriptionEnrichedMapDeserializer
(com.fasterxml.jackson.databind.JavaType mapType, com.fasterxml.jackson.databind.BeanDescription beanDescription, com.fasterxml.jackson.databind.deser.std.MapDeserializer src) EnrichedMapDeserializer
(com.fasterxml.jackson.databind.JavaType mapType, com.fasterxml.jackson.databind.deser.ValueInstantiator valueInstantiator, com.fasterxml.jackson.databind.KeyDeserializer keyDeser, com.fasterxml.jackson.databind.JsonDeserializer<Object> valueDeser, com.fasterxml.jackson.databind.jsontype.TypeDeserializer valueTypeDeser) -
Method Summary
Modifier and TypeMethodDescriptiondeserialize
(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt) deserialize
(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt, Map<Object, Object> result) void
resolve
(com.fasterxml.jackson.databind.DeserializationContext ctxt) protected com.fasterxml.jackson.databind.deser.std.MapDeserializer
withResolved
(com.fasterxml.jackson.databind.KeyDeserializer keyDeser, com.fasterxml.jackson.databind.jsontype.TypeDeserializer valueTypeDeser, com.fasterxml.jackson.databind.JsonDeserializer<?> valueDeser, com.fasterxml.jackson.databind.deser.NullValueProvider nuller, Set<String> ignorable) It resolves contextualisation to MapDeserializer and this is erroneous for EnrichedMapDeserializer and also we always need EnrichedMapDeserializer .protected com.fasterxml.jackson.databind.deser.std.MapDeserializer
withResolved
(com.fasterxml.jackson.databind.KeyDeserializer keyDeser, com.fasterxml.jackson.databind.jsontype.TypeDeserializer valueTypeDeser, com.fasterxml.jackson.databind.JsonDeserializer<?> valueDeser, com.fasterxml.jackson.databind.deser.NullValueProvider nuller, Set<String> ignorable, Set<String> includable) It resolves contextualisation to MapDeserializer and this is erroneous for EnrichedMapDeserializer and also we always need EnrichedMapDeserializer .Methods inherited from class com.fasterxml.jackson.databind.deser.std.MapDeserializer
_deserializeUsingCreator, _isStdKeyDeser, _readAndBind, _readAndBindStringKeyMap, _readAndUpdate, _readAndUpdateStringKeyMap, _squashDups, createContextual, deserializeWithType, getContentDeserializer, getMapClass, getValueInstantiator, getValueType, isCachable, logicalType, setIgnorableProperties, setIgnorableProperties, setIncludableProperties
Methods inherited from class com.fasterxml.jackson.databind.deser.std.ContainerDeserializerBase
findBackReference, getContentType, getEmptyAccessPattern, getEmptyValue, supportsUpdate, wrapAndThrow, wrapAndThrow
Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer
_byteOverflow, _checkBooleanToStringCoercion, _checkCoercionFail, _checkDoubleSpecialValue, _checkFloatSpecialValue, _checkFloatToIntCoercion, _checkFloatToStringCoercion, _checkFromStringCoercion, _checkFromStringCoercion, _checkIntToFloatCoercion, _checkIntToStringCoercion, _checkTextualNull, _checkToStringCoercion, _coerceBooleanFromInt, _coercedTypeDesc, _coercedTypeDesc, _coerceEmptyString, _coerceIntegral, _coerceNullToken, _coerceTextualNull, _deserializeFromArray, _deserializeFromEmpty, _deserializeFromEmptyString, _deserializeFromString, _deserializeWrappedValue, _failDoubleToIntCoercion, _findCoercionFromBlankString, _findCoercionFromEmptyArray, _findCoercionFromEmptyString, _findNullProvider, _hasTextualNull, _intOverflow, _isBlank, _isEmptyOrTextualNull, _isFalse, _isIntNumber, _isNaN, _isNegInf, _isPosInf, _isTrue, _neitherNull, _nonNullNumber, _parseBoolean, _parseBooleanFromInt, _parseBooleanPrimitive, _parseBooleanPrimitive, _parseBytePrimitive, _parseDate, _parseDate, _parseDateFromArray, _parseDouble, _parseDouble, _parseDoublePrimitive, _parseDoublePrimitive, _parseDoublePrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseInteger, _parseInteger, _parseIntPrimitive, _parseIntPrimitive, _parseLong, _parseLong, _parseLongPrimitive, _parseLongPrimitive, _parseShortPrimitive, _parseString, _parseString, _reportFailedNullCoerce, _shortOverflow, _verifyEndArrayForSingle, _verifyNullForPrimitive, _verifyNullForPrimitiveCoercion, _verifyNullForScalarCoercion, _verifyNumberForScalarCoercion, _verifyStringForScalarCoercion, findContentNullProvider, findContentNullStyle, findConvertingContentDeserializer, findDeserializer, findFormatFeature, findFormatOverrides, findValueNullProvider, getValueClass, getValueType, handledType, handleMissingEndArrayForSingle, handleNestedArrayForSingle, handleUnknownProperty, isDefaultDeserializer, isDefaultKeyDeserializer
Methods inherited from class com.fasterxml.jackson.databind.JsonDeserializer
deserializeWithType, getAbsentValue, getDelegatee, getEmptyValue, getKnownPropertyNames, getNullAccessPattern, getNullValue, getNullValue, getObjectIdReader, replaceDelegatee, unwrappingDeserializer
-
Constructor Details
-
EnrichedMapDeserializer
public EnrichedMapDeserializer(com.fasterxml.jackson.databind.JavaType mapType, com.fasterxml.jackson.databind.BeanDescription beanDescription, com.fasterxml.jackson.databind.deser.std.MapDeserializer src) -
EnrichedMapDeserializer
public EnrichedMapDeserializer(com.fasterxml.jackson.databind.JavaType mapType, com.fasterxml.jackson.databind.deser.ValueInstantiator valueInstantiator, com.fasterxml.jackson.databind.KeyDeserializer keyDeser, com.fasterxml.jackson.databind.JsonDeserializer<Object> valueDeser, com.fasterxml.jackson.databind.jsontype.TypeDeserializer valueTypeDeser)
-
-
Method Details
-
resolve
public void resolve(com.fasterxml.jackson.databind.DeserializationContext ctxt) throws com.fasterxml.jackson.databind.JsonMappingException - Specified by:
resolve
in interfacecom.fasterxml.jackson.databind.deser.ResolvableDeserializer
- Overrides:
resolve
in classcom.fasterxml.jackson.databind.deser.std.MapDeserializer
- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
deserialize
public Map<Object,Object> deserialize(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt) throws IOException - Overrides:
deserialize
in classMapAndKeyValuePairDeserializer
- Throws:
IOException
-
deserialize
public Map<Object,Object> deserialize(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt, Map<Object, Object> result) throws IOException- Overrides:
deserialize
in classMapAndKeyValuePairDeserializer
- Throws:
IOException
-
withResolved
protected com.fasterxml.jackson.databind.deser.std.MapDeserializer withResolved(com.fasterxml.jackson.databind.KeyDeserializer keyDeser, com.fasterxml.jackson.databind.jsontype.TypeDeserializer valueTypeDeser, com.fasterxml.jackson.databind.JsonDeserializer<?> valueDeser, com.fasterxml.jackson.databind.deser.NullValueProvider nuller, Set<String> ignorable) It resolves contextualisation to MapDeserializer and this is erroneous for EnrichedMapDeserializer and also we always need EnrichedMapDeserializer . The wrapped deserializers take care for other cases.- Overrides:
withResolved
in classcom.fasterxml.jackson.databind.deser.std.MapDeserializer
-
withResolved
protected com.fasterxml.jackson.databind.deser.std.MapDeserializer withResolved(com.fasterxml.jackson.databind.KeyDeserializer keyDeser, com.fasterxml.jackson.databind.jsontype.TypeDeserializer valueTypeDeser, com.fasterxml.jackson.databind.JsonDeserializer<?> valueDeser, com.fasterxml.jackson.databind.deser.NullValueProvider nuller, Set<String> ignorable, Set<String> includable) It resolves contextualisation to MapDeserializer and this is erroneous for EnrichedMapDeserializer and also we always need EnrichedMapDeserializer . The wrapped deserializers take care for other cases.- Overrides:
withResolved
in classcom.fasterxml.jackson.databind.deser.std.MapDeserializer
-