public class Driver extends java.lang.Object implements EncodingDeclarationHandler
| Modifier and Type | Class and Description |
|---|---|
private class |
Driver.ReparseException |
| Modifier and Type | Field and Description |
|---|---|
private boolean |
allowRewinding |
private Encoding |
characterEncoding |
private CharacterHandler[] |
characterHandlers
Used for NFC checking if non-
null, source code capture,
etc. |
private Confidence |
confidence |
private Heuristics |
heuristics |
private java.io.Reader |
reader
The input UTF-16 code unit stream.
|
private RewindableInputStream |
rewindableInputStream
The reference to the rewindable byte stream.
|
private boolean |
swallowBom |
private Tokenizer |
tokenizer |
| Modifier and Type | Method and Description |
|---|---|
void |
addCharacterHandler(CharacterHandler characterHandler) |
private void |
becomeConfident() |
(package private) void |
dontSwallowBom() |
protected Encoding |
encodingFromExternalDeclaration(java.lang.String encoding)
Initializes a decoder from external decl.
|
java.lang.String |
getCharacterEncoding()
Queries the environment for the encoding in use (for error reporting).
|
org.xml.sax.Locator |
getDocumentLocator() |
boolean |
internalEncodingDeclaration(java.lang.String internalCharset)
Indicates that the parser has found an internal encoding declaration with
the charset value
charset. |
boolean |
isAllowRewinding()
Returns the allowRewinding.
|
boolean |
isCheckingNormalization()
Query if checking normalization.
|
(package private) void |
notifyAboutMetaBoundary() |
private void |
runStates() |
void |
setAllowRewinding(boolean allowRewinding)
Sets the allowRewinding.
|
void |
setCheckingNormalization(boolean enable)
Turns NFC checking on or off.
|
void |
setCommentPolicy(XmlViolationPolicy commentPolicy) |
void |
setContentNonXmlCharPolicy(XmlViolationPolicy contentNonXmlCharPolicy) |
void |
setContentSpacePolicy(XmlViolationPolicy contentSpacePolicy) |
void |
setEncoding(Encoding encoding,
Confidence confidence) |
void |
setErrorHandler(org.xml.sax.ErrorHandler eh) |
void |
setHeuristics(Heuristics heuristics)
Sets the encoding sniffing heuristics.
|
void |
setHtml4ModeCompatibleWithXhtml1Schemata(boolean html4ModeCompatibleWithXhtml1Schemata) |
void |
setMappingLangToXmlLang(boolean mappingLangToXmlLang) |
void |
setNamePolicy(XmlViolationPolicy namePolicy) |
void |
setTransitionHandler(TransitionHandler transitionHandler) |
void |
setXmlnsPolicy(XmlViolationPolicy xmlnsPolicy) |
void |
tokenize(org.xml.sax.InputSource is)
Runs the tokenization.
|
protected void |
warnWithoutLocation(java.lang.String message)
Reports a warning without line/col
|
protected Encoding |
whineAboutEncodingAndReturnActual(java.lang.String encoding,
Encoding cs) |
private java.io.Reader reader
HtmlInputStreamReader.private RewindableInputStream rewindableInputStream
null if p
rohibited or no longer needed.private boolean swallowBom
private Encoding characterEncoding
private boolean allowRewinding
private Heuristics heuristics
private final Tokenizer tokenizer
private Confidence confidence
private CharacterHandler[] characterHandlers
null, source code capture,
etc.public Driver(Tokenizer tokenizer)
public boolean isAllowRewinding()
public void setAllowRewinding(boolean allowRewinding)
allowRewinding - the allowRewinding to setpublic void setCheckingNormalization(boolean enable)
enable - true if checking onpublic void addCharacterHandler(CharacterHandler characterHandler)
public boolean isCheckingNormalization()
true if checking onpublic void tokenize(org.xml.sax.InputSource is)
throws org.xml.sax.SAXException,
java.io.IOException
is - the input sourceorg.xml.sax.SAXException - on fatal error (if configured to treat XML violations as
fatal) or if the token handler threwjava.io.IOException - if the stream threwvoid dontSwallowBom()
private void runStates()
throws org.xml.sax.SAXException,
java.io.IOException
org.xml.sax.SAXExceptionjava.io.IOExceptionpublic void setEncoding(Encoding encoding, Confidence confidence)
public boolean internalEncodingDeclaration(java.lang.String internalCharset)
throws org.xml.sax.SAXException
EncodingDeclarationHandlercharset.internalEncodingDeclaration in interface EncodingDeclarationHandlerinternalCharset - the charset name found.true if the value of charset was an
encoding name for a supported ASCII-superset encoding.org.xml.sax.SAXException - if something went wrongprivate void becomeConfident()
public void setHeuristics(Heuristics heuristics)
heuristics - the heuristics to setprotected void warnWithoutLocation(java.lang.String message)
throws org.xml.sax.SAXException
message - the messageorg.xml.sax.SAXExceptionprotected Encoding encodingFromExternalDeclaration(java.lang.String encoding) throws org.xml.sax.SAXException
org.xml.sax.SAXExceptionprotected Encoding whineAboutEncodingAndReturnActual(java.lang.String encoding, Encoding cs) throws org.xml.sax.SAXException
encoding - cs - org.xml.sax.SAXExceptionvoid notifyAboutMetaBoundary()
public void setCommentPolicy(XmlViolationPolicy commentPolicy)
commentPolicy - Tokenizer.setCommentPolicy(nu.validator.htmlparser.common.XmlViolationPolicy)public void setContentNonXmlCharPolicy(XmlViolationPolicy contentNonXmlCharPolicy)
contentNonXmlCharPolicy - Tokenizer.setContentNonXmlCharPolicy(nu.validator.htmlparser.common.XmlViolationPolicy)public void setContentSpacePolicy(XmlViolationPolicy contentSpacePolicy)
contentSpacePolicy - Tokenizer.setContentSpacePolicy(nu.validator.htmlparser.common.XmlViolationPolicy)public void setErrorHandler(org.xml.sax.ErrorHandler eh)
eh - Tokenizer.setErrorHandler(org.xml.sax.ErrorHandler)public void setTransitionHandler(TransitionHandler transitionHandler)
public void setHtml4ModeCompatibleWithXhtml1Schemata(boolean html4ModeCompatibleWithXhtml1Schemata)
html4ModeCompatibleWithXhtml1Schemata - Tokenizer.setHtml4ModeCompatibleWithXhtml1Schemata(boolean)public void setMappingLangToXmlLang(boolean mappingLangToXmlLang)
mappingLangToXmlLang - Tokenizer.setMappingLangToXmlLang(boolean)public void setNamePolicy(XmlViolationPolicy namePolicy)
namePolicy - Tokenizer.setNamePolicy(nu.validator.htmlparser.common.XmlViolationPolicy)public void setXmlnsPolicy(XmlViolationPolicy xmlnsPolicy)
xmlnsPolicy - Tokenizer.setXmlnsPolicy(nu.validator.htmlparser.common.XmlViolationPolicy)public java.lang.String getCharacterEncoding()
throws org.xml.sax.SAXException
EncodingDeclarationHandlergetCharacterEncoding in interface EncodingDeclarationHandlerorg.xml.sax.SAXException - if something went wrongpublic org.xml.sax.Locator getDocumentLocator()