|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.plumtree.uiinfrastructure.utils.JavascriptParser
public class JavascriptParser
Parses Javascript String into Java object representation. The Javascript needs start as either an JS Object or JS array. Use JSONParser class to parse JSON strings The unit test for this class lives in portaluiinfrastructure project
Field Summary | |
---|---|
protected static char |
CLOSE_BRACKET
|
protected static char |
CLOSE_CURLY_BRACKET
|
protected static char |
COLON
|
protected static char |
COMMA
|
protected static char |
ESCAPE
|
protected XPArrayList |
m_rootList
|
protected XPHashtable |
m_rootObj
|
protected static char |
OPEN_BRACKET
|
protected static char |
OPEN_CURLY_BRACKET
|
protected static char |
QUOTE
|
protected static char |
SINGLE_QUOTE
|
Constructor Summary | |
---|---|
JavascriptParser()
|
Method Summary | |
---|---|
protected java.lang.String |
GetEscapedTokenAndEndQuote(XPStringTokenizer tokz,
boolean doubleQuote)
This gets an escaped quoted sequence, starting immediately after the opening quote. |
protected java.lang.String |
GetNextToken(XPStringTokenizer tok)
|
XPArrayList |
GetRootArray()
|
XPHashtable |
GetRootObject()
|
protected java.lang.String |
GetToken(XPStringTokenizer _tokenizer)
|
protected boolean |
IsJSComment(java.lang.String strToken,
XPStringTokenizer tokz)
Check for Javascript comments and advance the tokenizer until end of comment |
protected boolean |
IsNewArray(java.lang.String token)
|
protected boolean |
IsNewJSObject(java.lang.String token)
|
boolean |
IsRootArray()
ACCESSORS |
boolean |
IsRootObject()
|
protected boolean |
IsWhiteSpace(java.lang.String _strToken)
Checks if a token is a single piece of whitespace. |
protected XPArrayList |
ParseJSArray(XPStringTokenizer tokz)
Returns a javascript array in an XPArraList |
protected XPHashtable |
ParseJSObject(XPStringTokenizer tokz)
Parse Javascript object and create hashtable representation Expects the object begin curly bracket ("{") to have been already processed in the string tokenizer |
protected java.lang.String |
ParseJSOMemberLabel(XPStringTokenizer tokz)
Gets the name of a javascript object member Expects the next token of the string tokenizer to be the double quote around the label. |
protected java.lang.Object |
ParseJSOMemberValue(java.lang.String memberName,
XPStringTokenizer tokz)
Parses JS Object member value Expects next value in tokenizer to be the first character of the value. |
protected java.lang.Object |
ParseJSSimpleValue(java.lang.String initialToken,
XPStringTokenizer tokz)
|
void |
ParseJSString(java.lang.String injs)
Parses Javascript string and stores a Java representation |
protected void |
SkipToken(XPStringTokenizer _tokenizer,
char _token)
Skip the next token if it matches the expected token. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static final char OPEN_CURLY_BRACKET
protected static final char CLOSE_CURLY_BRACKET
protected static final char OPEN_BRACKET
protected static final char CLOSE_BRACKET
protected static final char QUOTE
protected static final char SINGLE_QUOTE
protected static final char COLON
protected static final char COMMA
protected static final char ESCAPE
protected XPHashtable m_rootObj
protected XPArrayList m_rootList
Constructor Detail |
---|
public JavascriptParser()
Method Detail |
---|
public void ParseJSString(java.lang.String injs)
injs
- Javascript Stringprotected java.lang.Object ParseJSOMemberValue(java.lang.String memberName, XPStringTokenizer tokz)
memberName
- tokz
- String tokenizer of the JS string. Next value in the tokenizer is the first character of the value
protected XPHashtable ParseJSObject(XPStringTokenizer tokz)
tok
-
protected java.lang.String ParseJSOMemberLabel(XPStringTokenizer tokz)
tokz
-
protected XPArrayList ParseJSArray(XPStringTokenizer tokz)
tokz
-
protected java.lang.Object ParseJSSimpleValue(java.lang.String initialToken, XPStringTokenizer tokz)
tokz
-
protected java.lang.String GetToken(XPStringTokenizer _tokenizer)
_tokenizer
- the JSON tokenizer
protected void SkipToken(XPStringTokenizer _tokenizer, char _token)
_tokenizer
- the JSON tokenizer_token
- the expected token
XPFormatException
- if the next token doesn't match the expected token.protected java.lang.String GetNextToken(XPStringTokenizer tok)
protected boolean IsWhiteSpace(java.lang.String _strToken)
_strToken
-
protected boolean IsJSComment(java.lang.String strToken, XPStringTokenizer tokz)
strToken
- tokz
-
protected java.lang.String GetEscapedTokenAndEndQuote(XPStringTokenizer tokz, boolean doubleQuote)
tokz
- doubleQuote
- true if string value uses double quotes or false for single quote
XPFormatException
protected boolean IsNewArray(java.lang.String token)
token
-
protected boolean IsNewJSObject(java.lang.String token)
token
- Single token from String tokenizer
public boolean IsRootArray()
public boolean IsRootObject()
public XPArrayList GetRootArray()
public XPHashtable GetRootObject()
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |