Class JacksonJsonNode
- java.lang.Object
-
- org.camunda.spin.Spin<SpinJsonNode>
-
- org.camunda.spin.json.SpinJsonNode
-
- org.camunda.spin.impl.json.jackson.JacksonJsonNode
-
public class JacksonJsonNode extends SpinJsonNode
Wrapper for a Jackson Json Tree Node.- Author:
- Thorben Lindhauer, Stefan Hentschel
-
-
Field Summary
Fields Modifier and Type Field Description protected JacksonJsonDataFormatdataFormatprotected com.fasterxml.jackson.databind.JsonNodejsonNode
-
Constructor Summary
Constructors Constructor Description JacksonJsonNode(com.fasterxml.jackson.databind.JsonNode jsonNode, JacksonJsonDataFormat dataFormat)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SpinJsonNodeappend(java.lang.Object property)java.lang.BooleanboolValue()booleancontains(java.lang.Object searchObject)SpinJsonNodedeleteProp(java.lang.String name)SpinJsonNodedeleteProp(java.util.List<java.lang.String> names)SpinList<SpinJsonNode>elements()java.util.List<java.lang.String>fieldNames()protected java.lang.IntegergetCorrectIndex(java.lang.Integer index)fetch correct array index if index is less than 0 ArrayNode will convert all negative integers into 0...java.lang.StringgetDataFormatName()com.fasterxml.jackson.databind.node.JsonNodeTypegetNodeType()booleanhasProp(java.lang.String name)java.lang.IntegerindexOf(java.lang.Object searchObject)SpinJsonNodeinsertAfter(java.lang.Object searchObject, java.lang.Object insertObject)SpinJsonNodeinsertAt(int index, java.lang.Object property)SpinJsonNodeinsertBefore(java.lang.Object searchObject, java.lang.Object insertObject)java.lang.BooleanisArray()java.lang.BooleanisBoolean()java.lang.BooleanisNull()java.lang.BooleanisNumber()booleanisObject()java.lang.BooleanisString()java.lang.BooleanisValue()SpinJsonPathQueryjsonPath(java.lang.String expression)java.lang.IntegerlastIndexOf(java.lang.Object searchObject)protected intlookupArray(com.fasterxml.jackson.databind.JsonNode searchNode, int direction)<C> CmapTo(com.fasterxml.jackson.databind.JavaType type)Maps the json represented by this object to a java object of the given type.
Note: the desired target type is not validated and needs to be trusted.<C> CmapTo(java.lang.Class<C> type)Maps the json represented by this object to a java object of the given type.
Note: the desired target type is not validated and needs to be trusted.<C> CmapTo(java.lang.String type)Maps the json represented by this object to a java object of the given type.java.lang.NumbernumberValue()SpinJsonNodeprop(java.lang.String name)SpinJsonNodeprop(java.lang.String name, boolean newProperty)SpinJsonNodeprop(java.lang.String name, float newProperty)SpinJsonNodeprop(java.lang.String name, int newProperty)SpinJsonNodeprop(java.lang.String name, long newProperty)SpinJsonNodeprop(java.lang.String name, java.lang.Boolean newProperty)SpinJsonNodeprop(java.lang.String name, java.lang.Number newProperty)SpinJsonNodeprop(java.lang.String name, java.lang.String newProperty)SpinJsonNodeprop(java.lang.String name, java.util.List<java.lang.Object> newProperty)SpinJsonNodeprop(java.lang.String name, java.util.Map<java.lang.String,java.lang.Object> newProperty)SpinJsonNodeprop(java.lang.String name, SpinJsonNode newProperty)SpinJsonNodepropList(java.lang.String name, java.util.List<java.lang.Object> newProperty)SpinJsonNoderemove(java.lang.Object property)SpinJsonNoderemoveAt(int index)SpinJsonNoderemoveLast(java.lang.Object property)java.lang.StringstringValue()java.lang.StringtoString()com.fasterxml.jackson.databind.JsonNodeunwrap()java.lang.Objectvalue()voidwriteToWriter(java.io.Writer writer)
-
-
-
Field Detail
-
jsonNode
protected final com.fasterxml.jackson.databind.JsonNode jsonNode
-
dataFormat
protected final JacksonJsonDataFormat dataFormat
-
-
Constructor Detail
-
JacksonJsonNode
public JacksonJsonNode(com.fasterxml.jackson.databind.JsonNode jsonNode, JacksonJsonDataFormat dataFormat)
-
-
Method Detail
-
getDataFormatName
public java.lang.String getDataFormatName()
- Specified by:
getDataFormatNamein classSpin<SpinJsonNode>
-
unwrap
public com.fasterxml.jackson.databind.JsonNode unwrap()
- Specified by:
unwrapin classSpin<SpinJsonNode>
-
toString
public java.lang.String toString()
- Specified by:
toStringin classSpin<SpinJsonNode>
-
writeToWriter
public void writeToWriter(java.io.Writer writer)
- Specified by:
writeToWriterin classSpin<SpinJsonNode>
-
getCorrectIndex
protected java.lang.Integer getCorrectIndex(java.lang.Integer index)
fetch correct array index if index is less than 0 ArrayNode will convert all negative integers into 0...- Parameters:
index- wanted index- Returns:
Integernew index
-
lookupArray
protected int lookupArray(com.fasterxml.jackson.databind.JsonNode searchNode, int direction)
-
indexOf
public java.lang.Integer indexOf(java.lang.Object searchObject)
- Specified by:
indexOfin classSpinJsonNode
-
lastIndexOf
public java.lang.Integer lastIndexOf(java.lang.Object searchObject)
- Specified by:
lastIndexOfin classSpinJsonNode
-
contains
public boolean contains(java.lang.Object searchObject)
- Specified by:
containsin classSpinJsonNode
-
isObject
public boolean isObject()
- Specified by:
isObjectin classSpinJsonNode
-
hasProp
public boolean hasProp(java.lang.String name)
- Specified by:
hasPropin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name)
- Specified by:
propin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name, java.lang.String newProperty)
- Specified by:
propin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name, java.lang.Number newProperty)
- Specified by:
propin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name, int newProperty)
- Specified by:
propin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name, float newProperty)
- Specified by:
propin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name, long newProperty)
- Specified by:
propin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name, boolean newProperty)
- Specified by:
propin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name, java.lang.Boolean newProperty)
- Specified by:
propin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name, java.util.List<java.lang.Object> newProperty)
- Specified by:
propin classSpinJsonNode
-
propList
public SpinJsonNode propList(java.lang.String name, java.util.List<java.lang.Object> newProperty)
-
prop
public SpinJsonNode prop(java.lang.String name, java.util.Map<java.lang.String,java.lang.Object> newProperty)
- Specified by:
propin classSpinJsonNode
-
prop
public SpinJsonNode prop(java.lang.String name, SpinJsonNode newProperty)
- Specified by:
propin classSpinJsonNode
-
deleteProp
public SpinJsonNode deleteProp(java.lang.String name)
- Specified by:
deletePropin classSpinJsonNode
-
deleteProp
public SpinJsonNode deleteProp(java.util.List<java.lang.String> names)
- Specified by:
deletePropin classSpinJsonNode
-
append
public SpinJsonNode append(java.lang.Object property)
- Specified by:
appendin classSpinJsonNode
-
insertAt
public SpinJsonNode insertAt(int index, java.lang.Object property)
- Specified by:
insertAtin classSpinJsonNode
-
insertBefore
public SpinJsonNode insertBefore(java.lang.Object searchObject, java.lang.Object insertObject)
- Specified by:
insertBeforein classSpinJsonNode
-
insertAfter
public SpinJsonNode insertAfter(java.lang.Object searchObject, java.lang.Object insertObject)
- Specified by:
insertAfterin classSpinJsonNode
-
remove
public SpinJsonNode remove(java.lang.Object property)
- Specified by:
removein classSpinJsonNode
-
removeLast
public SpinJsonNode removeLast(java.lang.Object property)
- Specified by:
removeLastin classSpinJsonNode
-
removeAt
public SpinJsonNode removeAt(int index)
- Specified by:
removeAtin classSpinJsonNode
-
isBoolean
public java.lang.Boolean isBoolean()
- Specified by:
isBooleanin classSpinJsonNode
-
boolValue
public java.lang.Boolean boolValue()
- Specified by:
boolValuein classSpinJsonNode
-
isNumber
public java.lang.Boolean isNumber()
- Specified by:
isNumberin classSpinJsonNode
-
numberValue
public java.lang.Number numberValue()
- Specified by:
numberValuein classSpinJsonNode
-
isString
public java.lang.Boolean isString()
- Specified by:
isStringin classSpinJsonNode
-
stringValue
public java.lang.String stringValue()
- Specified by:
stringValuein classSpinJsonNode
-
isNull
public java.lang.Boolean isNull()
- Specified by:
isNullin classSpinJsonNode
-
isValue
public java.lang.Boolean isValue()
- Specified by:
isValuein classSpinJsonNode
-
value
public java.lang.Object value()
- Specified by:
valuein classSpinJsonNode
-
isArray
public java.lang.Boolean isArray()
- Specified by:
isArrayin classSpinJsonNode
-
elements
public SpinList<SpinJsonNode> elements()
- Specified by:
elementsin classSpinJsonNode
-
fieldNames
public java.util.List<java.lang.String> fieldNames()
- Specified by:
fieldNamesin classSpinJsonNode
-
getNodeType
public com.fasterxml.jackson.databind.node.JsonNodeType getNodeType()
-
jsonPath
public SpinJsonPathQuery jsonPath(java.lang.String expression)
- Specified by:
jsonPathin classSpinJsonNode
-
mapTo
public <C> C mapTo(java.lang.Class<C> type)
Maps the json represented by this object to a java object of the given type.
Note: the desired target type is not validated and needs to be trusted.- Specified by:
mapToin classSpin<SpinJsonNode>- Throws:
SpinJsonException- if the json representation cannot be mapped to the specified type
-
mapTo
public <C> C mapTo(java.lang.String type)
Maps the json represented by this object to a java object of the given type. Argument is to be supplied in Jackson's canonical type string format (seeResolvedType.toCanonical()).
Note: the desired target type is not validated and needs to be trusted.- Specified by:
mapToin classSpin<SpinJsonNode>- Throws:
SpinJsonException- if the json representation cannot be mapped to the specified typeSpinJsonDataFormatException- if the parameter does not match a valid type
-
mapTo
public <C> C mapTo(com.fasterxml.jackson.databind.JavaType type)
Maps the json represented by this object to a java object of the given type.
Note: the desired target type is not validated and needs to be trusted.- Throws:
SpinJsonException- if the json representation cannot be mapped to the specified type
-
-