mirror of
https://gitlab.com/oeffi/public-transport-enabler.git
synced 2025-07-14 16:40:30 +00:00
Include network with Line.
This commit is contained in:
parent
39008afc0b
commit
2038a740e2
23 changed files with 446 additions and 418 deletions
|
@ -1004,8 +1004,9 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
|||
private static final Pattern P_LINE_S_DB = Pattern.compile("(S\\d+) \\((?:DB Regio AG)\\)");
|
||||
private static final Pattern P_LINE_NUMBER = Pattern.compile("\\d+");
|
||||
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if (mot == null)
|
||||
{
|
||||
|
@ -1013,33 +1014,33 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
|||
{
|
||||
final String str = Strings.nullToEmpty(name);
|
||||
if (trainName.equals("S-Bahn"))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, str);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, str);
|
||||
if (trainName.equals("U-Bahn"))
|
||||
return new Line(id, Product.SUBWAY, str);
|
||||
return new Line(id, network, Product.SUBWAY, str);
|
||||
if (trainName.equals("Straßenbahn"))
|
||||
return new Line(id, Product.TRAM, str);
|
||||
return new Line(id, network, Product.TRAM, str);
|
||||
if (trainName.equals("Badner Bahn"))
|
||||
return new Line(id, Product.TRAM, str);
|
||||
return new Line(id, network, Product.TRAM, str);
|
||||
if (trainName.equals("Stadtbus"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
if (trainName.equals("Citybus"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
if (trainName.equals("Regionalbus"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
if (trainName.equals("ÖBB-Postbus"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
if (trainName.equals("Autobus"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
if (trainName.equals("Discobus"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
if (trainName.equals("Nachtbus"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
if (trainName.equals("Anrufsammeltaxi"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
if (trainName.equals("Ersatzverkehr"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
if (trainName.equals("Vienna Airport Lines"))
|
||||
return new Line(id, Product.BUS, str);
|
||||
return new Line(id, network, Product.BUS, str);
|
||||
}
|
||||
}
|
||||
else if ("0".equals(mot))
|
||||
|
@ -1047,398 +1048,398 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
|||
final String trainNumStr = Strings.nullToEmpty(trainNum);
|
||||
|
||||
if (("EC".equals(trainType) || "EuroCity".equals(trainName) || "Eurocity".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "EC" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "EC" + trainNum);
|
||||
if (("EN".equals(trainType) || "EuroNight".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "EN" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "EN" + trainNum);
|
||||
if (("IC".equals(trainType) || "InterCity".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "IC" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "IC" + trainNum);
|
||||
if (("ICE".equals(trainType) || "ICE".equals(trainName) || "Intercity-Express".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "ICE" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "ICE" + trainNum);
|
||||
if (("ICN".equals(trainType) || "InterCityNight".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "ICN" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "ICN" + trainNum);
|
||||
if (("X".equals(trainType) || "InterConnex".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "X" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "X" + trainNum);
|
||||
if (("CNL".equals(trainType) || "CityNightLine".equals(trainName)) && trainNum != null) // City Night Line
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "CNL" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "CNL" + trainNum);
|
||||
if (("THA".equals(trainType) || "Thalys".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "THA" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "THA" + trainNum);
|
||||
if ("RHI".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "RHI" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "RHI" + trainNum);
|
||||
if (("TGV".equals(trainType) || "TGV".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "TGV" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "TGV" + trainNum);
|
||||
if ("TGD".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "TGD" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "TGD" + trainNum);
|
||||
if ("INZ".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "INZ" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "INZ" + trainNum);
|
||||
if (("RJ".equals(trainType) || "railjet".equals(trainName)) && trainNum != null) // railjet
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "RJ" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "RJ" + trainNum);
|
||||
if (("WB".equals(trainType) || "WESTbahn".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "WB" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "WB" + trainNum);
|
||||
if (("HKX".equals(trainType) || "Hamburg-Köln-Express".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "HKX" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "HKX" + trainNum);
|
||||
if ("INT".equals(trainType) && trainNum != null) // SVV, VAGFR
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "INT" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "INT" + trainNum);
|
||||
if (("SC".equals(trainType) || "SC Pendolino".equals(trainName)) && trainNum != null) // SuperCity
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "SC" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "SC" + trainNum);
|
||||
if ("ECB".equals(trainType) && trainNum != null) // EC, Verona-München
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "ECB" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "ECB" + trainNum);
|
||||
if ("ES".equals(trainType) && trainNum != null) // Eurostar Italia
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "ES" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "ES" + trainNum);
|
||||
if (("EST".equals(trainType) || "EUROSTAR".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "EST" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "EST" + trainNum);
|
||||
if ("EIC".equals(trainType) && trainNum != null) // Ekspres InterCity, Polen
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "EIC" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "EIC" + trainNum);
|
||||
if ("MT".equals(trainType) && "Schnee-Express".equals(trainName) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "MT" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "MT" + trainNum);
|
||||
if (("TLK".equals(trainType) || "Tanie Linie Kolejowe".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "TLK" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "TLK" + trainNum);
|
||||
|
||||
if ("Zug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("Zuglinie".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("IR".equals(trainType) || "Interregio".equals(trainName) || "InterRegio".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "IR" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "IR" + trainNum);
|
||||
if ("IRE".equals(trainType) || "Interregio-Express".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "IRE" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "IRE" + trainNum);
|
||||
if ("InterRegioExpress".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "IRE" + trainNumStr);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "IRE" + trainNumStr);
|
||||
if ("RE".equals(trainType) || "Regional-Express".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RE" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RE" + trainNum);
|
||||
if (trainType == null && trainNum != null && P_LINE_RE.matcher(trainNum).matches())
|
||||
return new Line(id, Product.REGIONAL_TRAIN, trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, trainNum);
|
||||
if ("Regionalexpress".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("R-Bahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("RB-Bahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("RE-Bahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("REX".equals(trainType)) // RegionalExpress, Österreich
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "REX" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "REX" + trainNum);
|
||||
if (("RB".equals(trainType) || "Regionalbahn".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RB" + trainNum);
|
||||
if (trainType == null && trainNum != null && P_LINE_RB.matcher(trainNum).matches())
|
||||
return new Line(id, Product.REGIONAL_TRAIN, trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, trainNum);
|
||||
if ("Abellio-Zug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("Westfalenbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("Chiemseebahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("R".equals(trainType) || "Regionalzug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "R" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "R" + trainNum);
|
||||
if (trainType == null && trainNum != null && P_LINE_R.matcher(trainNum).matches())
|
||||
return new Line(id, Product.REGIONAL_TRAIN, trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, trainNum);
|
||||
if ("D".equals(trainType) || "Schnellzug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "D" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "D" + trainNum);
|
||||
if ("E".equals(trainType) || "Eilzug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "E" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "E" + trainNum);
|
||||
if ("WFB".equals(trainType) || "WestfalenBahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "WFB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "WFB" + trainNum);
|
||||
if (("NWB".equals(trainType) || "NordWestBahn".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "NWB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "NWB" + trainNum);
|
||||
if ("WES".equals(trainType) || "Westbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "WES" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "WES" + trainNum);
|
||||
if ("ERB".equals(trainType) || "eurobahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ERB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ERB" + trainNum);
|
||||
if ("CAN".equals(trainType) || "cantus Verkehrsgesellschaft".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "CAN" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "CAN" + trainNum);
|
||||
if ("HEX".equals(trainType) || "Veolia Verkehr Sachsen-Anhalt".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "HEX" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "HEX" + trainNum);
|
||||
if ("EB".equals(trainType) || "Erfurter Bahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "EB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "EB" + trainNum);
|
||||
if ("Erfurter Bahn".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "EB");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "EB");
|
||||
if ("EBx".equals(trainType) || "Erfurter Bahn Express".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "EBx" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "EBx" + trainNum);
|
||||
if ("Erfurter Bahn Express".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "EBx");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "EBx");
|
||||
if ("MRB".equals(trainType) || "Mitteldeutsche Regiobahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "MRB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "MRB" + trainNum);
|
||||
if ("ABR".equals(trainType) || "ABELLIO Rail NRW GmbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ABR" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ABR" + trainNum);
|
||||
if ("NEB".equals(trainType) || "NEB Niederbarnimer Eisenbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "NEB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "NEB" + trainNum);
|
||||
if ("OE".equals(trainType) || "Ostdeutsche Eisenbahn GmbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "OE" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "OE" + trainNum);
|
||||
if ("ODE".equals(trainType))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("OLA".equals(trainType) || "Ostseeland Verkehr GmbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "OLA" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "OLA" + trainNum);
|
||||
if ("UBB".equals(trainType) || "Usedomer Bäderbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "UBB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "UBB" + trainNum);
|
||||
if ("EVB".equals(trainType) || "ELBE-WESER GmbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "EVB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "EVB" + trainNum);
|
||||
if ("RTB".equals(trainType) || "Rurtalbahn GmbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RTB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RTB" + trainNum);
|
||||
if ("STB".equals(trainType) || "Süd-Thüringen-Bahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "STB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "STB" + trainNum);
|
||||
if ("HTB".equals(trainType) || "Hellertalbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "HTB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "HTB" + trainNum);
|
||||
if ("VBG".equals(trainType) || "Vogtlandbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "VBG" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "VBG" + trainNum);
|
||||
if ("CB".equals(trainType) || "City-Bahn Chemnitz".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "CB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "CB" + trainNum);
|
||||
if ("VEC".equals(trainType) || "vectus Verkehrsgesellschaft".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "VEC" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "VEC" + trainNum);
|
||||
if ("HzL".equals(trainType) || "Hohenzollerische Landesbahn AG".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "HzL" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "HzL" + trainNum);
|
||||
if ("SBB".equals(trainType) || "SBB GmbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SBB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SBB" + trainNum);
|
||||
if ("MBB".equals(trainType) || "Mecklenburgische Bäderbahn Molli".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "MBB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "MBB" + trainNum);
|
||||
if ("OS".equals(trainType)) // Osobní vlak
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "OS" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "OS" + trainNum);
|
||||
if ("SP".equals(trainType) || "Sp".equals(trainType)) // Spěšný vlak
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SP" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SP" + trainNum);
|
||||
if ("Dab".equals(trainType) || "Daadetalbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "Dab" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "Dab" + trainNum);
|
||||
if ("FEG".equals(trainType) || "Freiberger Eisenbahngesellschaft".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "FEG" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "FEG" + trainNum);
|
||||
if ("ARR".equals(trainType) || "ARRIVA".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ARR" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ARR" + trainNum);
|
||||
if ("HSB".equals(trainType) || "Harzer Schmalspurbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "HSB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "HSB" + trainNum);
|
||||
if ("ALX".equals(trainType) || "alex - Länderbahn und Vogtlandbahn GmbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ALX" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ALX" + trainNum);
|
||||
if ("EX".equals(trainType) || "Fatra".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "EX" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "EX" + trainNum);
|
||||
if ("ME".equals(trainType) || "metronom".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ME" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ME" + trainNum);
|
||||
if ("metronom".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ME");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ME");
|
||||
if ("MEr".equals(trainType))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "MEr" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "MEr" + trainNum);
|
||||
if ("AKN".equals(trainType) || "AKN Eisenbahn AG".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "AKN" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "AKN" + trainNum);
|
||||
if ("SOE".equals(trainType) || "Sächsisch-Oberlausitzer Eisenbahngesellschaft".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SOE" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SOE" + trainNum);
|
||||
if ("VIA".equals(trainType) || "VIAS GmbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "VIA" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "VIA" + trainNum);
|
||||
if ("BRB".equals(trainType) || "Bayerische Regiobahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "BRB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "BRB" + trainNum);
|
||||
if ("BLB".equals(trainType) || "Berchtesgadener Land Bahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "BLB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "BLB" + trainNum);
|
||||
if ("HLB".equals(trainType) || "Hessische Landesbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "HLB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "HLB" + trainNum);
|
||||
if ("NOB".equals(trainType) || "NordOstseeBahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "NOB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "NOB" + trainNum);
|
||||
if ("NBE".equals(trainType) || "Nordbahn Eisenbahngesellschaft".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "NBE" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "NBE" + trainNum);
|
||||
if ("VEN".equals(trainType) || "Rhenus Veniro".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "VEN" + trainType);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "VEN" + trainType);
|
||||
if ("DPN".equals(trainType) || "Nahreisezug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "DPN" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "DPN" + trainNum);
|
||||
if ("RBG".equals(trainType) || "Regental Bahnbetriebs GmbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RBG" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RBG" + trainNum);
|
||||
if ("BOB".equals(trainType) || "Bodensee-Oberschwaben-Bahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "BOB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "BOB" + trainNum);
|
||||
if ("VE".equals(trainType) || "Vetter".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "VE" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "VE" + trainNum);
|
||||
if ("SDG".equals(trainType) || "SDG Sächsische Dampfeisenbahngesellschaft mbH".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SDG" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SDG" + trainNum);
|
||||
if ("PRE".equals(trainType) || "Pressnitztalbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "PRE" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "PRE" + trainNum);
|
||||
if ("VEB".equals(trainType) || "Vulkan-Eifel-Bahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "VEB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "VEB" + trainNum);
|
||||
if ("neg".equals(trainType) || "Norddeutsche Eisenbahn Gesellschaft".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "neg" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "neg" + trainNum);
|
||||
if ("AVG".equals(trainType) || "Felsenland-Express".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "AVG" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "AVG" + trainNum);
|
||||
if ("P".equals(trainType) || "BayernBahn Betriebs-GmbH".equals(trainName) || "Brohltalbahn".equals(trainName)
|
||||
|| "Kasbachtalbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "P" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "P" + trainNum);
|
||||
if ("SBS".equals(trainType) || "Städtebahn Sachsen".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SBS" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SBS" + trainNum);
|
||||
if ("SES".equals(trainType) || "Städteexpress Sachsen".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SES" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SES" + trainNum);
|
||||
if ("SB-".equals(trainType)) // Städtebahn Sachsen
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SB" + trainNum);
|
||||
if ("ag".equals(trainType)) // agilis
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ag" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ag" + trainNum);
|
||||
if ("agi".equals(trainType) || "agilis".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "agi" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "agi" + trainNum);
|
||||
if ("as".equals(trainType) || "agilis-Schnellzug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "as" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "as" + trainNum);
|
||||
if ("TLX".equals(trainType) || "TRILEX".equals(trainName)) // Trilex (Vogtlandbahn)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TLX" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TLX" + trainNum);
|
||||
if ("MSB".equals(trainType) || "Mainschleifenbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "MSB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "MSB" + trainNum);
|
||||
if ("BE".equals(trainType) || "Bentheimer Eisenbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "BE" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "BE" + trainNum);
|
||||
if ("erx".equals(trainType) || "erixx - Der Heidesprinter".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "erx" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "erx" + trainNum);
|
||||
if ("SWEG-Zug".equals(trainName)) // Südwestdeutschen Verkehrs-Aktiengesellschaft
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SWEG" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SWEG" + trainNum);
|
||||
if ("SWEG-Zug".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SWEG");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SWEG");
|
||||
if ("EGP Eisenbahngesellschaft Potsdam".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "EGP" + trainNumStr);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "EGP" + trainNumStr);
|
||||
if ("ÖBB".equals(trainType) || "ÖBB".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ÖBB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ÖBB" + trainNum);
|
||||
if ("CAT".equals(trainType)) // City Airport Train Wien
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "CAT" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "CAT" + trainNum);
|
||||
if ("DZ".equals(trainType) || "Dampfzug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "DZ" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "DZ" + trainNum);
|
||||
if ("CD".equals(trainType)) // Tschechien
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "CD" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "CD" + trainNum);
|
||||
if ("VR".equals(trainType)) // Polen
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("PR".equals(trainType)) // Polen
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("KD".equals(trainType)) // Koleje Dolnośląskie (Niederschlesische Eisenbahn)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("Koleje Dolnoslaskie".equals(trainName) && symbol != null) // Koleje Dolnośląskie
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("OO".equals(trainType) || "Ordinary passenger (o.pas.)".equals(trainName)) // GB
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "OO" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "OO" + trainNum);
|
||||
if ("XX".equals(trainType) || "Express passenger (ex.pas.)".equals(trainName)) // GB
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "XX" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "XX" + trainNum);
|
||||
if ("XZ".equals(trainType) || "Express passenger sleeper".equals(trainName)) // GB
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "XZ" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "XZ" + trainNum);
|
||||
if ("ATB".equals(trainType)) // Autoschleuse Tauernbahn
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ATB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ATB" + trainNum);
|
||||
if ("ATZ".equals(trainType)) // Autozug
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ATZ" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ATZ" + trainNum);
|
||||
if ("AZ".equals(trainType) || "Auto-Zug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "AZ" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "AZ" + trainNum);
|
||||
if ("DWE".equals(trainType) || "Dessau-Wörlitzer Eisenbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "DWE" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "DWE" + trainNum);
|
||||
if ("KTB".equals(trainType) || "Kandertalbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "KTB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "KTB" + trainNum);
|
||||
if ("CBC".equals(trainType) || "CBC".equals(trainName)) // City-Bahn Chemnitz
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "CBC" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "CBC" + trainNum);
|
||||
if ("Bernina Express".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, trainNum);
|
||||
if ("STR".equals(trainType)) // Harzquerbahn, Nordhausen
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "STR" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "STR" + trainNum);
|
||||
if ("EXT".equals(trainType) || "Extrazug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "EXT" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "EXT" + trainNum);
|
||||
if ("Heritage Railway".equals(trainName)) // GB
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("WTB".equals(trainType) || "Wutachtalbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "WTB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "WTB" + trainNum);
|
||||
if ("DB".equals(trainType) || "DB Regio".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "DB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "DB" + trainNum);
|
||||
if ("M".equals(trainType) && "Meridian".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "M" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "M" + trainNum);
|
||||
if ("M".equals(trainType) && "Messezug".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "M" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "M" + trainNum);
|
||||
if ("EZ".equals(trainType)) // ÖBB Erlebniszug
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "EZ" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "EZ" + trainNum);
|
||||
if ("DPF".equals(trainType))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "DPF" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "DPF" + trainNum);
|
||||
if ("WBA".equals(trainType) || "Waldbahn".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "WBA" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "WBA" + trainNum);
|
||||
if ("ÖBA".equals(trainType) && trainNum != null) // Eisenbahn-Betriebsgesellschaft Ochsenhausen
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ÖBA" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ÖBA" + trainNum);
|
||||
if (("UEF".equals(trainType) || "Ulmer Eisenbahnfreunde".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "UEF" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "UEF" + trainNum);
|
||||
if (("DBG".equals(trainType) || "Döllnitzbahn".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "DBG" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "DBG" + trainNum);
|
||||
if (("TL".equals(trainType) || "Trilex".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TL" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TL" + trainNum);
|
||||
if (("OPB".equals(trainType) || "oberpfalzbahn".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "OPB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "OPB" + trainNum);
|
||||
if (("OPX".equals(trainType) || "oberpfalz-express".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "OPX" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "OPX" + trainNum);
|
||||
if (("V6".equals(trainType) || "vlexx".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "vlexx" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "vlexx" + trainNum);
|
||||
if (("ARZ".equals(trainType) || "Autoreisezug".equals(trainName)) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ARZ" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ARZ" + trainNum);
|
||||
|
||||
if ("BSB-Zug".equals(trainName) && trainNum != null) // Breisgau-S-Bahn
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, trainNum);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, trainNum);
|
||||
if ("BSB-Zug".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "BSB");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "BSB");
|
||||
if ("BSB-Zug".equals(longName))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "BSB");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "BSB");
|
||||
if ("RSB".equals(trainType)) // Regionalschnellbahn, Wien
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "RSB" + trainNum);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "RSB" + trainNum);
|
||||
if ("RER".equals(trainName) && symbol != null && symbol.length() == 1) // Réseau Express Régional,
|
||||
// Frankreich
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, symbol);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, symbol);
|
||||
if ("S".equals(trainType))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "S" + trainNum);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "S" + trainNum);
|
||||
if ("S-Bahn".equals(trainName))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "S" + trainNumStr);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "S" + trainNumStr);
|
||||
|
||||
if ("RT".equals(trainType) || "RegioTram".equals(trainName))
|
||||
return new Line(id, Product.TRAM, "RT" + trainNum);
|
||||
return new Line(id, network, Product.TRAM, "RT" + trainNum);
|
||||
|
||||
if ("Bus".equals(trainType))
|
||||
return new Line(id, Product.BUS, "" + trainNum);
|
||||
return new Line(id, network, Product.BUS, "" + trainNum);
|
||||
if ("SEV".equals(trainType) || "SEV".equals(trainNum) || "SEV".equals(trainName) || "SEV".equals(symbol) || "BSV".equals(trainType)
|
||||
|| "Ersatzverkehr".equals(trainName) || "Schienenersatzverkehr".equals(trainName))
|
||||
return new Line(id, Product.BUS, "SEV" + trainNumStr);
|
||||
return new Line(id, network, Product.BUS, "SEV" + trainNumStr);
|
||||
if ("Bus replacement".equals(trainName)) // GB
|
||||
return new Line(id, Product.BUS, "BR");
|
||||
return new Line(id, network, Product.BUS, "BR");
|
||||
if ("BR".equals(trainType) && trainName != null && trainName.startsWith("Bus")) // GB
|
||||
return new Line(id, Product.BUS, "BR" + trainNum);
|
||||
return new Line(id, network, Product.BUS, "BR" + trainNum);
|
||||
|
||||
if ("GB".equals(trainType)) // Gondelbahn
|
||||
return new Line(id, Product.CABLECAR, "GB" + trainNum);
|
||||
return new Line(id, network, Product.CABLECAR, "GB" + trainNum);
|
||||
if ("SB".equals(trainType)) // Seilbahn
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "SB" + trainNum);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "SB" + trainNum);
|
||||
|
||||
if ("ZUG".equals(trainType) && trainNum != null)
|
||||
return new Line(id, null, trainNum);
|
||||
return new Line(id, network, null, trainNum);
|
||||
if (symbol != null && P_LINE_NUMBER.matcher(symbol).matches() && trainType == null && trainName == null)
|
||||
return new Line(id, null, symbol);
|
||||
return new Line(id, network, null, symbol);
|
||||
if ("N".equals(trainType) && trainName == null && symbol == null)
|
||||
return new Line(id, null, "N" + trainNum);
|
||||
return new Line(id, network, null, "N" + trainNum);
|
||||
if ("Train".equals(trainName))
|
||||
return new Line(id, null, null);
|
||||
return new Line(id, network, null, null);
|
||||
|
||||
// generic
|
||||
if (trainName != null && trainType == null && trainNum == null)
|
||||
return new Line(id, null, trainName);
|
||||
return new Line(id, network, null, trainName);
|
||||
}
|
||||
else if ("1".equals(mot))
|
||||
{
|
||||
if (symbol != null && P_LINE_S.matcher(symbol).matches())
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, symbol);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, symbol);
|
||||
if (name != null && P_LINE_S.matcher(name).matches())
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, name);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, name);
|
||||
if ("S-Bahn".equals(trainName))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "S" + Strings.nullToEmpty(trainNum));
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "S" + Strings.nullToEmpty(trainNum));
|
||||
if ("S5X".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "S5X");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "S5X");
|
||||
if (symbol != null && symbol.equals(name))
|
||||
{
|
||||
final Matcher m = P_LINE_S_DB.matcher(symbol);
|
||||
if (m.matches())
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, m.group(1));
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, m.group(1));
|
||||
}
|
||||
}
|
||||
else if ("2".equals(mot))
|
||||
{
|
||||
return new Line(id, Product.SUBWAY, name);
|
||||
return new Line(id, network, Product.SUBWAY, name);
|
||||
}
|
||||
else if ("3".equals(mot) || "4".equals(mot))
|
||||
{
|
||||
return new Line(id, Product.TRAM, name);
|
||||
return new Line(id, network, Product.TRAM, name);
|
||||
}
|
||||
else if ("5".equals(mot) || "6".equals(mot) || "7".equals(mot) || "10".equals(mot))
|
||||
{
|
||||
if ("Schienenersatzverkehr".equals(name))
|
||||
return new Line(id, Product.BUS, "SEV");
|
||||
return new Line(id, network, Product.BUS, "SEV");
|
||||
else
|
||||
return new Line(id, Product.BUS, name);
|
||||
return new Line(id, network, Product.BUS, name);
|
||||
}
|
||||
else if ("8".equals(mot))
|
||||
{
|
||||
return new Line(id, Product.CABLECAR, name);
|
||||
return new Line(id, network, Product.CABLECAR, name);
|
||||
}
|
||||
else if ("9".equals(mot))
|
||||
{
|
||||
return new Line(id, Product.FERRY, name);
|
||||
return new Line(id, network, Product.FERRY, name);
|
||||
}
|
||||
else if ("11".equals(mot))
|
||||
{
|
||||
return new Line(id, null, ParserUtils.firstNotEmpty(symbol, name));
|
||||
return new Line(id, network, null, ParserUtils.firstNotEmpty(symbol, name));
|
||||
}
|
||||
|
||||
throw new IllegalStateException("cannot normalize mot='" + mot + "' symbol='" + symbol + "' name='" + name + "' long='" + longName
|
||||
|
@ -1811,8 +1812,9 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
|||
}
|
||||
|
||||
final String network = lineId.substring(0, lineId.indexOf(':'));
|
||||
final Line parsedLine = parseLine(lineId, productType, symbol, symbol, null, trainType, trainNum, productName);
|
||||
line = new Line(parsedLine.id, parsedLine.product, parsedLine.label, lineStyle(network, parsedLine.product, parsedLine.label));
|
||||
final Line parsedLine = parseLine(lineId, network, productType, symbol, symbol, null, trainType, trainNum, productName);
|
||||
line = new Line(parsedLine.id, parsedLine.network, parsedLine.product, parsedLine.label, lineStyle(parsedLine.network,
|
||||
parsedLine.product, parsedLine.label));
|
||||
}
|
||||
|
||||
XmlPullUtil.skipExit(pp, "m");
|
||||
|
@ -1980,9 +1982,8 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
|||
final String trainType = ParserUtils.firstNotEmpty(slTrainType, itdTrainType);
|
||||
final String trainName = ParserUtils.firstNotEmpty(slTrainName, itdTrainName);
|
||||
|
||||
final Line line = parseLine(slStateless, slMotType, slSymbol, slNumber, slNumber, trainType, slTrainNum, trainName);
|
||||
|
||||
return new Line(line.id, line.product, line.label, lineStyle(divaNetwork, line.product, line.label), itdMessage);
|
||||
final Line line = parseLine(slStateless, divaNetwork, slMotType, slSymbol, slNumber, slNumber, trainType, slTrainNum, trainName);
|
||||
return new Line(line.id, line.network, line.product, line.label, lineStyle(line.network, line.product, line.label), itdMessage);
|
||||
}
|
||||
|
||||
private static final Pattern P_STATION_NAME_WHITESPACE = Pattern.compile("\\s+");
|
||||
|
@ -2524,9 +2525,10 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
|||
|
||||
final Line line;
|
||||
if ("AST".equals(motSymbol))
|
||||
line = new Line(null, Product.BUS, "AST");
|
||||
line = new Line(null, divaNetwork, Product.BUS, "AST");
|
||||
else
|
||||
line = parseLine(lineId, motType, motSymbol, motShortName, motName, motTrainType, motShortName, motTrainName);
|
||||
line = parseLine(lineId, divaNetwork, motType, motSymbol, motShortName, motName, motTrainType, motShortName,
|
||||
motTrainName);
|
||||
|
||||
final Integer departureDelay;
|
||||
final Integer arrivalDelay;
|
||||
|
@ -2700,8 +2702,8 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
|||
final Set<Line.Attr> lineAttrs = new HashSet<Line.Attr>();
|
||||
if (wheelChairAccess || lowFloorVehicle)
|
||||
lineAttrs.add(Line.Attr.WHEEL_CHAIR_ACCESS);
|
||||
final Line styledLine = new Line(line.id, line.product, line.label, lineStyle(divaNetwork, line.product, line.label),
|
||||
lineAttrs);
|
||||
final Line styledLine = new Line(line.id, line.network, line.product, line.label, lineStyle(line.network, line.product,
|
||||
line.label), lineAttrs);
|
||||
|
||||
final Stop departure = new Stop(departureLocation, true, departureTargetTime != null ? departureTargetTime
|
||||
: departureTime, departureTime != null ? departureTime : null, departurePosition, null);
|
||||
|
|
|
@ -3115,14 +3115,14 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider
|
|||
{
|
||||
if (attrs.length == 0)
|
||||
{
|
||||
return new Line(null, product, normalizedName, lineStyle(null, product, normalizedName), comment);
|
||||
return new Line(null, null, product, normalizedName, lineStyle(null, product, normalizedName), comment);
|
||||
}
|
||||
else
|
||||
{
|
||||
final Set<Line.Attr> attrSet = new HashSet<Line.Attr>();
|
||||
for (final Line.Attr attr : attrs)
|
||||
attrSet.add(attr);
|
||||
return new Line(null, product, normalizedName, lineStyle(null, product, normalizedName), attrSet, comment);
|
||||
return new Line(null, null, product, normalizedName, lineStyle(null, product, normalizedName), attrSet, comment);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -406,7 +406,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
|
|||
final String color = colorHex.equals("000000") ? "#FFFFFF" : "#" + colorHex;
|
||||
final Style lineStyle = getLineStyle(product, code, color);
|
||||
|
||||
return new Line(lineId, product, code, lineStyle);
|
||||
return new Line(lineId, null, product, code, lineStyle);
|
||||
}
|
||||
catch (final JSONException jsonExc)
|
||||
{
|
||||
|
@ -591,7 +591,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
|
|||
final String code = jsonLine.getString("code");
|
||||
final String color = "#" + jsonLine.getString("color");
|
||||
final Style lineStyle = getLineStyle(product, code, color);
|
||||
return new Line(lineId, product, code, lineStyle);
|
||||
return new Line(lineId, null, product, code, lineStyle);
|
||||
}
|
||||
catch (final JSONException jsonExc)
|
||||
{
|
||||
|
|
|
@ -273,7 +273,7 @@ public abstract class AbstractTsiProvider extends AbstractNetworkProvider
|
|||
label.append(name);
|
||||
}
|
||||
|
||||
return new Line(id, product, label.toString());
|
||||
return new Line(id, operatorCode, product, label.toString());
|
||||
}
|
||||
|
||||
private List<Location> identifyLocation(final Location location) throws IOException
|
||||
|
@ -576,7 +576,7 @@ public abstract class AbstractTsiProvider extends AbstractNetworkProvider
|
|||
final String codeActivity = jsonOptString(ptrInfo, "CodeActivity");
|
||||
|
||||
final Line line = createLine(id, transportMode, lineNumber, lineName, operatorCode, codeActivity);
|
||||
final Line styledLine = new Line(line.id, line.product, line.label, lineStyle(network, line.product, line.label));
|
||||
final Line styledLine = new Line(line.id, line.network, line.product, line.label, lineStyle(network, line.product, line.label));
|
||||
return styledLine;
|
||||
}
|
||||
|
||||
|
|
|
@ -42,16 +42,17 @@ public class AvvProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("Regionalbahn".equals(trainName) && symbol != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
|
||||
|
|
|
@ -59,44 +59,45 @@ public class BayernProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("M".equals(trainType) && trainNum != null && trainName != null && trainName.endsWith("Meridian"))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "M" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "M" + trainNum);
|
||||
if ("ZUG".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, trainNum);
|
||||
}
|
||||
else if ("16".equals(mot))
|
||||
{
|
||||
if ("EC".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "EC" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "EC" + trainNum);
|
||||
if ("IC".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "IC" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "IC" + trainNum);
|
||||
if ("ICE".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "ICE" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "ICE" + trainNum);
|
||||
if ("CNL".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "CNL" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "CNL" + trainNum);
|
||||
if ("THA".equals(trainType) && trainNum != null) // Thalys
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "THA" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "THA" + trainNum);
|
||||
if ("TGV".equals(trainType) && trainNum != null) // Train a grande Vitesse
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "TGV" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "TGV" + trainNum);
|
||||
if ("RJ".equals(trainType) && trainNum != null) // railjet
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "RJ" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "RJ" + trainNum);
|
||||
if ("WB".equals(trainType) && trainNum != null) // WESTbahn
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "WB" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "WB" + trainNum);
|
||||
if ("HKX".equals(trainType) && trainNum != null) // Hamburg-Köln-Express
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "HKX" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "HKX" + trainNum);
|
||||
if ("D".equals(trainType) && trainNum != null) // Schnellzug
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "D" + trainNum);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "D" + trainNum);
|
||||
|
||||
if ("IR".equals(trainType) && trainNum != null) // InterRegio
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "IR" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "IR" + trainNum);
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -328,28 +328,28 @@ public class InvgProvider extends AbstractHafasProvider
|
|||
if (mBus.matches())
|
||||
{
|
||||
final String label = mBus.group(1);
|
||||
return new Line(null, Product.BUS, label, lineStyle(null, Product.BUS, label));
|
||||
return new Line(null, null, Product.BUS, label, lineStyle(null, Product.BUS, label));
|
||||
}
|
||||
|
||||
final Matcher mNachtbus = P_NORMALIZE_LINE_NACHTBUS.matcher(line);
|
||||
if (mNachtbus.matches())
|
||||
{
|
||||
final String label = "N" + mNachtbus.group(1);
|
||||
return new Line(null, Product.BUS, label, lineStyle(null, Product.BUS, label));
|
||||
return new Line(null, null, Product.BUS, label, lineStyle(null, Product.BUS, label));
|
||||
}
|
||||
|
||||
final Matcher mBusS = P_NORMALIZE_LINE_BUS_S.matcher(line);
|
||||
if (mBusS.matches())
|
||||
{
|
||||
final String label = "S" + mBusS.group(1);
|
||||
return new Line(null, Product.BUS, label, lineStyle(null, Product.BUS, label));
|
||||
return new Line(null, null, Product.BUS, label, lineStyle(null, Product.BUS, label));
|
||||
}
|
||||
|
||||
final Matcher mBusX = P_NORMALIZE_LINE_BUS_X.matcher(line);
|
||||
if (mBusX.matches())
|
||||
{
|
||||
final String label = "X" + mBusX.group(1);
|
||||
return new Line(null, Product.BUS, label, lineStyle(null, Product.BUS, label));
|
||||
return new Line(null, null, Product.BUS, label, lineStyle(null, Product.BUS, label));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -51,17 +51,18 @@ public class KvvProvider extends AbstractEfaProvider
|
|||
private static final Pattern P_LINE = Pattern.compile("(.*?)\\s+\\([\\w/]+\\)", Pattern.CASE_INSENSITIVE);
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if (name != null)
|
||||
{
|
||||
final Matcher m = P_LINE.matcher(name);
|
||||
if (m.matches())
|
||||
return super.parseLine(id, mot, symbol, m.group(1), longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, m.group(1), longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
// TODO check for " (Ersatzverkehr)"
|
||||
}
|
||||
|
||||
|
|
|
@ -49,27 +49,28 @@ public class MetProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("Regional Train :".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("Regional Train".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, null);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, null);
|
||||
if ("vPK".equals(symbol) && "Regional Train Pakenham".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "V/Line");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "V/Line");
|
||||
}
|
||||
else if ("1".equals(mot))
|
||||
{
|
||||
if (trainType == null && trainNum != null)
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, trainNum);
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, trainNum);
|
||||
if ("Metropolitan Train".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, Strings.nullToEmpty(name));
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, Strings.nullToEmpty(name));
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
|
||||
|
|
|
@ -52,26 +52,27 @@ public class MvvProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("Mittelrheinbahn (trans regio)".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "MiRhBa");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "MiRhBa");
|
||||
if ("Süd-Thüringen-Bahn".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "STB");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "STB");
|
||||
if ("agilis".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "agilis");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "agilis");
|
||||
if ("SBB".equals(trainName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SBB");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SBB");
|
||||
if ("A".equals(trainNum))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "A");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "A");
|
||||
if ("DB AG".equals(trainName))
|
||||
return new Line(id, null, symbol);
|
||||
return new Line(id, network, null, symbol);
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
private static final Pattern P_POSITION = Pattern.compile("(Fern|Regio|S-Bahn|U-Bahn|U\\d(?:/U\\d)*)\\s+(.*)");
|
||||
|
|
|
@ -54,37 +54,38 @@ public class NvbwProvider extends AbstractEfaProvider
|
|||
private static final Pattern P_LINE_S_AVG_VBK = Pattern.compile("(S\\d+) \\((?:AVG|VBK)\\)");
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if (("ICE".equals(trainName) || "InterCityExpress".equals(trainName)) && trainNum == null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "ICE");
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "ICE");
|
||||
if ("InterCity".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "IC");
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "IC");
|
||||
if ("Fernreisezug externer EU".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, null);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, null);
|
||||
if ("SuperCity".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "SC");
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "SC");
|
||||
if ("InterRegio".equals(longName) && symbol == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "IR");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "IR");
|
||||
if ("REGIOBAHN".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, null);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, null);
|
||||
if ("RR".equals(trainType) && trainNum == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RR");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RR");
|
||||
if ("Meridian".equals(trainName) && symbol != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("CityBahn".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "CB");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "CB");
|
||||
if ("Trilex".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TLX");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TLX");
|
||||
if ("Bay. Seenschifffahrt".equals(trainName) && symbol != null)
|
||||
return new Line(id, Product.FERRY, symbol);
|
||||
return new Line(id, network, Product.FERRY, symbol);
|
||||
if ("Nahverkehrszug von Dritten".equals(trainName) && trainNum == null)
|
||||
return new Line(id, null, "Zug");
|
||||
return new Line(id, network, null, "Zug");
|
||||
if ("DB".equals(trainName) && trainNum == null)
|
||||
return new Line(id, null, "DB");
|
||||
return new Line(id, network, null, "DB");
|
||||
}
|
||||
else if ("1".equals(mot))
|
||||
{
|
||||
|
@ -92,11 +93,11 @@ public class NvbwProvider extends AbstractEfaProvider
|
|||
{
|
||||
final Matcher m = P_LINE_S_AVG_VBK.matcher(symbol);
|
||||
if (m.matches())
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, m.group(1));
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, m.group(1));
|
||||
}
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -54,60 +54,61 @@ public class SfProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if (("XAA".equals(symbol) || "Daly City / Fremont".equals(symbol)) && "Daly City / Fremont".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "DALY/FRMT");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "DALY/FRMT");
|
||||
if (("FRE".equals(symbol) || "Fremont / Daly City".equals(symbol)) && "Fremont / Daly City".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "FRMT/DALY");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "FRMT/DALY");
|
||||
if (("XAC".equals(symbol) || "Fremont / Richmond".equals(symbol)) && "Fremont / Richmond".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "FRMT/RICH");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "FRMT/RICH");
|
||||
if (("XAD".equals(symbol) || "Richmond / Fremont".equals(symbol)) && "Richmond / Fremont".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RICH/FRMT");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RICH/FRMT");
|
||||
if (("XAE".equals(symbol) || "Pittsburg Bay Point / SFO".equals(symbol)) && "Pittsburg Bay Point / SFO".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "PITT/SFIA");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "PITT/SFIA");
|
||||
if (("SFI".equals(symbol) || "SFO / Pittsburg Bay Point".equals(symbol)) && "SFO / Pittsburg Bay Point".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SFIA/PITT");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SFIA/PITT");
|
||||
if (("XAF".equals(symbol) || "Millbrae / Richmond".equals(symbol)) && "Millbrae / Richmond".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "MLBR/RICH");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "MLBR/RICH");
|
||||
if (("XAG".equals(symbol) || "Richmond / Millbrae".equals(symbol)) && "Richmond / Millbrae".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RICH/MLBR");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RICH/MLBR");
|
||||
if (("XAH".equals(symbol) || "Daly City / Dublin Pleasanton".equals(symbol)) && "Daly City / Dublin Pleasanton".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "DALY/DUBL");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "DALY/DUBL");
|
||||
if (("XAI".equals(symbol) || "Dublin Pleasanton / Daly City".equals(symbol)) && "Dublin Pleasanton / Daly City".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "DUBL/DALY");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "DUBL/DALY");
|
||||
|
||||
if ("LOC".equals(symbol) && "LOCAL".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "Local");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "Local");
|
||||
if ("CAP".equals(symbol) && "CAPITOL".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "Capitol");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "Capitol");
|
||||
if ("OAK".equals(symbol) && "OAK / Coliseum".equals(name))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "OAK/Coliseum");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "OAK/Coliseum");
|
||||
|
||||
if ("Muni Rail".equals(trainName) && symbol != null) // Muni
|
||||
return new Line(id, Product.TRAM, symbol);
|
||||
return new Line(id, network, Product.TRAM, symbol);
|
||||
if (trainType == null && "F".equals(trainNum)) // Muni Historic Streetcar
|
||||
return new Line(id, Product.TRAM, "F");
|
||||
return new Line(id, network, Product.TRAM, "F");
|
||||
if (trainType == null && "J".equals(trainNum)) // Muni Metro
|
||||
return new Line(id, Product.TRAM, "J");
|
||||
return new Line(id, network, Product.TRAM, "J");
|
||||
if (trainType == null && "K".equals(trainNum)) // Muni Metro
|
||||
return new Line(id, Product.TRAM, "K");
|
||||
return new Line(id, network, Product.TRAM, "K");
|
||||
if (trainType == null && "KT".equals(trainNum)) // Muni Metro
|
||||
return new Line(id, Product.TRAM, "KT");
|
||||
return new Line(id, network, Product.TRAM, "KT");
|
||||
if (trainType == null && "L".equals(trainNum)) // Muni Metro
|
||||
return new Line(id, Product.TRAM, "L");
|
||||
return new Line(id, network, Product.TRAM, "L");
|
||||
if (trainType == null && "M".equals(trainNum)) // Muni Metro
|
||||
return new Line(id, Product.TRAM, "M");
|
||||
return new Line(id, network, Product.TRAM, "M");
|
||||
if (trainType == null && "N".equals(trainNum)) // Muni Metro
|
||||
return new Line(id, Product.TRAM, "N");
|
||||
return new Line(id, network, Product.TRAM, "N");
|
||||
if (trainType == null && "T".equals(trainNum)) // Muni Metro
|
||||
return new Line(id, Product.TRAM, "T");
|
||||
return new Line(id, network, Product.TRAM, "T");
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
|
||||
|
|
|
@ -37,15 +37,16 @@ public class StvProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("M".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "M" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "M" + trainNum);
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -54,37 +54,38 @@ public class SydneyProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("1".equals(mot))
|
||||
{
|
||||
if ("BMT".equals(symbol) || "Blue Mountains Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "BMT");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "BMT");
|
||||
if ("CCN".equals(symbol) || "Central Coast & Newcastle Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "CCN");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "CCN");
|
||||
if ("SHL".equals(symbol) || "Southern Highlands Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "SHL");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "SHL");
|
||||
if ("SCO".equals(symbol) || "South Coast Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "SCO");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "SCO");
|
||||
if ("HUN".equals(symbol) || "Hunter Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "HUN");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "HUN");
|
||||
|
||||
if ("T1".equals(symbol) || "T1 North Shore & Northern Line".equals(symbol) || "T1 Northern Line".equals(symbol)
|
||||
|| "T1 Western Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "T1");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "T1");
|
||||
if ("T2".equals(symbol) || "T2 Inner West & South Line".equals(symbol) || "T2 Airport Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "T2");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "T2");
|
||||
if ("T3".equals(symbol) || "T3 Bankstown Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "T3");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "T3");
|
||||
if ("T4".equals(symbol) || "T4 Eastern Suburbs & Illawarra Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "T4");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "T4");
|
||||
if ("T5".equals(symbol) || "T5 Cumberland Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "T5");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "T5");
|
||||
if ("T6".equals(symbol) || "T6 Carlingford Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "T6");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "T6");
|
||||
if ("T7".equals(symbol) || "T7 Olympic Park Line".equals(symbol))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "T7");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "T7");
|
||||
|
||||
throw new IllegalStateException("cannot normalize mot='" + mot + "' symbol='" + symbol + "' name='" + name + "' long='" + longName
|
||||
+ "' trainType='" + trainType + "' trainNum='" + trainNum + "' trainName='" + trainName + "'");
|
||||
|
@ -92,7 +93,7 @@ public class SydneyProvider extends AbstractEfaProvider
|
|||
else if ("4".equals(mot))
|
||||
{
|
||||
if ("L1".equals(symbol) || "L1 Dulwich Hill Line".equals(symbol))
|
||||
return new Line(id, Product.TRAM, "L1");
|
||||
return new Line(id, network, Product.TRAM, "L1");
|
||||
|
||||
throw new IllegalStateException("cannot normalize mot='" + mot + "' symbol='" + symbol + "' name='" + name + "' long='" + longName
|
||||
+ "' trainType='" + trainType + "' trainNum='" + trainNum + "' trainName='" + trainName + "'");
|
||||
|
@ -100,29 +101,29 @@ public class SydneyProvider extends AbstractEfaProvider
|
|||
else if ("9".equals(mot))
|
||||
{
|
||||
if ("F1".equals(symbol) || "F1 Manly".equals(symbol))
|
||||
return new Line(id, Product.FERRY, "F1");
|
||||
return new Line(id, network, Product.FERRY, "F1");
|
||||
if ("F2".equals(symbol) || "F2 Taronga Zoo".equals(symbol))
|
||||
return new Line(id, Product.FERRY, "F2");
|
||||
return new Line(id, network, Product.FERRY, "F2");
|
||||
if ("F3".equals(symbol) || "F3 Parramatta River".equals(symbol))
|
||||
return new Line(id, Product.FERRY, "F3");
|
||||
return new Line(id, network, Product.FERRY, "F3");
|
||||
if ("F4".equals(symbol) || "F4 Darling Harbour".equals(symbol))
|
||||
return new Line(id, Product.FERRY, "F4");
|
||||
return new Line(id, network, Product.FERRY, "F4");
|
||||
if ("F5".equals(symbol) || "F5 Neutral Bay".equals(symbol))
|
||||
return new Line(id, Product.FERRY, "F5");
|
||||
return new Line(id, network, Product.FERRY, "F5");
|
||||
if ("F6".equals(symbol) || "F6 Mosman Bay".equals(symbol))
|
||||
return new Line(id, Product.FERRY, "F6");
|
||||
return new Line(id, network, Product.FERRY, "F6");
|
||||
if ("F7".equals(symbol) || "F7 Eastern Suburbs".equals(symbol))
|
||||
return new Line(id, Product.FERRY, "F7");
|
||||
return new Line(id, network, Product.FERRY, "F7");
|
||||
if ("Private ferry servic".equals(trainName) && symbol != null)
|
||||
return new Line(id, Product.FERRY, symbol);
|
||||
return new Line(id, network, Product.FERRY, symbol);
|
||||
if ("MFF".equals(symbol) || "Manly Fast Ferry".equals(name))
|
||||
return new Line(id, Product.FERRY, "MFF");
|
||||
return new Line(id, network, Product.FERRY, "MFF");
|
||||
|
||||
throw new IllegalStateException("cannot normalize mot='" + mot + "' symbol='" + symbol + "' name='" + name + "' long='" + longName
|
||||
+ "' trainType='" + trainType + "' trainNum='" + trainNum + "' trainName='" + trainName + "'");
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
|
||||
|
|
|
@ -48,19 +48,20 @@ public class TfiProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("DART".equals(name))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "DART");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "DART");
|
||||
if ("Rail".equals(trainName) && trainNum == null)
|
||||
return new Line(id, null, "Rail");
|
||||
return new Line(id, network, null, "Rail");
|
||||
if ("Train".equals(name) && "Train".equals(symbol))
|
||||
return new Line(id, null, "Train");
|
||||
return new Line(id, network, null, "Train");
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -68,16 +68,17 @@ public class TlemProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("1".equals(mot))
|
||||
{
|
||||
if (trainType == null && ("DLR".equals(trainNum) || "Light Railway".equals(trainName)))
|
||||
return new Line(id, Product.SUBURBAN_TRAIN, "DLR");
|
||||
return new Line(id, network, Product.SUBURBAN_TRAIN, "DLR");
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
|
||||
|
|
|
@ -37,61 +37,62 @@ public class VblProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("BLS".equals(trainType) && trainNum != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "BLS" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "BLS" + trainNum);
|
||||
if ("ASM".equals(trainType) && trainNum != null) // Aare Seeland mobil
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ASM" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ASM" + trainNum);
|
||||
if ("SOB".equals(trainType) && trainNum != null) // Schweizerische Südostbahn
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "SOB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "SOB" + trainNum);
|
||||
if ("RhB".equals(trainType) && trainNum != null) // Rhätische Bahn
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RhB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RhB" + trainNum);
|
||||
if ("AB-".equals(trainType) && trainNum != null) // Appenzeller Bahnen
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "AB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "AB" + trainNum);
|
||||
if ("BDW".equals(trainType) && trainNum != null) // BDWM Transport
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "BDW" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "BDW" + trainNum);
|
||||
if ("ZB".equals(trainType) && trainNum != null) // Zentralbahn
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ZB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ZB" + trainNum);
|
||||
if ("TPF".equals(trainType) && trainNum != null) // Transports publics fribourgeois
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TPF" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TPF" + trainNum);
|
||||
if ("MGB".equals(trainType) && trainNum != null) // Matterhorn Gotthard Bahn
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "MGB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "MGB" + trainNum);
|
||||
if ("CJ".equals(trainType) && trainNum != null) // Chemins de fer du Jura
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "CJ" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "CJ" + trainNum);
|
||||
if ("LEB".equals(trainType) && trainNum != null) // Lausanne-Echallens-Bercher
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "LEB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "LEB" + trainNum);
|
||||
if ("FAR".equals(trainType) && trainNum != null) // Ferrovie Autolinee Regionali Ticinesi
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "FAR" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "FAR" + trainNum);
|
||||
if ("WAB".equals(trainType) && trainNum != null) // Wengernalpbahn
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "WAB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "WAB" + trainNum);
|
||||
if ("JB".equals(trainType) && trainNum != null) // Jungfraubahn
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "JB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "JB" + trainNum);
|
||||
if ("NSt".equals(trainType) && trainNum != null) // Nyon-St-Cergue-Morez
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "NSt" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "NSt" + trainNum);
|
||||
if ("RA".equals(trainType) && trainNum != null) // Regionalps
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RA" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RA" + trainNum);
|
||||
if ("TRN".equals(trainType) && trainNum != null) // Transport Publics Neuchâtelois
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TRN" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TRN" + trainNum);
|
||||
if ("TPC".equals(trainType) && trainNum != null) // Transports Publics du Chablais
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TPC" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TPC" + trainNum);
|
||||
if ("MVR".equals(trainType) && trainNum != null) // Montreux-Vevey-Riviera
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "MVR" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "MVR" + trainNum);
|
||||
if ("MOB".equals(trainType) && trainNum != null) // Montreux-Oberland Bernois
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "MOB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "MOB" + trainNum);
|
||||
if ("TRA".equals(trainType) && trainNum != null) // Transports Vallée de Joux-Yverdon-Ste-Croix
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TRA" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TRA" + trainNum);
|
||||
if ("TMR".equals(trainType) && trainNum != null) // Transports de Martigny et Régions
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TMR" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TMR" + trainNum);
|
||||
if ("GGB".equals(trainType) && trainNum != null) // Gornergratbahn
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "GGB" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "GGB" + trainNum);
|
||||
if ("BLM".equals(trainType) && trainNum != null) // Lauterbrunnen-Mürren
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "BLM" + trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "BLM" + trainNum);
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -41,20 +41,21 @@ public class VgnProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("R5(z)".equals(trainNum))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "R5(z)");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "R5(z)");
|
||||
if ("R7(z)".equals(trainNum))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "R7(z)");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "R7(z)");
|
||||
if ("R8(z)".equals(trainNum))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "R8(z)");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "R8(z)");
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -35,22 +35,23 @@ public class VmsProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("Ilztalbahn".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "ITB");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "ITB");
|
||||
if ("Meridian".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "M");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "M");
|
||||
if ("CityBahn".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "CB");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "CB");
|
||||
|
||||
if ("RE 3".equals(symbol) && "Zug".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "RE3");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "RE3");
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -42,15 +42,16 @@ public class VrnProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("InterRegio".equals(longName) && symbol == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "IR");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "IR");
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -48,36 +48,37 @@ public class VrrProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if (trainType == null && "RB67/71".equals(trainNum))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, trainNum);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, trainNum);
|
||||
if ("Regionalbahn".equals(trainName) && symbol != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
if ("NordWestBahn".equals(trainName) && symbol != null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, symbol);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, symbol);
|
||||
|
||||
if (trainType == null && "SEV7".equals(trainNum))
|
||||
return new Line(id, Product.BUS, trainNum);
|
||||
return new Line(id, network, Product.BUS, trainNum);
|
||||
|
||||
if ("Zug".equals(longName))
|
||||
return new Line(id, null, "Zug");
|
||||
return new Line(id, network, null, "Zug");
|
||||
}
|
||||
else if ("11".equals(mot))
|
||||
{
|
||||
// Wuppertaler Schwebebahn & SkyTrain D'dorf
|
||||
if ("Schwebebahn".equals(trainName) || (longName != null && longName.startsWith("Schwebebahn")))
|
||||
return new Line(id, Product.CABLECAR, name);
|
||||
return new Line(id, network, Product.CABLECAR, name);
|
||||
|
||||
// H-Bahn TU Dortmund
|
||||
if ("H-Bahn".equals(trainName) || (longName != null && longName.startsWith("H-Bahn")))
|
||||
return new Line(id, Product.CABLECAR, name);
|
||||
return new Line(id, network, Product.CABLECAR, name);
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
|
||||
|
|
|
@ -45,31 +45,32 @@ public class VvoProvider extends AbstractEfaProvider
|
|||
}
|
||||
|
||||
@Override
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name,
|
||||
final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName)
|
||||
protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, final @Nullable String symbol,
|
||||
final @Nullable String name, final @Nullable String longName, final @Nullable String trainType, final @Nullable String trainNum,
|
||||
final @Nullable String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("Twoje Linie Kolejowe".equals(trainName) && symbol != null)
|
||||
return new Line(id, Product.HIGH_SPEED_TRAIN, "TLK" + symbol);
|
||||
return new Line(id, network, Product.HIGH_SPEED_TRAIN, "TLK" + symbol);
|
||||
|
||||
if ("Regionalbahn".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, null);
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, null);
|
||||
if ("Ostdeutsche Eisenbahn GmbH".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "OE");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "OE");
|
||||
if ("Meridian".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "M");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "M");
|
||||
if ("trilex".equals(longName))
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TLX");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TLX");
|
||||
if ("Trilex".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "TLX");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "TLX");
|
||||
if ("U28".equals(symbol)) // Nationalparkbahn
|
||||
return new Line(id, Product.REGIONAL_TRAIN, "U28");
|
||||
return new Line(id, network, Product.REGIONAL_TRAIN, "U28");
|
||||
|
||||
if ("Fernbus".equals(trainName) && trainNum == null)
|
||||
return new Line(id, Product.BUS, trainName);
|
||||
return new Line(id, network, Product.BUS, trainName);
|
||||
}
|
||||
|
||||
return super.parseLine(id, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -40,40 +40,43 @@ public final class Line implements Serializable, Comparable<Line>
|
|||
private static final long serialVersionUID = -5642533805998375070L;
|
||||
|
||||
public final @Nullable String id;
|
||||
public final @Nullable String network;
|
||||
public final @Nullable Product product;
|
||||
public final @Nullable String label;
|
||||
public final @Nullable Style style;
|
||||
public final @Nullable Set<Attr> attrs;
|
||||
public final @Nullable String message;
|
||||
|
||||
public static final Line FOOTWAY = new Line(null, null, null);
|
||||
public static final Line TRANSFER = new Line(null, null, null);
|
||||
public static final Line SECURE_CONNECTION = new Line(null, null, null);
|
||||
public static final Line DO_NOT_CHANGE = new Line(null, null, null);
|
||||
public static final Line FOOTWAY = new Line(null, null, null, null);
|
||||
public static final Line TRANSFER = new Line(null, null, null, null);
|
||||
public static final Line SECURE_CONNECTION = new Line(null, null, null, null);
|
||||
public static final Line DO_NOT_CHANGE = new Line(null, null, null, null);
|
||||
|
||||
public Line(final String id, final Product product, final String label)
|
||||
public Line(final String id, final String network, final Product product, final String label)
|
||||
{
|
||||
this(id, product, label, null, null, null);
|
||||
this(id, network, product, label, null, null, null);
|
||||
}
|
||||
|
||||
public Line(final String id, final Product product, final String label, final Style style)
|
||||
public Line(final String id, final String network, final Product product, final String label, final Style style)
|
||||
{
|
||||
this(id, product, label, style, null, null);
|
||||
this(id, network, product, label, style, null, null);
|
||||
}
|
||||
|
||||
public Line(final String id, final Product product, final String label, final Style style, final String message)
|
||||
public Line(final String id, final String network, final Product product, final String label, final Style style, final String message)
|
||||
{
|
||||
this(id, product, label, style, null, message);
|
||||
this(id, network, product, label, style, null, message);
|
||||
}
|
||||
|
||||
public Line(final String id, final Product product, final String label, final Style style, final Set<Attr> attrs)
|
||||
public Line(final String id, final String network, final Product product, final String label, final Style style, final Set<Attr> attrs)
|
||||
{
|
||||
this(id, product, label, style, attrs, null);
|
||||
this(id, network, product, label, style, attrs, null);
|
||||
}
|
||||
|
||||
public Line(final String id, final Product product, final String label, final Style style, final Set<Attr> attrs, final String message)
|
||||
public Line(final String id, final String network, final Product product, final String label, final Style style, final Set<Attr> attrs,
|
||||
final String message)
|
||||
{
|
||||
this.id = id;
|
||||
this.network = network;
|
||||
this.product = product;
|
||||
this.label = label;
|
||||
this.style = style;
|
||||
|
@ -101,21 +104,26 @@ public final class Line implements Serializable, Comparable<Line>
|
|||
if (!(o instanceof Line))
|
||||
return false;
|
||||
final Line other = (Line) o;
|
||||
if (!Objects.equal(this.network, other.network))
|
||||
return false;
|
||||
if (!Objects.equal(this.product, other.product))
|
||||
return false;
|
||||
return Objects.equal(this.label, other.label);
|
||||
if (!Objects.equal(this.label, other.label))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode()
|
||||
{
|
||||
return Objects.hashCode(product, label);
|
||||
return Objects.hashCode(network, product, label);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
return MoreObjects.toStringHelper(this) //
|
||||
.addValue(network) //
|
||||
.addValue(product) //
|
||||
.addValue(label) //
|
||||
.toString();
|
||||
|
@ -124,6 +132,7 @@ public final class Line implements Serializable, Comparable<Line>
|
|||
public int compareTo(final Line other)
|
||||
{
|
||||
return ComparisonChain.start() //
|
||||
.compare(this.network, other.network, Ordering.natural().nullsLast()) //
|
||||
.compare(this.product, other.product, Ordering.natural().nullsLast()) //
|
||||
.compare(this.label, other.label, Ordering.natural().nullsLast()) //
|
||||
.result();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue