public interface

TreeNode

com.fasterxml.jackson.core.TreeNode

Class Overview

Marker interface used to denote JSON Tree nodes, as far as the core package knows them (which is very little): mostly needed to allow ObjectCodec to have some level of interoperability. All real functionality is within JsonNode base class in mapper package.

Note that in Jackson 1.x JsonNode itself was part of core package: Jackson 2.x refactored this since conceptually Tree Model is part of mapper package, and so part visible to core package should be minimized.

Summary

Public Methods
abstract JsonToken asToken()
Method that can be used for efficient type detection when using stream abstraction for traversing nodes.
abstract JsonParser.NumberType numberType()
If this node is a numeric type (as per isNumeric()), returns native type that node uses to store the numeric value; otherwise returns null.
abstract JsonParser traverse()
Method for constructing a JsonParser instance for iterating over contents of the tree that this node is root of.

Public Methods

public abstract JsonToken asToken ()

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)

public abstract JsonParser.NumberType numberType ()

If this node is a numeric type (as per isNumeric()), returns native type that node uses to store the numeric value; otherwise returns null.

Returns
  • Type of number contained, if any; or null if node does not contain numeric value.

public abstract JsonParser traverse ()

Method for constructing a JsonParser instance for iterating over contents of the tree that this node is root of. Functionally equivalent to first serializing tree using ObjectCodec and then re-parsing but more efficient.