git-svn-id: https://public-transport-enabler.googlecode.com/svn/trunk@791 0924bc21-9374-b0fa-ee44-9ff1593b38f0
This commit is contained in:
andreas.schildbach@gmail.com 2011-09-25 16:43:52 +00:00
parent d66b966031
commit 4964965f11

View file

@ -481,7 +481,7 @@ public abstract class AbstractHafasProvider implements NetworkProvider
final String targetLoc = pp.getAttributeValue(null, "targetLoc"); final String targetLoc = pp.getAttributeValue(null, "targetLoc");
// TODO hafasname // TODO hafasname
final String dirnr = pp.getAttributeValue(null, "dirnr"); final String dirnr = pp.getAttributeValue(null, "dirnr");
String prod = XmlPullUtil.attr(pp, "prod"); final String prod = XmlPullUtil.attr(pp, "prod");
final String classStr = pp.getAttributeValue(null, "class"); final String classStr = pp.getAttributeValue(null, "class");
final String dir = pp.getAttributeValue(null, "dir"); final String dir = pp.getAttributeValue(null, "dir");
final String capacityStr = pp.getAttributeValue(null, "capacity"); final String capacityStr = pp.getAttributeValue(null, "capacity");
@ -545,13 +545,21 @@ public abstract class AbstractHafasProvider implements NetworkProvider
else else
destinationId = 0; destinationId = 0;
final Matcher m = P_NORMALIZE_LINE.matcher(prod); final String lineStr;
if (m.matches()) if (classStr != null)
prod = m.group(1) + m.group(2); {
final char classChar = intToProduct(Integer.parseInt(classStr));
final char product = classStr != null ? intToProduct(Integer.parseInt(classStr)) : 0; final Matcher m = P_NORMALIZE_LINE.matcher(prod);
if (m.matches())
final String line = product != 0 ? product + prod : normalizeLine(prod); lineStr = classChar + m.group(1) + m.group(2);
else
lineStr = classChar + prod;
}
else
{
lineStr = normalizeLine(prod);
}
final Line line = new Line(null, lineStr, lineStr != null ? lineColors(lineStr) : null);
final int[] capacity; final int[] capacity;
if (capacityStr != null && !"0|0".equals(capacityStr)) if (capacityStr != null && !"0|0".equals(capacityStr))
@ -575,8 +583,8 @@ public abstract class AbstractHafasProvider implements NetworkProvider
message = null; message = null;
} }
final Departure departure = new Departure(plannedTime.getTime(), predictedTime != null ? predictedTime.getTime() : null, final Departure departure = new Departure(plannedTime.getTime(), predictedTime != null ? predictedTime.getTime() : null, line,
new Line(null, line, line != null ? lineColors(line) : null), position, destinationId, destination, capacity, message); position, destinationId, destination, capacity, message);
departures.add(departure); departures.add(departure);
} }