This commit is contained in:
Andreas Schildbach 2014-08-31 11:52:54 +02:00
parent 8895e1695f
commit 11f12a0386
9 changed files with 75 additions and 11 deletions

View file

@ -1055,7 +1055,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
return "IEC" + trainNum;
if ("EN".equals(trainType) || "EuroNight".equals(trainName))
return "IEN" + trainNum;
if ("IC".equals(trainType) || "InterCity".equals(trainName))
if (("IC".equals(trainType) || "InterCity".equals(trainName)) && trainNum != null)
return "IIC" + trainNum;
if ("InterCity".equals(longName))
return "IIC";
@ -1120,7 +1120,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
return 'R' + symbol;
if ("REX".equals(trainType)) // RegionalExpress, Österreich
return "RREX" + trainNum;
if ("RB".equals(trainType) || "Regionalbahn".equals(trainName))
if (("RB".equals(trainType) || "Regionalbahn".equals(trainName)) && trainNum != null)
return "RRB" + trainNum;
if (trainType == null && trainNum != null && P_LINE_RB.matcher(trainNum).matches())
return 'R' + trainNum;
@ -1140,7 +1140,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
return "RE" + trainNum;
if ("WFB".equals(trainType) || "WestfalenBahn".equals(trainName))
return "RWFB" + trainNum;
if ("NWB".equals(trainType) || "NordWestBahn".equals(trainName))
if (("NWB".equals(trainType) || "NordWestBahn".equals(trainName)) && trainNum != null)
return "RNWB" + trainNum;
if ("WES".equals(trainType) || "Westbahn".equals(trainName))
return "RWES" + trainNum;
@ -1293,6 +1293,8 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
return 'R' + symbol;
if ("KD".equals(trainType)) // Koleje Dolnośląskie (Niederschlesische Eisenbahn)
return 'R' + symbol;
if ("Koleje Dolnoslaskie".equals(trainName) && symbol != null) // Koleje Dolnośląskie
return "R" + symbol;
if ("OO".equals(trainType) || "Ordinary passenger (o.pas.)".equals(trainName)) // GB
return "ROO" + trainNum;
if ("XX".equals(trainType) || "Express passenger (ex.pas.)".equals(trainName)) // GB
@ -1337,9 +1339,13 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
return "RÖBA" + trainNum;
if (("UEF".equals(trainType) || "Ulmer Eisenbahnfreunde".equals(trainName)) && trainNum != null)
return "RUEF" + trainNum;
if (("DBG".equals(trainType) || "Döllnitzbahn".equals(trainName)) && trainNum != null)
return "RDBG" + trainNum;
if ("BSB-Zug".equals(trainName) && trainNum != null) // Breisgau-S-Bahn
return 'S' + trainNum;
if ("BSB-Zug".equals(trainName) && trainNum == null)
return "SBSB";
if ("BSB-Zug".equals(longName))
return "SBSB";
if ("RSB".equals(trainType)) // Regionalschnellbahn, Wien
@ -1369,6 +1375,8 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
if ("SB".equals(trainType)) // Seilbahn
return "CSB" + trainNum;
if ("ZUG".equals(trainType) && trainNum != null)
return '?' + trainNum;
if (trainType == null && trainName == null && P_LINE_NUMBER.matcher(symbol).matches())
return '?' + symbol;
if (trainType == null && trainName == null && symbol.equals(name) && symbol.equals(longName))

View file

@ -43,6 +43,19 @@ public class AvvProvider extends AbstractEfaProvider
return NETWORK_ID;
}
@Override
protected String parseLine(final String mot, final String symbol, final String name, final String longName, final String trainType,
final String trainNum, final String trainName)
{
if ("0".equals(mot))
{
if ("Regionalbahn".equals(trainName) && symbol != null)
return 'R' + symbol;
}
return super.parseLine(mot, symbol, name, longName, trainType, trainNum, trainName);
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static

View file

@ -151,6 +151,15 @@ public final class BvgProvider extends AbstractHafasProvider
return super.normalizeLineName(lineName);
}
@Override
protected Line parseLineAndType(final String lineAndType)
{
if ("X#".equals(lineAndType))
return newLine('I', "X", null); // InterConnex
else
return super.parseLineAndType(lineAndType);
}
@Override
protected Line newLine(final char product, final String normalizedName, final String comment, final Attr... attrs)
{

View file

@ -67,6 +67,10 @@ public class MvvProvider extends AbstractEfaProvider
return "SA";
if ("DB AG".equals(trainName))
return '?' + symbol;
if ("Zug".equals(symbol))
return "?Zug";
if ("alex".equals(symbol))
return "?alex";
}
return super.parseLine(mot, symbol, name, longName, trainType, trainNum, trainName);

