Package org.apache.xerces.impl
Class XMLDocumentScannerImpl.ContentDispatcher
java.lang.Object
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.FragmentContentDispatcher
org.apache.xerces.impl.XMLDocumentScannerImpl.ContentDispatcher
- All Implemented Interfaces:
XMLDocumentFragmentScannerImpl.Dispatcher
- Direct Known Subclasses:
XML11NSDocumentScannerImpl.NS11ContentDispatcher
,XMLNSDocumentScannerImpl.NSContentDispatcher
- Enclosing class:
XMLDocumentScannerImpl
protected class XMLDocumentScannerImpl.ContentDispatcher
extends XMLDocumentFragmentScannerImpl.FragmentContentDispatcher
Dispatcher to handle content scanning.
- Author:
- Andy Clark, IBM, Eric Ye, IBM
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
Element depth iz zero.protected void
End of file hook.protected void
Attempt to locate an external subset for a document that does not otherwise have one.protected boolean
Scan for DOCTYPE hook.protected boolean
Scan for root element hook.Methods inherited from class org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.FragmentContentDispatcher
dispatch
-
Constructor Details
-
ContentDispatcher
protected ContentDispatcher()
-
-
Method Details
-
scanForDoctypeHook
Scan for DOCTYPE hook. This method is a hook for subclasses to add code to handle scanning for a the "DOCTYPE" string after the string "invalid input: '<!'" has been scanned.- Overrides:
scanForDoctypeHook
in classXMLDocumentFragmentScannerImpl.FragmentContentDispatcher
- Returns:
- True if the "DOCTYPE" was scanned; false if "DOCTYPE" was not scanned.
- Throws:
IOException
org.apache.xerces.xni.XNIException
-
elementDepthIsZeroHook
Element depth iz zero. This methos is a hook for subclasses to add code to handle when the element depth hits zero. When scanning a document fragment, an element depth of zero is normal. However, when scanning a full XML document, the scanner must handle the trailing miscellanous section of the document after the end of the document's root element.- Overrides:
elementDepthIsZeroHook
in classXMLDocumentFragmentScannerImpl.FragmentContentDispatcher
- Returns:
- True if the caller should stop and return true which allows the scanner to switch to a new scanning dispatcher. A return value of false indicates that the content dispatcher should continue as normal.
- Throws:
IOException
org.apache.xerces.xni.XNIException
-
scanRootElementHook
Scan for root element hook. This method is a hook for subclasses to add code that handles scanning for the root element. When scanning a document fragment, there is no "root" element. However, when scanning a full XML document, the scanner must handle the root element specially.- Overrides:
scanRootElementHook
in classXMLDocumentFragmentScannerImpl.FragmentContentDispatcher
- Returns:
- True if the caller should stop and return true which allows the scanner to switch to a new scanning dispatcher. A return value of false indicates that the content dispatcher should continue as normal.
- Throws:
IOException
org.apache.xerces.xni.XNIException
-
endOfFileHook
End of file hook. This method is a hook for subclasses to add code that handles the end of file. The end of file in a document fragment is OK if the markup depth is zero. However, when scanning a full XML document, an end of file is always premature.- Overrides:
endOfFileHook
in classXMLDocumentFragmentScannerImpl.FragmentContentDispatcher
- Throws:
IOException
org.apache.xerces.xni.XNIException
-
resolveExternalSubsetAndRead
protected void resolveExternalSubsetAndRead() throws IOException, org.apache.xerces.xni.XNIExceptionAttempt to locate an external subset for a document that does not otherwise have one. If an external subset is located, then it is scanned.
- Throws:
IOException
org.apache.xerces.xni.XNIException
-