private String readText() throws IOException, XmlPullParserException { String result = ""; if (mParser.next() == XmlPullParser.TEXT) { result = mParser.getText(); mParser.nextTag(); } return result; }
public List<RssItem> parse() throws IOException, XmlPullParserException { ArrayList<RssItem> items = new ArrayList<RssItem>(); mParser.nextTag(); mParser.require(XmlPullParser.START_TAG, null, "rss"); mParser.nextTag(); mParser.require(XmlPullParser.START_TAG, null, "channel"); while (mParser.next() != XmlPullParser.END_TAG) { if (mParser.getEventType() != XmlPullParser.START_TAG) { continue; } String name = mParser.getName(); if (name.equals("item")) { items.add(readItem()); } else { skip(); } } return items; }
parser.nextTag();
int tag = parser.nextTag(); String name = parser.getName();
parser.nextTag();
parser.nextTag();
int tag = parser.nextTag(); String name = parser.getName(); switch (tag) {
int tag = parser.nextTag(); String n = parser.getText();
@Test public void xppShouldWork() throws Exception { XmlPullParser xmlPullParser = XmlPullParserFactory.newInstance().newPullParser(); xmlPullParser.setInput(new StringReader("<?xml version=\"1.0\" encoding=\"UTF-8\"?><test name=\"value\"/>")); assertEquals(XmlPullParser.START_TAG, xmlPullParser.nextTag()); assertEquals(1, xmlPullParser.getAttributeCount()); assertEquals("name", xmlPullParser.getAttributeName(0)); assertEquals("value", xmlPullParser.getAttributeValue(0)); } }
int tag = parser.nextTag(); String elem = parser.getName();
private Geometry parseMultiPolygon(int dimension, CoordinateReferenceSystem crs) throws XmlPullParserException, IOException, NoSuchAuthorityCodeException, FactoryException { parser.require(START_TAG, GML.NAMESPACE, GML.MultiPolygon.getLocalPart()); Geometry geom; List<Polygon> polygons = new ArrayList<Polygon>(2); parser.nextTag(); while (true) { parser.require(START_TAG, GML.NAMESPACE, GML.polygonMember.getLocalPart()); parser.nextTag(); parser.require(START_TAG, GML.NAMESPACE, GML.Polygon.getLocalPart()); Polygon p = parsePolygon(dimension, crs); polygons.add(p); parser.nextTag(); parser.require(END_TAG, GML.NAMESPACE, GML.polygonMember.getLocalPart()); parser.nextTag(); if (END_TAG == parser.getEventType() && GML.MultiPolygon.getLocalPart().equals(parser.getName())) { // we're done break; } } parser.require(END_TAG, GML.NAMESPACE, GML.MultiPolygon.getLocalPart()); geom = geomFac.createMultiPolygon(polygons.toArray(new Polygon[polygons.size()])); return geom; }
private Geometry parseMultiPolygon(int dimension, CoordinateReferenceSystem crs) throws XmlPullParserException, IOException, NoSuchAuthorityCodeException, FactoryException { parser.require(START_TAG, GML.NAMESPACE, GML.MultiPolygon.getLocalPart()); Geometry geom; List<Polygon> polygons = new ArrayList<Polygon>(2); parser.nextTag(); while (true) { parser.require(START_TAG, GML.NAMESPACE, GML.polygonMember.getLocalPart()); parser.nextTag(); parser.require(START_TAG, GML.NAMESPACE, GML.Polygon.getLocalPart()); Polygon p = parsePolygon(dimension, crs); polygons.add(p); parser.nextTag(); parser.require(END_TAG, GML.NAMESPACE, GML.polygonMember.getLocalPart()); parser.nextTag(); if (END_TAG == parser.getEventType() && GML.MultiPolygon.getLocalPart().equals(parser.getName())) { // we're done break; } } parser.require(END_TAG, GML.NAMESPACE, GML.MultiPolygon.getLocalPart()); geom = geomFac.createMultiPolygon(polygons.toArray(new Polygon[polygons.size()])); return geom; }
private Coordinate parseCoord() throws XmlPullParserException, IOException { parser.require(START_TAG, GML.NAMESPACE, GML.coord.getLocalPart()); Coordinate point; double x, y, z = 0; parser.nextTag(); parser.require(START_TAG, GML.NAMESPACE, "X"); x = Double.parseDouble(parser.nextText()); parser.nextTag(); parser.require(START_TAG, GML.NAMESPACE, "Y"); y = Double.parseDouble(parser.nextText()); parser.nextTag(); if (START_TAG == parser.getEventType()) { parser.require(START_TAG, GML.NAMESPACE, "Z"); z = Double.parseDouble(parser.nextText()); parser.nextTag(); } parser.require(END_TAG, GML.NAMESPACE, GML.coord.getLocalPart()); point = new Coordinate(x, y, z); return point; }
private Coordinate parseCoord() throws XmlPullParserException, IOException { parser.require(START_TAG, GML.NAMESPACE, GML.coord.getLocalPart()); Coordinate point; double x, y, z = 0; parser.nextTag(); parser.require(START_TAG, GML.NAMESPACE, "X"); x = Double.parseDouble(parser.nextText()); parser.nextTag(); parser.require(START_TAG, GML.NAMESPACE, "Y"); y = Double.parseDouble(parser.nextText()); parser.nextTag(); if (START_TAG == parser.getEventType()) { parser.require(START_TAG, GML.NAMESPACE, "Z"); z = Double.parseDouble(parser.nextText()); parser.nextTag(); } parser.require(END_TAG, GML.NAMESPACE, GML.coord.getLocalPart()); point = new Coordinate(x, y, z); return point; }
private Point parsePoint(int dimension, CoordinateReferenceSystem crs) throws XmlPullParserException, IOException, NoSuchAuthorityCodeException, FactoryException { parser.require(START_TAG, GML.NAMESPACE, GML.Point.getLocalPart()); crs = crs(crs); Point geom; parser.nextTag(); parser.require(START_TAG, GML.NAMESPACE, null); Coordinate point; if (GML.pos.getLocalPart().equals(parser.getName())) { Coordinate[] coords = parseCoordList(dimension); point = coords[0]; parser.nextTag(); } else if (GML.coordinates.getLocalPart().equals(parser.getName())) { Coordinate[] coords = parseCoordinates(dimension); point = coords[0]; parser.nextTag(); } else if (GML.coord.getLocalPart().equals(parser.getName())) { point = parseCoord(); parser.nextTag(); } else { throw new IllegalStateException( "Unknown coordinate element for Point: " + parser.getName()); } parser.require(END_TAG, GML.NAMESPACE, GML.Point.getLocalPart()); geom = geomFac.createPoint(point); geom.setUserData(crs); return geom; }
private Point parsePoint(int dimension, CoordinateReferenceSystem crs) throws XmlPullParserException, IOException, NoSuchAuthorityCodeException, FactoryException { parser.require(START_TAG, GML.NAMESPACE, GML.Point.getLocalPart()); crs = crs(crs); Point geom; parser.nextTag(); parser.require(START_TAG, GML.NAMESPACE, null); Coordinate point; if (GML.pos.getLocalPart().equals(parser.getName())) { Coordinate[] coords = parseCoordList(dimension, crs); point = coords[0]; parser.nextTag(); } else if (GML.coordinates.getLocalPart().equals(parser.getName())) { Coordinate[] coords = parseCoordinates(dimension, crs); point = coords[0]; parser.nextTag(); } else if (GML.coord.getLocalPart().equals(parser.getName())) { point = parseCoord(); parser.nextTag(); } else { throw new IllegalStateException( "Unknown coordinate element for Point: " + parser.getName()); } parser.require(END_TAG, GML.NAMESPACE, GML.Point.getLocalPart()); geom = geomFac.createPoint(point); geom.setUserData(crs); return geom; }
public XmlFeatureParser( final InputStream getFeatureResponseStream, final FT targetType, QName featureDescriptorName) throws IOException { this.inputStream = getFeatureResponseStream; this.featureNamespace = featureDescriptorName.getNamespaceURI(); this.featureName = featureDescriptorName.getLocalPart(); this.targetType = targetType; try { parser = new MXParser(); parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, true); // parse root element parser.setInput(inputStream, "UTF-8"); parser.nextTag(); parser.require(START_TAG, WFS.NAMESPACE, WFS.FeatureCollection.getLocalPart()); String nof = parser.getAttributeValue(null, "numberOfFeatures"); if (nof != null) { try { this.numberOfFeatures = Integer.valueOf(nof); } catch (NumberFormatException nfe) { LOGGER.warning("Can't parse numberOfFeatures out of " + nof); } } } catch (XmlPullParserException e) { throw new DataSourceException(e); } }
Object parsedValue; if (type instanceof GeometryType) { parser.nextTag(); try { parsedValue = parseGeom();
Object parsedValue; if (type instanceof GeometryType) { parser.nextTag(); try { parsedValue = parseGeom();