View file

@ -44,24 +44,30 @@ public class NvbwProvider extends AbstractEfaProvider
{
if ("0".equals(mot))
{
if ("ICE".equals(trainName) && trainNum == null)
if (("ICE".equals(trainName) || "InterCityExpress".equals(trainName)) && trainNum == null)
return "IICE";
if ("Fernreisezug externer EU".equals(trainName))
if ("InterCity".equals(trainName) && trainNum == null)
return "IIC";
if ("Fernreisezug externer EU".equals(trainName) && trainNum == null)
return "I";
if ("Nahverkehrszug von Dritten".equals(trainName) || "DB-Zug".equals(trainName) || "REGIOBAHN".equals(trainName))
if ("SuperCity".equals(trainName) && trainNum == null)
return "ISC";
if ("REGIOBAHN".equals(trainName) && trainNum == null)
return "R";
if ("RR".equals(trainType))
return "RRR" + trainNum;
if ("RR".equals(trainType) && trainNum == null)
return "RRR";
if ("Meridian".equals(trainName) && symbol != null)
return "R" + symbol;
if ("CityBahn".equals(trainName) && trainNum == null)
return "RCB";
if ("Trilex".equals(trainName) && trainNum == null)
return "RTLX";
if ("Koleje Dolnoslaskie".equals(trainName))
return "RKD";
if ("Bay. Seenschifffahrt".equals(trainName) && symbol != null)
return "F" + symbol;
if ("Nahverkehrszug von Dritten".equals(trainName) && trainNum == null)
return "?Zug";
if ("DB".equals(trainName) && trainNum == null)
return "?DB";
}
return super.parseLine(mot, symbol, name, longName, trainType, trainNum, trainName);

View file

@ -143,7 +143,7 @@ public class VbbProvider extends AbstractHafasProvider
protected Line parseLineAndType(final String lineAndType)
{
if ("X#".equals(lineAndType))
return newLine('?', "X", null);
return newLine('I', "X", null); // InterConnex
else
return super.parseLineAndType(lineAndType);
}

View file

@ -34,4 +34,17 @@ public class VrnProvider extends AbstractEfaProvider
{
return NETWORK_ID;
}
@Override
protected String parseLine(final String mot, final String symbol, final String name, final String longName, final String trainType,
final String trainNum, final String trainName)
{
if ("0".equals(mot))
{
if ("vlexx".equals(trainName))
return "Rvlexx";
}
return super.parseLine(mot, symbol, name, longName, trainType, trainNum, trainName);
}
}

View file

@ -54,6 +54,10 @@ public class VrrProvider extends AbstractEfaProvider
{
if (trainType == null && "RB67/71".equals(trainNum))
return 'R' + trainNum;
if ("Regionalbahn".equals(trainName) && symbol != null)
return 'R' + symbol;
if ("NordWestBahn".equals(trainName) && symbol != null)
return 'R' + symbol;
if (trainType == null && "SEV7".equals(trainNum))
return 'B' + trainNum;

View file

@ -50,10 +50,17 @@ public class VvoProvider extends AbstractEfaProvider
{
if ("0".equals(mot))
{
if ("Twoje Linie Kolejowe".equals(trainName) && symbol != null)
return "ITLK" + symbol;
if ("Regionalbahn".equals(trainName) && trainNum == null)
return "R";
if ("Ostdeutsche Eisenbahn GmbH".equals(longName))
return "ROE";
if ("Meridian".equals(longName))
return "RM";
if ("U28".equals(symbol)) // Nationalparkbahn
return "RU28";
if ("Fernbus".equals(trainName) && trainNum == null)
return "B" + trainName;