JTS Topology Suite version 1.12

com.vividsolutions.jts.io.gml2
Class GMLHandler

java.lang.Object
  extended by org.xml.sax.helpers.DefaultHandler
      extended by com.vividsolutions.jts.io.gml2.GMLHandler
All Implemented Interfaces:
org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

public class GMLHandler
extends org.xml.sax.helpers.DefaultHandler

A SAX DefaultHandler which builds Geometrys 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:

Author:
David Zwiers, Vivid Solutions.
See Also:
DefaultHandler

Constructor Summary
GMLHandler(GeometryFactory gf, org.xml.sax.ErrorHandler delegate)
          Creates a new handler.
 
Method Summary
 void characters(char[] ch, int start, int length)
           
 void endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)
           
 void error(org.xml.sax.SAXParseException e)
           
 void fatalError(org.xml.sax.SAXParseException e)
           
protected  org.xml.sax.Locator getDocumentLocator()
           
 Geometry getGeometry()
          Gets the geometry parsed by this handler.
 void ignorableWhitespace(char[] ch, int start, int length)
           
 boolean isGeometryComplete()
          Tests whether this handler has completed parsing a geometry.
 void setDocumentLocator(org.xml.sax.Locator locator)
           
 void startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes)
           
 void warning(org.xml.sax.SAXParseException e)
           
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endDocument, endPrefixMapping, notationDecl, processingInstruction, resolveEntity, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GMLHandler

public GMLHandler(GeometryFactory gf,
                  org.xml.sax.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 Factory
delegate - 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:

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:
java.lang.IllegalStateException - if called before the parse is complete

characters

public void characters(char[] ch,
                       int start,
                       int length)
                throws org.xml.sax.SAXException
Specified by:
characters in interface org.xml.sax.ContentHandler
Overrides:
characters in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException
See Also:
DefaultHandler.characters(char[], int, int)

ignorableWhitespace

public void ignorableWhitespace(char[] ch,
                                int start,
                                int length)
                         throws org.xml.sax.SAXException
Specified by:
ignorableWhitespace in interface org.xml.sax.ContentHandler
Overrides:
ignorableWhitespace in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException
See Also:
DefaultHandler.ignorableWhitespace(char[], int, int)

endElement

public void endElement(java.lang.String uri,
                       java.lang.String localName,
                       java.lang.String qName)
                throws org.xml.sax.SAXException
Specified by:
endElement in interface org.xml.sax.ContentHandler
Overrides:
endElement in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException
See Also:
DefaultHandler.endElement(java.lang.String, java.lang.String, java.lang.String)

startElement

public void startElement(java.lang.String uri,
                         java.lang.String localName,
                         java.lang.String qName,
                         org.xml.sax.Attributes attributes)
                  throws org.xml.sax.SAXException
Specified by:
startElement in interface org.xml.sax.ContentHandler
Overrides:
startElement in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException
See Also:
DefaultHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)

setDocumentLocator

public void setDocumentLocator(org.xml.sax.Locator locator)
Specified by:
setDocumentLocator in interface org.xml.sax.ContentHandler
Overrides:
setDocumentLocator in class org.xml.sax.helpers.DefaultHandler
See Also:
DefaultHandler.setDocumentLocator(org.xml.sax.Locator)

getDocumentLocator

protected org.xml.sax.Locator getDocumentLocator()

fatalError

public void fatalError(org.xml.sax.SAXParseException e)
                throws org.xml.sax.SAXException
Specified by:
fatalError in interface org.xml.sax.ErrorHandler
Overrides:
fatalError in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException
See Also:
DefaultHandler.fatalError(org.xml.sax.SAXParseException)

error

public void error(org.xml.sax.SAXParseException e)
           throws org.xml.sax.SAXException
Specified by:
error in interface org.xml.sax.ErrorHandler
Overrides:
error in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException
See Also:
DefaultHandler.error(org.xml.sax.SAXParseException)

warning

public void warning(org.xml.sax.SAXParseException e)
             throws org.xml.sax.SAXException
Specified by:
warning in interface org.xml.sax.ErrorHandler
Overrides:
warning in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException
See Also:
DefaultHandler.warning(org.xml.sax.SAXParseException)

JTS Topology Suite version 1.12