Package org.h2gis.functions.io.gpx.model

# Class GpxPreparser

java.lang.Object
org.xml.sax.helpers.DefaultHandler
org.h2gis.functions.io.gpx.model.GpxPreparser

All Implemented Interfaces:
  `ContentHandler`, `DTDHandler`, `EntityResolver`, `ErrorHandler`

public final class GpxPreparser extends DefaultHandler
GpxPreparser class just reads the document. It says what type of elements (waypoints, routes ,routepoints, tracks, track segments, trackpoints) the document contains. It also counts each type of elements.

Author:
  Antonin Piasco, Erwan Bocher

## Constructor Summary

Constructors
Constructor
Description
`GpxPreparser()`
Initializing of the pre-parser.

## Method Summary

Modifier and Type
Method
Description
`int`
`getTotalRte()`
Gives the total number of routes contained in the GPX file.
`int`
`getTotalRtept()`
Gives the total number of routepoints contained in the GPX file.
`int`
`getTotalTrk()`
Gives the total number of tracks contained in the GPX file.
`int`
`getTotalTrkpt()`
Gives the total number of trackpoints contained in the GPX file.
`int`
`getTotalTrkseg()`
Gives the total number of track segments contained in the GPX file.
`int`
`getTotalWpt()`
Gives the total number of waypoints contained in the GPX file.
`String`
`getVersion()`
Gives the version of the gpx file.
`boolean`
`read(File inputFile, String encoding)`
Reads the document and pre-parses it.
`void`
`startElement(String uri, String localName, String qName, Attributes attributes)`
Fires whenever an XML start markup is encountered.

### Methods inherited from class org.xml.sax.helpers.DefaultHandler

`characters, endDocument, endElement, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.xml.sax.ContentHandler

`declaration`

## Constructor Details

### GpxPreparser

public GpxPreparser()
Initializing of the pre-parser. All values are set to zero.

## Method Details

### read

public boolean read(File inputFile, String encoding) throws SAXException, IOException
Reads the document and pre-parses it. The other method is called automatically when a start markup is found.

Parameters:
  `inputFile` - the file to read
Returns:
  a boolean if the parser ends successfully or not
Throws:
  `SAXException`
  `IOException`

### startElement

public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException
Fires whenever an XML start markup is encountered. It indicates which version of gpx file is to be parsed. It counts the waypoints, routes, routepoints, tracks, track segments and trackpoints.

Specified by:
  `startElement` in interface `ContentHandler`
Overrides:
  `startElement` in class `DefaultHandler`
Parameters:
  `uri` - URI of the local element
  `localName` - Name of the local element (without prefix)
  `qName` - qName of the local element (with prefix)
  `attributes` - Attributes of the local element (contained in the markup)
Throws:
  `SAXException` - Any SAX exception, possibly wrapping another exception

### getVersion

public String getVersion()
Gives the version of the gpx file.

Returns:

### getTotalWpt

public int getTotalWpt()
Gives the total number of waypoints contained in the GPX file.

Returns:
  the total number of waypoints

### getTotalRte

public int getTotalRte()
Gives the total number of routes contained in the GPX file.

Returns:
  the total number of routes

### getTotalRtept

public int getTotalRtept()
Gives the total number of routepoints contained in the GPX file.

Returns:
  the total number of routepoints

### getTotalTrk

public int getTotalTrk()
Gives the total number of tracks contained in the GPX file.

Returns:
  the total number of tracks

### getTotalTrkseg

public int getTotalTrkseg()
Gives the total number of track segments contained in the GPX file.

Returns:
  the total number of track segments

### getTotalTrkpt

public int getTotalTrkpt()
Gives the total number of trackpoints contained in the GPX file.

Returns:
  the total number of trackpoints