Package JsonFse
Class NodeElements
- java.lang.Object
-
- JsonFse.Node
-
- JsonFse.NodeElements
-
public class NodeElements extends Node
Holds the elements of a NodeArray.- Author:
- Friedemann Seebass
-
-
Field Summary
Fields Modifier and Type Field Description protected int
mIdx
protected java.util.ArrayList<NodeValue>
mValueList
-
Constructor Summary
Constructors Constructor Description NodeElements()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
add(NodeValue nv)
Appends the value to the end of the element list.NodeValue
get(int idx)
If the node is of type NodeObj or NodeArray get() delivers the element with index idx.java.lang.String
getAsString(int columnOffset, boolean hasLabel)
Delivers recursively a node and all of its children as a formatted string.NodeValue
getNext()
Returns the next NodeValue element from mValueList.void
setIdx(int idx)
Sets the index used by the getNext() method.int
size()
Returns the number of elements in an object of NodeElements.-
Methods inherited from class JsonFse.Node
getAsString, getAsStrippedString, indent
-
-
-
-
Field Detail
-
mValueList
protected java.util.ArrayList<NodeValue> mValueList
-
mIdx
protected int mIdx
-
-
Method Detail
-
add
protected void add(NodeValue nv)
Appends the value to the end of the element list.- Parameters:
nv
- The value to add.
-
getAsString
public java.lang.String getAsString(int columnOffset, boolean hasLabel)
Description copied from class:Node
Delivers recursively a node and all of its children as a formatted string. Child nodes and their elements are indented according to the following rules:- Each pair (of label and value) is in its own line.
- Values containing sub elements (i. e. JSON objects and arrays) start in the same line as the label.
- If they contain no or only one element they are written in the same line, following directly after the label.
- If they contain more than one element the opening bracket is written into the same line as the label, but each element in its own line. The elements are indented further mTabWidth spaces. The closing bracket is written in its own line, but in the same column as the opening bracket.
- Overrides:
getAsString
in classNode
- Parameters:
columnOffset
- Number of spaces an element is indented.hasLabel
- If true this node starts in a line with a label. The element must not be indented then but follows immediately after the label.- Returns:
- Formatted string of the node and its childs.
-
setIdx
public void setIdx(int idx)
Sets the index used by the getNext() method.- Parameters:
idx
- index where the next getNext() call is reading from
-
getNext
public NodeValue getNext()
Returns the next NodeValue element from mValueList.
-
get
public NodeValue get(int idx)
Description copied from class:Node
If the node is of type NodeObj or NodeArray get() delivers the element with index idx.
-
size
public int size()
Returns the number of elements in an object of NodeElements.- Returns:
- The number of elements in this object.
-
-