Class POJONode
- All Implemented Interfaces:
TreeNode,JsonSerializable,Serializable,Iterable<JsonNode>
ObjectMapper).- 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 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanasBoolean(boolean defaultValue) Method that will try to convert value of this node to a Java boolean.doubleasDouble(double defaultValue) Method that will try to convert value of this node to a Java double.intasInt(int defaultValue) Method that will try to convert value of this node to a Java int.longasLong(long defaultValue) Method that will try to convert value of this node to a Java long.asText()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.byte[]As it is possible that some implementations embed byte[] as POJONode (despite optimal beingBinaryNode), let's add support for exposing binary data here too.booleanEquality for node objects is defined as full (deep) value equality.Return the type of this nodegetPojo()Method that can be used to access the POJO this node wraps.inthashCode()final voidserialize(JsonGenerator gen, SerializerProvider ctxt) Method called to serialize node instances using given generator.Methods inherited from class com.fasterxml.jackson.databind.node.ValueNode
deepCopy, findParent, findParents, findValue, findValues, findValuesAsText, get, get, has, has, hasNonNull, hasNonNull, isEmpty, path, path, serializeWithTypeMethods inherited from class com.fasterxml.jackson.databind.node.BaseJsonNode
findPath, numberType, required, required, toPrettyString, toString, traverse, traverse, withArray, withObjectMethods inherited from class com.fasterxml.jackson.databind.JsonNode
asBoolean, asDouble, asInt, asLong, at, at, bigIntegerValue, 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, isMissingNode, isNull, isNumber, isObject, isPojo, isShort, isTextual, isValueNode, iterator, longValue, numberValue, properties, require, requiredAt, requiredAt, requireNonNull, 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
-
Constructor Details
-
POJONode
-
-
Method Details
-
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) -
binaryValue
As it is possible that some implementations embed byte[] as POJONode (despite optimal beingBinaryNode), let's add support for exposing binary data here too.- Overrides:
binaryValuein classJsonNode- Returns:
- Binary data this node contains, iff it is a binary node; null otherwise
- Throws:
IOException
-
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.
-
asBoolean
public boolean asBoolean(boolean defaultValue) Description copied from class:JsonNodeMethod that will try to convert value of this node to a Java boolean. JSON booleans map naturally; integer numbers other than 0 map to true, and 0 maps to false and Strings 'true' and 'false' map to corresponding values.If representation cannot be converted to a boolean value (including structured types like Objects and Arrays), specified defaultValue will be returned; no exceptions are thrown.
-
asInt
public int asInt(int defaultValue) Description copied from class:JsonNodeMethod that will try to convert value of this node to a Java int. Numbers are coerced using default Java rules; booleans convert to 0 (false) and 1 (true), and Strings are parsed using default Java language integer parsing rules.If representation cannot be converted to an int (including structured types like Objects and Arrays), specified defaultValue will be returned; no exceptions are thrown.
-
asLong
public long asLong(long defaultValue) Description copied from class:JsonNodeMethod that will try to convert value of this node to a Java long. Numbers are coerced using default Java rules; booleans convert to 0 (false) and 1 (true), and Strings are parsed using default Java language integer parsing rules.If representation cannot be converted to a long (including structured types like Objects and Arrays), specified defaultValue will be returned; no exceptions are thrown.
-
asDouble
public double asDouble(double defaultValue) Description copied from class:JsonNodeMethod that will try to convert value of this node to a Java double. Numbers are coerced using default Java rules; booleans convert to 0.0 (false) and 1.0 (true), and Strings are parsed using default Java language integer parsing rules.If representation cannot be converted to an int (including structured types like Objects and Arrays), specified defaultValue will be returned; no exceptions are thrown.
-
serialize
Description copied from class:BaseJsonNodeMethod called to serialize node instances using given generator.- Specified by:
serializein interfaceJsonSerializable- Specified by:
serializein classBaseJsonNode- Throws:
IOException
-
getPojo
Method that can be used to access the POJO this node wraps. -
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. -
hashCode
public int hashCode()- Specified by:
hashCodein classBaseJsonNode
-