In KmlImporter, check that gx:multitrack is available before gx:track

This commit is contained in:
Jimmy Shih
2013-08-23 11:36:43 -07:00
parent a2032af55a
commit 635006efae
@@ -61,6 +61,7 @@ public class KmlImporter extends AbstractImporter {
private static final String ATTRIBUTE_NAME = "name"; private static final String ATTRIBUTE_NAME = "name";
private boolean trackStarted = false;
private String sensorName; private String sensorName;
private ArrayList<Location> locationList; private ArrayList<Location> locationList;
private ArrayList<Integer> cadenceList; private ArrayList<Integer> cadenceList;
@@ -88,8 +89,12 @@ public class KmlImporter extends AbstractImporter {
if (tag.equals(TAG_PLACEMARK)) { if (tag.equals(TAG_PLACEMARK)) {
onWaypointStart(); onWaypointStart();
} else if (tag.equals(TAG_GX_MULTI_TRACK)) { } else if (tag.equals(TAG_GX_MULTI_TRACK)) {
trackStarted = true;
onTrackStart(); onTrackStart();
} else if (tag.equals(TAG_GX_TRACK)) { } else if (tag.equals(TAG_GX_TRACK)) {
if (!trackStarted) {
throw new SAXException("No " + TAG_GX_MULTI_TRACK);
}
onTrackSegmentStart(); onTrackSegmentStart();
} else if (tag.equals(TAG_GX_SIMPLE_ARRAY_DATA)) { } else if (tag.equals(TAG_GX_SIMPLE_ARRAY_DATA)) {
onSensorDataStart(attributes); onSensorDataStart(attributes);