com.fasterxml.jackson.databind.node

Class MissingNode

  • All Implemented Interfaces:
    com.fasterxml.jackson.core.TreeNode, JsonSerializable, Serializable, Iterable<JsonNode>


    public final class MissingNode
    extends ValueNode
    This singleton node class is generated to denote "missing nodes" along paths that do not exist. For example, if a path via element of an array is requested for an element outside range of elements in the array; or for a non-array value, result will be reference to this node.

    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:
    Serialized Form
    • Constructor Detail

      • MissingNode

        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)

    • Method Detail

      • readResolve

        protected Object readResolve()
      • isMissingNode

        public boolean isMissingNode()
        Specified by:
        isMissingNode in interface com.fasterxml.jackson.core.TreeNode
        Overrides:
        isMissingNode in class JsonNode
      • deepCopy

        public <T extends JsonNode> T deepCopy()
        Description copied from class: ValueNode
        All current value nodes are immutable, so we can just return them as is.
        Overrides:
        deepCopy in class ValueNode
        Returns:
        Node that is either a copy of this node (and all non-leaf children); or, for immutable leaf nodes, node itself.
      • getInstance

        public static MissingNode getInstance()
      • asToken

        public com.fasterxml.jackson.core.JsonToken asToken()
        Description copied from class: BaseJsonNode
        Method that can be used for efficient type detection when using stream abstraction for traversing nodes. Will return the first JsonToken that equivalent stream event would produce (for most nodes there is just one token but for structured/container types multiple)
        Specified by:
        asToken in interface com.fasterxml.jackson.core.TreeNode
        Specified by:
        asToken in class ValueNode
      • asText

        public String asText()
        Description copied from class: JsonNode
        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.
        Specified by:
        asText in class JsonNode
      • asText

        public String asText(String defaultValue)
        Description copied from class: JsonNode
        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.
        Overrides:
        asText in class JsonNode
      • equals

        public boolean equals(Object o)
        Description copied from class: JsonNode
        Equality 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.

        Specified by:
        equals in class JsonNode

Copyright © 2008–2019 FasterXML. All rights reserved.