Class XmlTextDeserializer
- 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
public class XmlTextDeserializer
extends com.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
Delegating deserializer that is used in the special cases where
we may sometimes see a "plain" String value but need to map it
as if it was a property of POJO. The impedance is introduced by
heuristic conversion from XML events into rough JSON equivalents;
and this is one work-around that can only be done after the fact.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonDeserializer
com.fasterxml.jackson.databind.JsonDeserializer.None
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final com.fasterxml.jackson.databind.deser.ValueInstantiator
protected final com.fasterxml.jackson.databind.deser.SettableBeanProperty
Actual property that is indicated to be of type "XML Text" (and is the only element-valued property)protected final int
Property index of the "XML text property"; needed for finding actual property instance after resolution and contextualization: instance may change, but index will remain constant.private static final long
Fields inherited from class com.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
_delegatee
Fields inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer
_valueClass, _valueType, F_MASK_ACCEPT_ARRAYS, F_MASK_INT_COERCIONS
-
Constructor Summary
ConstructorsConstructorDescriptionXmlTextDeserializer
(com.fasterxml.jackson.databind.deser.BeanDeserializerBase delegate, int textPropIndex) XmlTextDeserializer
(com.fasterxml.jackson.databind.deser.BeanDeserializerBase delegate, com.fasterxml.jackson.databind.deser.SettableBeanProperty prop) -
Method Summary
Modifier and TypeMethodDescriptionprotected com.fasterxml.jackson.databind.deser.BeanDeserializerBase
_verifyDeserType
(com.fasterxml.jackson.databind.JsonDeserializer<?> deser) com.fasterxml.jackson.databind.JsonDeserializer
<?> createContextual
(com.fasterxml.jackson.databind.DeserializationContext ctxt, com.fasterxml.jackson.databind.BeanProperty property) deserialize
(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt) deserialize
(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object bean) deserializeWithType
(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, com.fasterxml.jackson.databind.jsontype.TypeDeserializer typeDeserializer) protected com.fasterxml.jackson.databind.JsonDeserializer
<?> newDelegatingInstance
(com.fasterxml.jackson.databind.JsonDeserializer<?> newDelegatee0) Methods inherited from class com.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
findBackReference, getAbsentValue, getDelegatee, getEmptyAccessPattern, getEmptyValue, getKnownPropertyNames, getNullAccessPattern, getNullValue, getObjectIdReader, isCachable, logicalType, replaceDelegatee, resolve, supportsUpdate, unwrappingDeserializer
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, getValueInstantiator, getValueType, getValueType, handledType, handleMissingEndArrayForSingle, handleNestedArrayForSingle, handleUnknownProperty, isDefaultDeserializer, isDefaultKeyDeserializer
Methods inherited from class com.fasterxml.jackson.databind.JsonDeserializer
deserializeWithType, getEmptyValue, getNullValue
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
_xmlTextPropertyIndex
protected final int _xmlTextPropertyIndexProperty index of the "XML text property"; needed for finding actual property instance after resolution and contextualization: instance may change, but index will remain constant. -
_xmlTextProperty
protected final com.fasterxml.jackson.databind.deser.SettableBeanProperty _xmlTextPropertyActual property that is indicated to be of type "XML Text" (and is the only element-valued property) -
_valueInstantiator
protected final com.fasterxml.jackson.databind.deser.ValueInstantiator _valueInstantiator
-
-
Constructor Details
-
XmlTextDeserializer
public XmlTextDeserializer(com.fasterxml.jackson.databind.deser.BeanDeserializerBase delegate, com.fasterxml.jackson.databind.deser.SettableBeanProperty prop) -
XmlTextDeserializer
public XmlTextDeserializer(com.fasterxml.jackson.databind.deser.BeanDeserializerBase delegate, int textPropIndex)
-
-
Method Details
-
newDelegatingInstance
protected com.fasterxml.jackson.databind.JsonDeserializer<?> newDelegatingInstance(com.fasterxml.jackson.databind.JsonDeserializer<?> newDelegatee0) - Specified by:
newDelegatingInstance
in classcom.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
-
createContextual
public com.fasterxml.jackson.databind.JsonDeserializer<?> createContextual(com.fasterxml.jackson.databind.DeserializationContext ctxt, com.fasterxml.jackson.databind.BeanProperty property) throws com.fasterxml.jackson.databind.JsonMappingException - Specified by:
createContextual
in interfacecom.fasterxml.jackson.databind.deser.ContextualDeserializer
- Overrides:
createContextual
in classcom.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
deserialize
public Object deserialize(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt) throws IOException - Overrides:
deserialize
in classcom.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
- Throws:
IOException
-
deserialize
public Object deserialize(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object bean) throws IOException - Overrides:
deserialize
in classcom.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
- Throws:
IOException
-
deserializeWithType
public Object deserializeWithType(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, com.fasterxml.jackson.databind.jsontype.TypeDeserializer typeDeserializer) throws IOException - Overrides:
deserializeWithType
in classcom.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
- Throws:
IOException
-
_verifyDeserType
protected com.fasterxml.jackson.databind.deser.BeanDeserializerBase _verifyDeserType(com.fasterxml.jackson.databind.JsonDeserializer<?> deser)
-