public class HierarchyPropertyParser
extends java.lang.Object
implements java.io.Serializable
Constructor and Description |
---|
HierarchyPropertyParser()
Default constructor
|
HierarchyPropertyParser(java.lang.String p,
java.lang.String delim)
Constructor that builds a tree from the given property with
the given delimitor
|
Modifier and Type | Method and Description |
---|---|
void |
add(java.lang.String property)
Add the given item of property to the tree
|
void |
build(java.lang.String p,
java.lang.String delim)
Build a tree from the given property with the given delimitor
|
java.lang.String[] |
childrenValues()
The value in the children nodes.
|
boolean |
contains(java.lang.String string)
Whether the HierarchyPropertyParser contains the given
string
|
java.lang.String |
context()
The context of the current node, i.e.
|
int |
depth()
Get the depth of the tree, i.e.
|
java.lang.String |
fullValue()
The full value of the current node, i.e.
|
int |
getLevel()
Get the level of current node.
|
java.lang.String |
getSeperator()
Get the seperator between levels.
|
java.lang.String |
getValue()
Get the value of current node
|
boolean |
goDown(java.lang.String path)
Go to a certain node of the tree down from the current node
according to the specified relative path.
|
boolean |
goTo(java.lang.String path)
Go to a certain node of the tree according to the specified path
Note that the path must be absolute path from the root.
|
void |
goToChild(int pos)
Go to one child node from the current position in the tree
according to the given position
|
boolean |
goToChild(java.lang.String value)
Go to one child node from the current position in the tree
according to the given value
If the child node with the given value cannot be found it returns false, true otherwise. |
void |
goToParent()
Go to the parent from the current position in the tree
If the current position is the root, it stays there and does
not move
|
void |
goToRoot()
Go to the root of the tree
|
boolean |
isHierachic(java.lang.String string)
Whether the given string has a hierachy structure with
the seperators
|
boolean |
isLeafReached()
Whether the current position is a leaf
|
boolean |
isRootReached()
Whether the current position is the root
|
static void |
main(java.lang.String[] args)
Tests out the parser.
|
int |
numChildren()
The number of the children nodes.
|
java.lang.String |
parentValue()
The value in the parent node.
|
int |
search(java.util.Vector vct,
java.lang.String target)
Helper function to search for the given target string in a
given vector in which the elements' value may hopefully is equal
to the target.
|
void |
setSeperator(java.lang.String s)
Set the seperator between levels.
|
java.lang.String |
showTree()
Show the whole tree in text format
|
java.lang.String[] |
tokenize(java.lang.String rawString)
Tokenize the given string based on the seperator and
put the tokens into an array of strings
|
public HierarchyPropertyParser()
public HierarchyPropertyParser(java.lang.String p, java.lang.String delim) throws java.lang.Exception
p
- the given property stringdelim
- the given dilimitorjava.lang.Exception
public void setSeperator(java.lang.String s)
s
- the seperator symbolpublic java.lang.String getSeperator()
public void build(java.lang.String p, java.lang.String delim) throws java.lang.Exception
p
- the given propertydelim
- the given delimitorjava.lang.Exception
public void add(java.lang.String property)
property
- the given itempublic java.lang.String[] tokenize(java.lang.String rawString)
rawString
- the given stringpublic boolean contains(java.lang.String string)
string
- the given stringpublic boolean isHierachic(java.lang.String string)
string
- the given stringpublic int search(java.util.Vector vct, java.lang.String target)
vct
- the given vectortarget
- the given target stringpublic boolean goTo(java.lang.String path)
path
- the given absolute pathpublic boolean goDown(java.lang.String path)
path
- the given relative pathpublic void goToRoot()
public void goToParent()
public boolean goToChild(java.lang.String value)
value
- the value of the given childpublic void goToChild(int pos) throws java.lang.Exception
pos
- the position of the given childjava.lang.Exception
- if the position is out of range or leaf is reachedpublic int numChildren()
public java.lang.String[] childrenValues()
public java.lang.String parentValue()
public boolean isLeafReached()
public boolean isRootReached()
public java.lang.String getValue()
public int getLevel()
public int depth()
public java.lang.String context()
public java.lang.String fullValue()
public java.lang.String showTree()
public static void main(java.lang.String[] args)
args
- should contain nothing