Use XmlPullUtil.optSkip() where possible.

This commit is contained in:
Andreas Schildbach 2016-11-20 16:17:14 +01:00
parent 45cc8de41c
commit 30cc003038
2 changed files with 11 additions and 25 deletions

View file

@ -1578,8 +1578,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
if (XmlPullUtil.test(pp, "itdRTDateTime")) if (XmlPullUtil.test(pp, "itdRTDateTime"))
processItdDateTime(pp, predictedDepartureTime); processItdDateTime(pp, predictedDepartureTime);
if (XmlPullUtil.test(pp, "itdFrequencyInfo")) XmlPullUtil.optSkip(pp, "itdFrequencyInfo");
XmlPullUtil.next(pp);
XmlPullUtil.require(pp, "itdServingLine"); XmlPullUtil.require(pp, "itdServingLine");
final boolean isRealtime = XmlPullUtil.attr(pp, "realtime").equals("1"); final boolean isRealtime = XmlPullUtil.attr(pp, "realtime").equals("1");
@ -2190,10 +2189,8 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
return new QueryTripsResult(header, QueryTripsResult.Status.NO_TRIPS); return new QueryTripsResult(header, QueryTripsResult.Status.NO_TRIPS);
XmlPullUtil.next(pp); XmlPullUtil.next(pp);
} }
if (XmlPullUtil.test(pp, "itdPrintConfiguration")) XmlPullUtil.optSkip(pp, "itdPrintConfiguration");
XmlPullUtil.next(pp); XmlPullUtil.optSkip(pp, "itdAddress");
if (XmlPullUtil.test(pp, "itdAddress"))
XmlPullUtil.next(pp);
List<Location> ambiguousFrom = null, ambiguousTo = null, ambiguousVia = null; List<Location> ambiguousFrom = null, ambiguousTo = null, ambiguousVia = null;
Location from = null, via = null, to = null; Location from = null, via = null, to = null;
@ -2297,8 +2294,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
while (XmlPullUtil.test(pp, "itdDateTime")) while (XmlPullUtil.test(pp, "itdDateTime"))
XmlPullUtil.next(pp); XmlPullUtil.next(pp);
if (XmlPullUtil.test(pp, "itdMapItemList")) XmlPullUtil.optSkip(pp, "itdMapItemList");
XmlPullUtil.next(pp);
XmlPullUtil.enter(pp, "itdPartialRouteList"); XmlPullUtil.enter(pp, "itdPartialRouteList");
final List<Trip.Leg> legs = new LinkedList<Trip.Leg>(); final List<Trip.Leg> legs = new LinkedList<Trip.Leg>();
@ -2320,8 +2316,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
firstDepartureLocation = departureLocation; firstDepartureLocation = departureLocation;
final Position departurePosition = parsePosition(XmlPullUtil.optAttr(pp, "platformName", null)); final Position departurePosition = parsePosition(XmlPullUtil.optAttr(pp, "platformName", null));
XmlPullUtil.enter(pp, "itdPoint"); XmlPullUtil.enter(pp, "itdPoint");
if (XmlPullUtil.test(pp, "itdMapItemList")) XmlPullUtil.optSkip(pp, "itdMapItemList");
XmlPullUtil.next(pp);
XmlPullUtil.require(pp, "itdDateTime"); XmlPullUtil.require(pp, "itdDateTime");
processItdDateTime(pp, calendar); processItdDateTime(pp, calendar);
final Date departureTime = calendar.getTime(); final Date departureTime = calendar.getTime();
@ -2341,8 +2336,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
lastArrivalLocation = arrivalLocation; lastArrivalLocation = arrivalLocation;
final Position arrivalPosition = parsePosition(XmlPullUtil.optAttr(pp, "platformName", null)); final Position arrivalPosition = parsePosition(XmlPullUtil.optAttr(pp, "platformName", null));
XmlPullUtil.enter(pp, "itdPoint"); XmlPullUtil.enter(pp, "itdPoint");
if (XmlPullUtil.test(pp, "itdMapItemList")) XmlPullUtil.optSkip(pp, "itdMapItemList");
XmlPullUtil.next(pp);
XmlPullUtil.require(pp, "itdDateTime"); XmlPullUtil.require(pp, "itdDateTime");
processItdDateTime(pp, calendar); processItdDateTime(pp, calendar);
final Date arrivalTime = calendar.getTime(); final Date arrivalTime = calendar.getTime();
@ -2470,11 +2464,8 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
XmlPullUtil.enter(pp, "itdMeansOfTransport"); XmlPullUtil.enter(pp, "itdMeansOfTransport");
XmlPullUtil.skipExit(pp, "itdMeansOfTransport"); XmlPullUtil.skipExit(pp, "itdMeansOfTransport");
if (XmlPullUtil.test(pp, "itdStopSeq")) XmlPullUtil.optSkip(pp, "itdStopSeq");
XmlPullUtil.next(pp); XmlPullUtil.optSkip(pp, "itdFootPathInfo");
if (XmlPullUtil.test(pp, "itdFootPathInfo"))
XmlPullUtil.next(pp);
List<Point> path = null; List<Point> path = null;
if (XmlPullUtil.test(pp, "itdPathCoordinates")) if (XmlPullUtil.test(pp, "itdPathCoordinates"))

View file

@ -1665,10 +1665,8 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider {
final int[] capacity; final int[] capacity;
if (XmlPullUtil.test(pp, "StopPrognosis")) { if (XmlPullUtil.test(pp, "StopPrognosis")) {
XmlPullUtil.enter(pp, "StopPrognosis"); XmlPullUtil.enter(pp, "StopPrognosis");
if (XmlPullUtil.test(pp, "Arr")) XmlPullUtil.optSkip(pp, "Arr");
XmlPullUtil.next(pp); XmlPullUtil.optSkip(pp, "Dep");
if (XmlPullUtil.test(pp, "Dep"))
XmlPullUtil.next(pp);
XmlPullUtil.enter(pp, "Status"); XmlPullUtil.enter(pp, "Status");
XmlPullUtil.skipExit(pp, "Status"); XmlPullUtil.skipExit(pp, "Status");
final int capacity1st = Integer.parseInt(XmlPullUtil.optValueTag(pp, "Capacity1st", "0")); final int capacity1st = Integer.parseInt(XmlPullUtil.optValueTag(pp, "Capacity1st", "0"));
@ -1712,10 +1710,7 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider {
XmlPullUtil.next(pp); XmlPullUtil.next(pp);
final Location sectionDepartureLocation = parseLocation(pp); final Location sectionDepartureLocation = parseLocation(pp);
if (XmlPullUtil.test(pp, "Arr")) { XmlPullUtil.optSkip(pp, "Arr");
XmlPullUtil.enter(pp, "Arr");
XmlPullUtil.skipExit(pp, "Arr");
}
XmlPullUtil.enter(pp, "Dep"); XmlPullUtil.enter(pp, "Dep");
time.setTimeInMillis(currentDate.getTimeInMillis()); time.setTimeInMillis(currentDate.getTimeInMillis());
parseTime(time, XmlPullUtil.valueTag(pp, "Time")); parseTime(time, XmlPullUtil.valueTag(pp, "Time"));