|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjodd.lagarto.LagartoParserEngine
public abstract class LagartoParserEngine
Lagarto HTML/XML parser engine. Usage consist of two steps:
initalization with provided content
parsing the content
| Field Summary | |
|---|---|
protected boolean |
calculateErrorPosition
|
protected boolean |
enableConditionalComments
|
protected boolean |
parseSpecialTagsAsCdata
|
| Constructor Summary | |
|---|---|
LagartoParserEngine()
|
|
| Method Summary | |
|---|---|
protected boolean |
acceptTag(java.lang.String tagName)
Returns true if some tag has to be parsed. |
protected void |
error(java.lang.String message)
Prepares error message and reports it to the visitor. |
protected void |
flushText()
Flushes buffered text and stops buffering. |
protected void |
initialize(java.nio.CharBuffer input)
Initializes parser engine by providing the content. |
boolean |
isCalculateErrorPosition()
|
boolean |
isEnableConditionalComments()
|
boolean |
isParseSpecialTagsAsCdata()
|
protected Token |
nextToken()
Returns the next token from lexer or previously fetched token. |
protected void |
parse()
Main parsing loop that process lexer tokens from input. |
protected void |
parse(TagVisitor visitor)
Parses provided content. |
protected void |
parseAttribute()
Parses single attribute. |
protected void |
parseCCEnd()
Parses conditional comment end. |
protected void |
parseCDATA()
Parses CDATA. |
protected void |
parseCommentOrConditionalComment()
Parses HTML comments. |
protected void |
parseDoctype()
Parses HTML DOCTYPE directive. |
protected void |
parseRevealedCCStart()
Parses revealed conditional comment start. |
protected void |
parseSpecialTag(int state)
Parses special tags. |
protected void |
parseTag(Token tagToken,
TagType type)
Parse tag starting from "<". |
protected void |
parseTagAndAttributes(Token tagToken,
java.lang.String tagName,
TagType type,
int start)
Parses full tag. |
protected void |
parseText(int start,
int end)
Buffers the parsed text. |
void |
setCalculateErrorPosition(boolean calculateErrorPosition)
Resolves error position on parsing error. |
void |
setEnableConditionalComments(boolean enableConditionalComments)
Enables detection of IE conditional comments. |
void |
setParseSpecialTagsAsCdata(boolean parseSpecialTagsAsCdata)
Specifies if special tags should be parsed as CDATA block. |
protected void |
skipWhiteSpace()
Skips all whitespace tokens. |
protected java.lang.CharSequence |
text()
Returns current text. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected boolean enableConditionalComments
protected boolean calculateErrorPosition
protected boolean parseSpecialTagsAsCdata
| Constructor Detail |
|---|
public LagartoParserEngine()
| Method Detail |
|---|
protected void initialize(java.nio.CharBuffer input)
public boolean isEnableConditionalComments()
public void setEnableConditionalComments(boolean enableConditionalComments)
public void setCalculateErrorPosition(boolean calculateErrorPosition)
parsing error.
JFlex may be used to track current line and row, but that brings
overhead. By enabling this property, position will be calculated
manually only on errors.
public boolean isCalculateErrorPosition()
public void setParseSpecialTagsAsCdata(boolean parseSpecialTagsAsCdata)
public boolean isParseSpecialTagsAsCdata()
protected void parse(TagVisitor visitor)
protected void parse()
throws java.io.IOException
java.io.IOExceptionprotected void flushText()
protected void parseText(int start,
int end)
flushText().
protected void parseCommentOrConditionalComment()
throws java.io.IOException
java.io.IOException
protected void parseCDATA()
throws java.io.IOException
java.io.IOException
protected void parseDoctype()
throws java.io.IOException
java.io.IOException
protected void parseRevealedCCStart()
throws java.io.IOException
parseCommentOrConditionalComment().
java.io.IOException
protected void parseCCEnd()
throws java.io.IOException
java.io.IOExceptionprotected void parseTag(Token tagToken, TagType type) throws java.io.IOException
java.io.IOExceptionprotected boolean acceptTag(java.lang.String tagName)
true if some tag has to be parsed.
User may override this method to gain more control over what should be parsed.
May be used in situations where only few specific tags has to be parsed
(e.g. just title and body).
protected void parseTagAndAttributes(Token tagToken, java.lang.String tagName, TagType type, int start) throws java.io.IOException
java.io.IOException
protected void parseAttribute()
throws java.io.IOException
java.io.IOException
protected void parseSpecialTag(int state)
throws java.io.IOException
java.io.IOExceptionprotected Token nextToken() throws java.io.IOException
java.io.IOException
protected void skipWhiteSpace()
throws java.io.IOException
java.io.IOExceptionprotected java.lang.CharSequence text()
protected void error(java.lang.String message)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||