Class XmlReadContext
java.lang.Object
com.fasterxml.jackson.core.JsonStreamContext
com.fasterxml.jackson.dataformat.xml.deser.XmlReadContext
Extension of
JsonStreamContext, which implements
core methods needed, and adds small amount of additional
state data we need.
Almost same as standard JsonReaderContext, but
custom version needed to be able to keep track of names
of properties that need wrapping; this is needed to
support wrapped/unwrapped Collection/array values.
-
Field Summary
Fields inherited from class com.fasterxml.jackson.core.JsonStreamContext
TYPE_ARRAY, TYPE_OBJECT, TYPE_ROOT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal XmlReadContextcreateChildArrayContext(int lineNr, int colNr) final XmlReadContextcreateChildObjectContext(int lineNr, int colNr) static XmlReadContextstatic XmlReadContextcreateRootContext(int lineNr, int colNr) final StringMethod for accessing name associated with the current location.Method for accessing currently active value being used by data-binding (as the source of streaming data to write, or destination of data being read), at this level in hierarchy.final XmlReadContextAccessor for finding parent context of this context; will return null for root context.booleanvoidsetCurrentName(String name) voidMethod to call to pass value to be returned viaJsonStreamContext.getCurrentValue(); typically called indirectly throughJsonParser.setCurrentValue(java.lang.Object)orJsonGenerator.setCurrentValue(java.lang.Object)).voidsetNamesToWrap(Set<String> namesToWrap) booleanshouldWrap(String localName) final JsonLocationstartLocation(ContentReference srcRef) Optional method that may be used to access starting location of this context: for example, in case of JSON `Object` context, offset at which `[` token was read or written.final StringtoString()Overridden to provide developer readable "JsonPath" representation of the context.final voidMethod called to mark start of new value, mostly to update `index` for Array and Root contexts.Methods inherited from class com.fasterxml.jackson.core.JsonStreamContext
getCurrentIndex, getEntryCount, getNestingDepth, getStartLocation, getTypeDesc, hasCurrentIndex, hasPathSegment, inArray, inObject, inRoot, pathAsPointer, pathAsPointer, typeDesc
-
Constructor Details
-
XmlReadContext
-
-
Method Details
-
getCurrentValue
Description copied from class:JsonStreamContextMethod for accessing currently active value being used by data-binding (as the source of streaming data to write, or destination of data being read), at this level in hierarchy.Note that "current value" is NOT populated (or used) by Streaming parser or generator; it is only used by higher-level data-binding functionality. The reason it is included here is that it can be stored and accessed hierarchically, and gets passed through data-binding.
- Overrides:
getCurrentValuein classJsonStreamContext- Returns:
- Currently active value, if one has been assigned.
-
setCurrentValue
Description copied from class:JsonStreamContextMethod to call to pass value to be returned viaJsonStreamContext.getCurrentValue(); typically called indirectly throughJsonParser.setCurrentValue(java.lang.Object)orJsonGenerator.setCurrentValue(java.lang.Object)).- Overrides:
setCurrentValuein classJsonStreamContext- Parameters:
v- Current value to assign to this context
-
createRootContext
-
createRootContext
-
createChildArrayContext
-
createChildObjectContext
-
getCurrentName
Description copied from class:JsonStreamContextMethod for accessing name associated with the current location. Non-null forFIELD_NAMEand value events that directly follow field names; null for root level and array values.- Specified by:
getCurrentNamein classJsonStreamContext- Returns:
- Current field name within context, if any;
nullif none
-
hasCurrentName
public boolean hasCurrentName()- Overrides:
hasCurrentNamein classJsonStreamContext- Returns:
Trueif a call toJsonStreamContext.getCurrentName()would return non-nullname;falseotherwise
-
getParent
Description copied from class:JsonStreamContextAccessor for finding parent context of this context; will return null for root context.- Specified by:
getParentin classJsonStreamContext- Returns:
- Parent context of this context, if any;
nullfor Root contexts
-
startLocation
Description copied from class:JsonStreamContextOptional method that may be used to access starting location of this context: for example, in case of JSON `Object` context, offset at which `[` token was read or written. Often used for error reporting purposes. Implementations that do not keep track of such location are expected to returnJsonLocation.NA; this is what the default implementation does.- Overrides:
startLocationin classJsonStreamContext- Parameters:
srcRef- Source reference needed to construct location instance- Returns:
- Location pointing to the point where the context start marker was found
-
valueStarted
public final void valueStarted()Method called to mark start of new value, mostly to update `index` for Array and Root contexts.- Since:
- 2.12
-
setCurrentName
-
setNamesToWrap
-
shouldWrap
-
toString
Overridden to provide developer readable "JsonPath" representation of the context.- Overrides:
toStringin classJsonStreamContext- Returns:
- Simple developer-readable description this context layer
(note: NOT constructed with parents, unlike
JsonStreamContext.pathAsPointer())
-