Package org.geotools.xsd.impl
Class ParserHandler
- Object
-
- DefaultHandler
-
- DefaultHandler2
-
- ParserHandler
-
- All Implemented Interfaces:
ContentHandler
,DTDHandler
,EntityResolver
,ErrorHandler
,DeclHandler
,EntityResolver2
,LexicalHandler
- Direct Known Subclasses:
StreamingParserHandler
public class ParserHandler extends DefaultHandler2
The main sax event handler used for parsing the input document. This handler maintains a stack ofHandler
objects. A handler is purshed onto the stack when a startElement event is processed, and popped off the stack when the corresponding endElement event is processed.- Author:
- Justin Deoliveira,Refractions Research Inc.,jdeolive@refractions.net
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
ParserHandler.ContextCustomizer
Customize the context, after the configuration has set up the context before the document is parsed.
-
Constructor Summary
Constructors Constructor Description ParserHandler(Configuration config)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
characters(char[] ch, int start, int length)
protected void
configure(Configuration config)
void
endCDATA()
void
endDocument()
void
endElement(String uri, String localName, String qName)
protected void
endElementInternal(ElementHandler handler)
void
endPrefixMapping(String prefix)
void
error(SAXParseException e)
protected XSDSchemaLocationResolver[]
findSchemaLocationResolvers()
protected XSDSchemaLocator[]
findSchemaLocators()
BindingFactory
getBindingFactory()
BindingLoader
getBindingLoader()
BindingWalker
getBindingWalker()
Configuration
getConfiguration()
EntityResolver
getEntityResolver()
HandlerFactory
getHandlerFactory()
Logger
getLogger()
ParserNamespaceSupport
getNamespaceSupport()
QName
getRootElementType()
SchemaIndex
getSchemaIndex()
XSDSchema[]
getSchemas()
List<URIHandler>
getURIHandlers()
List<Exception>
getValidationErrors()
ValidatorHandler
getValidator()
Object
getValue()
boolean
isCDATA()
Check if the current text is inside a CDATA block.boolean
isCDATAEnding()
boolean
isFailOnValidationError()
boolean
isForceParserDelegate()
boolean
isHandleMixedContent()
boolean
isStrict()
boolean
isValidating()
InputSource
resolveEntity(String publicId, String systemId)
InputSource
resolveEntity(String name, String publicId, String baseURI, String systemId)
void
setCDATA(boolean b)
Inform the parser that it is inside a CDATA block.void
setContextCustomizer(ParserHandler.ContextCustomizer contextCustomizer)
void
setEntityResolver(EntityResolver entityResolver)
void
setFailOnValidationError(boolean failOnValidationError)
void
setForceParserDelegate(boolean forceParserDelegate)
void
setHandleMixedContent(boolean handleMixedContent)
void
setRootElementType(QName rootElementType)
void
setStrict(boolean strict)
void
setValidating(boolean validating)
void
startCDATA()
void
startDocument()
void
startElement(String uri, String localName, String qName, Attributes attributes)
void
startPrefixMapping(String prefix, String uri)
void
warning(SAXParseException e)
-
Methods inherited from class DefaultHandler2
attributeDecl, comment, elementDecl, endDTD, endEntity, externalEntityDecl, getExternalSubset, internalEntityDecl, startDTD, startEntity
-
-
-
-
Field Detail
-
handlers
protected Stack<Handler> handlers
execution stack *
-
-
Constructor Detail
-
ParserHandler
public ParserHandler(Configuration config)
-
-
Method Detail
-
setContextCustomizer
public void setContextCustomizer(ParserHandler.ContextCustomizer contextCustomizer)
-
getConfiguration
public Configuration getConfiguration()
-
setStrict
public void setStrict(boolean strict)
-
isStrict
public boolean isStrict()
-
isValidating
public boolean isValidating()
-
setValidating
public void setValidating(boolean validating)
-
setFailOnValidationError
public void setFailOnValidationError(boolean failOnValidationError)
-
isFailOnValidationError
public boolean isFailOnValidationError()
-
setHandleMixedContent
public void setHandleMixedContent(boolean handleMixedContent)
-
isHandleMixedContent
public boolean isHandleMixedContent()
-
setForceParserDelegate
public void setForceParserDelegate(boolean forceParserDelegate)
-
isForceParserDelegate
public boolean isForceParserDelegate()
-
setRootElementType
public void setRootElementType(QName rootElementType)
-
getRootElementType
public QName getRootElementType()
-
getValidationErrors
public List<Exception> getValidationErrors()
-
getValidator
public ValidatorHandler getValidator()
-
getHandlerFactory
public HandlerFactory getHandlerFactory()
-
getBindingLoader
public BindingLoader getBindingLoader()
-
getBindingWalker
public BindingWalker getBindingWalker()
-
getBindingFactory
public BindingFactory getBindingFactory()
-
getSchemas
public XSDSchema[] getSchemas()
-
getSchemaIndex
public SchemaIndex getSchemaIndex()
-
getLogger
public Logger getLogger()
-
getNamespaceSupport
public ParserNamespaceSupport getNamespaceSupport()
-
getURIHandlers
public List<URIHandler> getURIHandlers()
-
setEntityResolver
public void setEntityResolver(EntityResolver entityResolver)
-
getEntityResolver
public EntityResolver getEntityResolver()
-
resolveEntity
public InputSource resolveEntity(String publicId, String systemId) throws IOException, SAXException
- Specified by:
resolveEntity
in interfaceEntityResolver
- Overrides:
resolveEntity
in classDefaultHandler2
- Throws:
IOException
SAXException
-
resolveEntity
public InputSource resolveEntity(String name, String publicId, String baseURI, String systemId) throws SAXException, IOException
- Specified by:
resolveEntity
in interfaceEntityResolver2
- Overrides:
resolveEntity
in classDefaultHandler2
- Throws:
SAXException
IOException
-
startPrefixMapping
public void startPrefixMapping(String prefix, String uri) throws SAXException
- Specified by:
startPrefixMapping
in interfaceContentHandler
- Overrides:
startPrefixMapping
in classDefaultHandler
- Throws:
SAXException
-
startDocument
public void startDocument() throws SAXException
- Specified by:
startDocument
in interfaceContentHandler
- Overrides:
startDocument
in classDefaultHandler
- Throws:
SAXException
-
startElement
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException
- Specified by:
startElement
in interfaceContentHandler
- Overrides:
startElement
in classDefaultHandler
- Throws:
SAXException
-
characters
public void characters(char[] ch, int start, int length) throws SAXException
- Specified by:
characters
in interfaceContentHandler
- Overrides:
characters
in classDefaultHandler
- Throws:
SAXException
-
endElement
public void endElement(String uri, String localName, String qName) throws SAXException
- Specified by:
endElement
in interfaceContentHandler
- Overrides:
endElement
in classDefaultHandler
- Throws:
SAXException
-
endElementInternal
protected void endElementInternal(ElementHandler handler)
-
endPrefixMapping
public void endPrefixMapping(String prefix) throws SAXException
- Specified by:
endPrefixMapping
in interfaceContentHandler
- Overrides:
endPrefixMapping
in classDefaultHandler
- Throws:
SAXException
-
endDocument
public void endDocument() throws SAXException
- Specified by:
endDocument
in interfaceContentHandler
- Overrides:
endDocument
in classDefaultHandler
- Throws:
SAXException
-
warning
public void warning(SAXParseException e) throws SAXException
- Specified by:
warning
in interfaceErrorHandler
- Overrides:
warning
in classDefaultHandler
- Throws:
SAXException
-
error
public void error(SAXParseException e) throws SAXException
- Specified by:
error
in interfaceErrorHandler
- Overrides:
error
in classDefaultHandler
- Throws:
SAXException
-
getValue
public Object getValue()
-
configure
protected void configure(Configuration config)
-
findSchemaLocators
protected XSDSchemaLocator[] findSchemaLocators()
-
findSchemaLocationResolvers
protected XSDSchemaLocationResolver[] findSchemaLocationResolvers()
-
startCDATA
public void startCDATA() throws SAXException
- Specified by:
startCDATA
in interfaceLexicalHandler
- Overrides:
startCDATA
in classDefaultHandler2
- Throws:
SAXException
-
endCDATA
public void endCDATA() throws SAXException
- Specified by:
endCDATA
in interfaceLexicalHandler
- Overrides:
endCDATA
in classDefaultHandler2
- Throws:
SAXException
-
isCDATAEnding
public boolean isCDATAEnding()
- Returns:
- the cDATAEnding
-
setCDATA
public void setCDATA(boolean b)
Inform the parser that it is inside a CDATA block.
-
isCDATA
public boolean isCDATA()
Check if the current text is inside a CDATA block.
-
-