Class XmlTextDeserializer

java.lang.Object
com.fasterxml.jackson.databind.JsonDeserializer<T>
com.fasterxml.jackson.databind.deser.std.StdDeserializer<Object>
com.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
com.fasterxml.jackson.dataformat.xml.deser.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

    Fields
    Modifier and Type
    Field
    Description
    protected 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

    Constructors
    Constructor
    Description
    XmlTextDeserializer(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 Type
    Method
    Description
    protected 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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • _xmlTextPropertyIndex

      protected final int _xmlTextPropertyIndex
      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.
    • _xmlTextProperty

      protected final com.fasterxml.jackson.databind.deser.SettableBeanProperty _xmlTextProperty
      Actual 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 class com.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 interface com.fasterxml.jackson.databind.deser.ContextualDeserializer
      Overrides:
      createContextual in class com.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 class com.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 class com.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 class com.fasterxml.jackson.databind.deser.std.DelegatingDeserializer
      Throws:
      IOException
    • _verifyDeserType

      protected com.fasterxml.jackson.databind.deser.BeanDeserializerBase _verifyDeserType(com.fasterxml.jackson.databind.JsonDeserializer<?> deser)