public interface JNode extends java.lang.Iterable<JNode>
Modifier and Type | Method and Description |
---|---|
<K,T extends JNode> |
addNode(K key,
T node)
Add element to composite node.
|
<T extends JNode> |
addNode(T node)
Add element to composite node (without name).
|
JNode |
clone()
Return copy of this object, detached from node tree.
|
java.util.List<JNode> |
getChildren()
Returns set of all children of composite (Object or Array) node.
|
<K> JNode |
getNode(K selector)
Returns child node of this node by selector.
|
JNode |
getParent()
Return parent node of this node in node tree.
|
JNodeType |
getType()
Returns a type of the node.
|
<V> V |
getValue()
Return value of JValueNode.
|
<V> V |
getValue(java.lang.Class<V> type)
Return value of JValueNode.
|
java.util.Iterator<JNode> |
iterator()
Returns iterator over elements of composite node.
|
<K> void |
removeNode(K selector)
Remove child node of this node by selector.
|
<N extends JNode> |
removeNode(N node)
Remove child node of this node.
|
<V> void |
setValue(V value)
Set value of V type for this node.
|
java.lang.String |
toJson()
Return this node as a JSON document.
|
java.lang.String |
toString(java.lang.String indent,
boolean showPath,
boolean deep)
Return printable (well formatted) text represents this node.
|
JNodeType getType()
<K> JNode getNode(K selector)
K
- type of the selector: Integer or String.selector
- is index or key.<T extends JNode> void addNode(T node)
T
- class of added node.node
- to be added.<K,T extends JNode> void addNode(K key, T node)
T
- class of added node.K
- class of key (String for field name, Integer for node in JArray).key
- name of the fieldnode
- to be added.<K> void removeNode(K selector)
K
- type of the selector: Integer or String.selector
- is index or key.<N extends JNode> void removeNode(N node)
N
- type of nodenode
- to remove<V> V getValue()
V
- type of value<V> void setValue(V value)
V
- type of valuevalue
- to set for the node.<V> V getValue(java.lang.Class<V> type)
V
- type of returned value: Integer, Boolean, Float, Double or String.type
- class that represents returned value.JNode getParent()
java.lang.String toString(java.lang.String indent, boolean showPath, boolean deep)
indent
- represent indentation for formatting text.showPath
- if true then the method insert path information in output.deep
- if true then the method will output children recursively.java.lang.String toJson()
java.util.Iterator<JNode> iterator()
iterator
in interface java.lang.Iterable<JNode>
Iterable
java.util.List<JNode> getChildren()
JNode clone()