public final class MissingNode extends ValueNode
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.
JsonSerializable.Base
Modifier | Constructor and Description |
---|---|
protected |
MissingNode()
NOTE: visibility raised to `protected` in 2.9.3 to allow custom subtypes
(which may not be greatest idea ever to have but was requested)
|
Modifier and Type | Method and Description |
---|---|
String |
asText()
Method that will return a valid String representation of
the container value, if the node is a value node
(method
JsonNode.isValueNode() returns true),
otherwise empty String. |
String |
asText(String defaultValue)
Method similar to
JsonNode.asText() , except that it will return
defaultValue in cases where null value would be returned;
either for missing nodes (trying to access missing property, or element
at invalid item for array) or explicit nulls. |
JsonToken |
asToken()
Method that can be used for efficient type detection
when using stream abstraction for traversing nodes.
|
<T extends JsonNode> |
deepCopy()
All current value nodes are immutable, so we can just return
them as is.
|
boolean |
equals(Object o)
Equality for node objects is defined as full (deep) value
equality.
|
static MissingNode |
getInstance() |
JsonNodeType |
getNodeType()
Return the type of this node
|
int |
hashCode() |
boolean |
isMissingNode() |
protected Object |
readResolve() |
JsonNode |
require()
Method that may be called to verify that
this node is NOT so-called
"missing node": that is, one for which JsonNode.isMissingNode() returns true . |
JsonNode |
requireNonNull()
Method that may be called to verify that
this node is neither so-called
"missing node" (that is, one for which JsonNode.isMissingNode() returns true )
nor "null node" (one for which JsonNode.isNull() returns true ). |
void |
serialize(JsonGenerator g,
SerializerProvider provider)
Method called to serialize node instances using given generator.
|
void |
serializeWithType(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.
|
String |
toPrettyString()
Alternative to
JsonNode.toString() that will serialize this node using
Jackson default pretty-printer. |
String |
toString()
Method that will produce (as of Jackson 2.10) valid JSON using
default settings of databind, as String.
|
_at, findParent, findParents, findValue, findValues, findValuesAsText, get, get, has, has, hasNonNull, hasNonNull, isEmpty, path, path
findPath, numberType, required, required, traverse, traverse
_reportRequiredViolation, _this, 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, requiredAt, requiredAt, shortValue, size, textValue, with, withArray
isEmpty
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
forEach, spliterator
protected MissingNode()
NOTE: visibility raised to `protected` in 2.9.3 to allow custom subtypes (which may not be greatest idea ever to have but was requested)
protected Object readResolve()
public boolean isMissingNode()
isMissingNode
in interface TreeNode
isMissingNode
in class JsonNode
public <T extends JsonNode> T deepCopy()
ValueNode
public static MissingNode getInstance()
public JsonNodeType getNodeType()
JsonNode
getNodeType
in class JsonNode
JsonNodeType
enum valuepublic JsonToken asToken()
BaseJsonNode
JsonToken
that equivalent
stream event would produce (for most nodes there is just
one token but for structured/container types multiple)public String asText()
JsonNode
JsonNode.isValueNode()
returns true),
otherwise empty String.public String asText(String defaultValue)
JsonNode
JsonNode.asText()
, except that it will return
defaultValue
in cases where null value would be returned;
either for missing nodes (trying to access missing property, or element
at invalid item for array) or explicit nulls.public final void serialize(JsonGenerator g, SerializerProvider provider) throws IOException, JsonProcessingException
BaseJsonNode
serialize
in interface JsonSerializable
serialize
in class BaseJsonNode
IOException
JsonProcessingException
public void serializeWithType(JsonGenerator g, SerializerProvider provider, TypeSerializer typeSer) throws IOException, JsonProcessingException
BaseJsonNode
serializeWithType
in interface JsonSerializable
serializeWithType
in class ValueNode
IOException
JsonProcessingException
public JsonNode require()
JsonNode
this
node is NOT so-called
"missing node": that is, one for which JsonNode.isMissingNode()
returns true
.
If not missing node, this
is returned to allow chaining; otherwise
IllegalArgumentException
is thrown.public JsonNode requireNonNull()
JsonNode
this
node is neither so-called
"missing node" (that is, one for which JsonNode.isMissingNode()
returns true
)
nor "null node" (one for which JsonNode.isNull()
returns true
).
If non-null non-missing node, this
is returned to allow chaining; otherwise
IllegalArgumentException
is thrown.requireNonNull
in class JsonNode
this
node to allow chainingpublic int hashCode()
hashCode
in class BaseJsonNode
public String toString()
JsonNode
ObjectMapper
or ObjectWriter
to 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.
toString
in class BaseJsonNode
public String toPrettyString()
JsonNode
JsonNode.toString()
that will serialize this node using
Jackson default pretty-printer.toPrettyString
in class BaseJsonNode
public boolean equals(Object o)
JsonNode
Note: marked as abstract to ensure all implementation
classes define it properly and not rely on definition
from Object
.
Copyright © 2008–2020 FasterXML. All rights reserved.