Package org.locationtech.jts.io.gml2
Class GMLHandler
- java.lang.Object
-
- org.xml.sax.helpers.DefaultHandler
-
- org.locationtech.jts.io.gml2.GMLHandler
-
- All Implemented Interfaces:
ContentHandler,DTDHandler,EntityResolver,ErrorHandler
public class GMLHandler extends DefaultHandler
A SAXDefaultHandlerwhich buildsGeometrys from GML2-formatted geometries. An XML parser can delegate SAX events to this handler to parse and building Geometrys.This handler currently ignores both namespaces and prefixes. Hints:
- If your parent handler is a DefaultHandler register the parent handler to receive the errors and locator calls.
- Use
GeometryStrategies.findStrategy(String, String)to help check for applicability
- Author:
- David Zwiers, Vivid Solutions.
- See Also:
DefaultHandler
-
-
Constructor Summary
Constructors Constructor Description GMLHandler(GeometryFactory gf, ErrorHandler delegate)Creates a new handler.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcharacters(char[] ch, int start, int length)voidendElement(String uri, String localName, String qName)voiderror(SAXParseException e)voidfatalError(SAXParseException e)protected LocatorgetDocumentLocator()GeometrygetGeometry()Gets the geometry parsed by this handler.voidignorableWhitespace(char[] ch, int start, int length)booleanisGeometryComplete()Tests whether this handler has completed parsing a geometry.voidsetDocumentLocator(Locator locator)voidstartElement(String uri, String localName, String qName, Attributes attributes)voidwarning(SAXParseException e)-
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endDocument, endPrefixMapping, notationDecl, processingInstruction, resolveEntity, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl
-
-
-
-
Constructor Detail
-
GMLHandler
public GMLHandler(GeometryFactory gf, ErrorHandler delegate)
Creates a new handler. Allows the user to specify a delegate object for error / warning messages. If the delegate also implements ContentHandler then the document Locator will be passed on.- Parameters:
gf- Geometry Factorydelegate- Nullable- See Also:
ErrorHandler,ContentHandler,ContentHandler.setDocumentLocator(org.xml.sax.Locator),Locator
-
-
Method Detail
-
isGeometryComplete
public boolean isGeometryComplete()
Tests whether this handler has completed parsing a geometry. If this is the case,getGeometry()can be called to get the value of the parsed geometry.- Returns:
- if the parsing of the geometry is complete
-
getGeometry
public Geometry getGeometry()
Gets the geometry parsed by this handler. This method should only be called AFTER the parser has completed execution- Returns:
- the parsed Geometry, or a GeometryCollection if more than one geometry was parsed
- Throws:
IllegalStateException- if called before the parse is complete
-
characters
public void characters(char[] ch, int start, int length) throws SAXException- Specified by:
charactersin interfaceContentHandler- Overrides:
charactersin classDefaultHandler- Throws:
SAXException- See Also:
DefaultHandler.characters(char[], int, int)
-
ignorableWhitespace
public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException- Specified by:
ignorableWhitespacein interfaceContentHandler- Overrides:
ignorableWhitespacein classDefaultHandler- Throws:
SAXException- See Also:
DefaultHandler.ignorableWhitespace(char[], int, int)
-
endElement
public void endElement(String uri, String localName, String qName) throws SAXException
- Specified by:
endElementin interfaceContentHandler- Overrides:
endElementin classDefaultHandler- Throws:
SAXException- See Also:
DefaultHandler.endElement(java.lang.String, java.lang.String, java.lang.String)
-
startElement
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException
- Specified by:
startElementin interfaceContentHandler- Overrides:
startElementin classDefaultHandler- Throws:
SAXException- See Also:
DefaultHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)
-
setDocumentLocator
public void setDocumentLocator(Locator locator)
- Specified by:
setDocumentLocatorin interfaceContentHandler- Overrides:
setDocumentLocatorin classDefaultHandler- See Also:
DefaultHandler.setDocumentLocator(org.xml.sax.Locator)
-
getDocumentLocator
protected Locator getDocumentLocator()
-
fatalError
public void fatalError(SAXParseException e) throws SAXException
- Specified by:
fatalErrorin interfaceErrorHandler- Overrides:
fatalErrorin classDefaultHandler- Throws:
SAXException- See Also:
DefaultHandler.fatalError(org.xml.sax.SAXParseException)
-
error
public void error(SAXParseException e) throws SAXException
- Specified by:
errorin interfaceErrorHandler- Overrides:
errorin classDefaultHandler- Throws:
SAXException- See Also:
DefaultHandler.error(org.xml.sax.SAXParseException)
-
warning
public void warning(SAXParseException e) throws SAXException
- Specified by:
warningin interfaceErrorHandler- Overrides:
warningin classDefaultHandler- Throws:
SAXException- See Also:
DefaultHandler.warning(org.xml.sax.SAXParseException)
-
-