org.h2gis.drivers.gpx.model.GpxParserWpt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of h2drivers Show documentation
Show all versions of h2drivers Show documentation
Add H2 read/write support for file formats such as ESRI shape file
The newest version!
/**
* H2GIS is a library that brings spatial support to the H2 Database Engine
* .
*
* H2GIS is distributed under GPL 3 license. It is produced by CNRS
* .
*
* H2GIS is free software: you can redistribute it and/or modify it under the
* terms of the GNU General Public License as published by the Free Software
* Foundation, either version 3 of the License, or (at your option) any later
* version.
*
* H2GIS is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with
* H2GIS. If not, see .
*
* For more information, please consult:
* or contact directly: info_at_h2gis.org
*/
package org.h2gis.drivers.gpx.model;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
/**
* Specific parser for waypoints. It will be call each time a markup is
* found. It is for the 1.1 version
*
* @author Erwan Bocher and Antonin Piasco
*/
public class GpxParserWpt extends AbstractGpxParserWpt {
/**
* Create a new specific parser. It has in memory the default parser, the
* contentBuffer, the elementNames and the currentPoint.
*
* @param reader The XMLReader used in the default class
* @param parent The parser used in the default class
*/
public GpxParserWpt(XMLReader reader, GpxParser parent) {
super.initialise(reader, parent);
}
/**
* Fires whenever an XML start markup is encountered. It saves informations
* about in currentPoint.
*
* @param uri URI of the local element
* @param localName Name of the local element (without prefix)
* @param qName qName of the local element (with prefix)
* @param attributes Attributes of the local element (contained in the
* markup)
* @throws SAXException Any SAX exception, possibly wrapping another
* exception
*/
@Override
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
super.startElement(uri, localName, qName, attributes);
if (localName.equalsIgnoreCase(GPXTags.LINK)) {
getCurrentPoint().setLink(attributes);
}
}
/**
* Fires whenever an XML end markup is encountered. It catches attributes of
* the waypoint and saves them in corresponding values[].
*
* @param uri URI of the local element
* @param localName Name of the local element (without prefix)
* @param qName qName of the local element (with prefix)
* @throws SAXException Any SAX exception, possibly wrapping another
* exception
*/
@Override
public void endElement(String uri, String localName, String qName) throws SAXException {
super.endElement(uri, localName, qName);
if (getCurrentElement().equalsIgnoreCase(GPXTags.TEXT)) {
getCurrentPoint().setLinkText(getContentBuffer());
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy