mirror of
https://gitlab.com/oeffi/public-transport-enabler.git
synced 2025-07-19 00:39:58 +00:00
EFA: Fix handling of another broken empty <itdSingleTicket>.
This commit is contained in:
parent
e92aa098a0
commit
82f09b16d8
1 changed files with 34 additions and 31 deletions
|
@ -2386,7 +2386,8 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
|
||||||
if (!pp.isEmptyElementTag()) {
|
if (!pp.isEmptyElementTag()) {
|
||||||
XmlPullUtil.enter(pp, "itdFare");
|
XmlPullUtil.enter(pp, "itdFare");
|
||||||
if (XmlPullUtil.test(pp, "itdSingleTicket")) {
|
if (XmlPullUtil.test(pp, "itdSingleTicket")) {
|
||||||
final String net = XmlPullUtil.attr(pp, "net").toUpperCase();
|
final String net = XmlPullUtil.optAttr(pp, "net", null);
|
||||||
|
if (net != null) {
|
||||||
final Currency currency = parseCurrency(XmlPullUtil.attr(pp, "currency"));
|
final Currency currency = parseCurrency(XmlPullUtil.attr(pp, "currency"));
|
||||||
final String fareAdult = XmlPullUtil.optAttr(pp, "fareAdult", null);
|
final String fareAdult = XmlPullUtil.optAttr(pp, "fareAdult", null);
|
||||||
final String fareChild = XmlPullUtil.optAttr(pp, "fareChild", null);
|
final String fareChild = XmlPullUtil.optAttr(pp, "fareChild", null);
|
||||||
|
@ -2396,12 +2397,12 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
|
||||||
final String levelAdult = XmlPullUtil.optAttr(pp, "levelAdult", null);
|
final String levelAdult = XmlPullUtil.optAttr(pp, "levelAdult", null);
|
||||||
final String levelChild = XmlPullUtil.optAttr(pp, "levelChild", null);
|
final String levelChild = XmlPullUtil.optAttr(pp, "levelChild", null);
|
||||||
if (fareAdult != null)
|
if (fareAdult != null)
|
||||||
fares.add(new Fare(net, Type.ADULT, currency,
|
fares.add(new Fare(net.toUpperCase(), Type.ADULT, currency,
|
||||||
Float.parseFloat(fareAdult) * fareCorrectionFactor,
|
Float.parseFloat(fareAdult) * fareCorrectionFactor,
|
||||||
levelAdult != null ? null : unitName,
|
levelAdult != null ? null : unitName,
|
||||||
levelAdult != null ? levelAdult : unitsAdult));
|
levelAdult != null ? levelAdult : unitsAdult));
|
||||||
if (fareChild != null)
|
if (fareChild != null)
|
||||||
fares.add(new Fare(net, Type.CHILD, currency,
|
fares.add(new Fare(net.toUpperCase(), Type.CHILD, currency,
|
||||||
Float.parseFloat(fareChild) * fareCorrectionFactor,
|
Float.parseFloat(fareChild) * fareCorrectionFactor,
|
||||||
levelChild != null ? null : unitName,
|
levelChild != null ? null : unitName,
|
||||||
levelChild != null ? levelChild : unitsChild));
|
levelChild != null ? levelChild : unitsChild));
|
||||||
|
@ -2411,7 +2412,8 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
|
||||||
if (XmlPullUtil.test(pp, "itdGenericTicketList")) {
|
if (XmlPullUtil.test(pp, "itdGenericTicketList")) {
|
||||||
XmlPullUtil.enter(pp, "itdGenericTicketList");
|
XmlPullUtil.enter(pp, "itdGenericTicketList");
|
||||||
while (XmlPullUtil.test(pp, "itdGenericTicketGroup")) {
|
while (XmlPullUtil.test(pp, "itdGenericTicketGroup")) {
|
||||||
final Fare fare = processItdGenericTicketGroup(pp, net, currency);
|
final Fare fare = processItdGenericTicketGroup(pp, net.toUpperCase(),
|
||||||
|
currency);
|
||||||
if (fare != null)
|
if (fare != null)
|
||||||
fares.add(fare);
|
fares.add(fare);
|
||||||
}
|
}
|
||||||
|
@ -2422,6 +2424,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider {
|
||||||
XmlPullUtil.next(pp);
|
XmlPullUtil.next(pp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
XmlPullUtil.skipExit(pp, "itdFare");
|
XmlPullUtil.skipExit(pp, "itdFare");
|
||||||
} else {
|
} else {
|
||||||
XmlPullUtil.next(pp);
|
XmlPullUtil.next(pp);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue