Class MissingNode
- All Implemented Interfaces:
TreeNode,JsonSerializable,Serializable,Iterable<JsonNode>
In most respects this placeholder node will act as NullNode;
for example, for purposes of value conversions, value is considered
to be null and represented as value zero when used for numeric
conversions.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonNode
JsonNode.OverwriteModeNested classes/interfaces inherited from interface com.fasterxml.jackson.databind.JsonSerializable
JsonSerializable.Base -
Method Summary
Modifier and TypeMethodDescriptionasText()Method that will return a valid String representation of the container value, if the node is a value node (methodJsonNode.isValueNode()returns true), otherwise empty String.Returns the text value of this node or the provideddefaultValueif this node does not have a text value.asToken()Method that can be used for efficient type detection when using stream abstraction for traversing nodes.<T extends JsonNode>
TdeepCopy()All current value nodes are immutable, so we can just return them as is.booleanEquality for node objects is defined as full (deep) value equality.static MissingNodeReturn the type of this nodeinthashCode()booleanMethod that returns true for "virtual" nodes which represent missing entries constructed by path accessor methods when there is no actual node matching given criteria.require()Method that may be called to verify thatthisnode is NOT so-called "missing node": that is, one for whichJsonNode.isMissingNode()returnstrue.Method that may be called to verify thatthisnode is neither so-called "missing node" (that is, one for whichJsonNode.isMissingNode()returnstrue) nor "null node" (one for whichJsonNode.isNull()returnstrue).final voidserialize(JsonGenerator g, SerializerProvider provider) Method called to serialize node instances using given generator.voidserializeWithType(JsonGenerator g, SerializerProvider provider, TypeSerializer typeSer) Type information is needed, even if JsonNode instances are "plain" JSON, since they may be mixed with other types.Alternative toJsonNode.toString()that will serialize this node using Jackson default pretty-printer.toString()Method that will produce (as of Jackson 2.10) valid JSON using default settings of databind, as String.Methods inherited from class com.fasterxml.jackson.databind.node.ValueNode
findParent, findParents, findValue, findValues, findValuesAsText, get, get, has, has, hasNonNull, hasNonNull, isEmpty, path, pathMethods inherited from class com.fasterxml.jackson.databind.node.BaseJsonNode
findPath, numberType, required, required, traverse, traverse, withArray, withObjectMethods inherited from class com.fasterxml.jackson.databind.JsonNode
asBoolean, asBoolean, asDouble, asDouble, asInt, asInt, asLong, asLong, at, at, bigIntegerValue, binaryValue, booleanValue, canConvertToExactIntegral, canConvertToInt, canConvertToLong, decimalValue, doubleValue, elements, equals, fieldNames, fields, findParents, findValues, findValuesAsText, floatValue, intValue, isArray, isBigDecimal, isBigInteger, isBinary, isBoolean, isContainerNode, isDouble, isFloat, isFloatingPointNumber, isInt, isIntegralNumber, isLong, isNull, isNumber, isObject, isPojo, isShort, isTextual, isValueNode, iterator, longValue, numberValue, properties, requiredAt, requiredAt, shortValue, size, textValue, with, withArray, withArray, withArray, withArrayProperty, withObject, withObject, withObject, withObjectPropertyMethods inherited from class com.fasterxml.jackson.databind.JsonSerializable.Base
isEmptyMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
isMissingNode
public boolean isMissingNode()Description copied from interface:TreeNodeMethod that returns true for "virtual" nodes which represent missing entries constructed by path accessor methods when there is no actual node matching given criteria.Note: one and only one of methods
TreeNode.isValueNode(),TreeNode.isContainerNode()andTreeNode.isMissingNode()ever returns true for any given node.- Specified by:
isMissingNodein interfaceTreeNode- Overrides:
isMissingNodein classJsonNode- Returns:
Trueif this node represents a "missing" node
-
deepCopy
Description copied from class:ValueNodeAll current value nodes are immutable, so we can just return them as is. -
getInstance
-
getNodeType
Description copied from class:JsonNodeReturn the type of this node- Specified by:
getNodeTypein classJsonNode- Returns:
- the node type as a
JsonNodeTypeenum value
-
asToken
Description copied from class:BaseJsonNodeMethod that can be used for efficient type detection when using stream abstraction for traversing nodes. Will return the firstJsonTokenthat equivalent stream event would produce (for most nodes there is just one token but for structured/container types multiple) -
asText
Description copied from class:JsonNodeMethod that will return a valid String representation of the container value, if the node is a value node (methodJsonNode.isValueNode()returns true), otherwise empty String. -
asText
Description copied from class:JsonNodeReturns the text value of this node or the provideddefaultValueif this node does not have a text value. Useful for nodes that areMissingNodeorNullNode, ensuring a default value is returned instead of null or missing indicators.NOTE: This was deprecated in 2.17.0, but as discussed through [databind#4471], was un-deprecated in 2.17.1.
-
serialize
Description copied from class:BaseJsonNodeMethod called to serialize node instances using given generator.- Specified by:
serializein interfaceJsonSerializable- Specified by:
serializein classBaseJsonNode- Throws:
IOException
-
serializeWithType
public void serializeWithType(JsonGenerator g, SerializerProvider provider, TypeSerializer typeSer) throws IOException Description copied from class:BaseJsonNodeType information is needed, even if JsonNode instances are "plain" JSON, since they may be mixed with other types.- Specified by:
serializeWithTypein interfaceJsonSerializable- Overrides:
serializeWithTypein classValueNode- Throws:
IOException
-
require
Description copied from class:JsonNodeMethod that may be called to verify thatthisnode is NOT so-called "missing node": that is, one for whichJsonNode.isMissingNode()returnstrue. If not missing node,thisis returned to allow chaining; otherwiseIllegalArgumentExceptionis thrown. -
requireNonNull
Description copied from class:JsonNodeMethod that may be called to verify thatthisnode is neither so-called "missing node" (that is, one for whichJsonNode.isMissingNode()returnstrue) nor "null node" (one for whichJsonNode.isNull()returnstrue). If non-null non-missing node,thisis returned to allow chaining; otherwiseIllegalArgumentExceptionis thrown.- Overrides:
requireNonNullin classJsonNode- Returns:
thisnode to allow chaining
-
hashCode
public int hashCode()- Specified by:
hashCodein classBaseJsonNode
-
toString
Description copied from class:JsonNodeMethod that will produce (as of Jackson 2.10) valid JSON using default settings of databind, as String. If you want other kinds of JSON output (or output formatted using one of other Jackson-supported data formats) make sure to useObjectMapperorObjectWriterto serialize an instance, for example:String json = objectMapper.writeValueAsString(rootNode);
Note: method defined as abstract to ensure all implementation classes explicitly implement method, instead of relying on
Object.toString()definition.- Overrides:
toStringin classBaseJsonNode
-
toPrettyString
Description copied from class:JsonNodeAlternative toJsonNode.toString()that will serialize this node using Jackson default pretty-printer.- Overrides:
toPrettyStringin classBaseJsonNode
-
equals
Description copied from class:JsonNodeEquality for node objects is defined as full (deep) value equality. This means that it is possible to compare complete JSON trees for equality by comparing equality of root nodes.Note: marked as abstract to ensure all implementation classes define it properly and not rely on definition from
Object.
-