mirror of
https://gitlab.com/oeffi/public-transport-enabler.git
synced 2025-07-15 00:50:31 +00:00
Lines.
This commit is contained in:
parent
0b9985c3e5
commit
d06ce813b4
14 changed files with 142 additions and 51 deletions
|
@ -1106,6 +1106,8 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
|||
return "IRHI" + trainNum;
|
||||
if ("TGV".equals(trainType) || "TGV".equals(trainName))
|
||||
return "ITGV" + trainNum;
|
||||
if ("INZ".equals(trainType))
|
||||
return "IINZ" + trainNum;
|
||||
if ("RJ".equals(trainType) || "railjet".equals(trainName)) // railjet
|
||||
return "IRJ" + trainNum;
|
||||
if ("OIC".equals(trainType) || "ÖBB InterCity".equals(trainName))
|
||||
|
@ -1375,9 +1377,9 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
|||
|
||||
if ("Bus".equals(trainType))
|
||||
return "B" + trainNum;
|
||||
if ("SEV".equals(trainType) || "SEV".equals(trainNum) || "SEV".equals(trainName) || "SEV".equals(symbol)
|
||||
|| "Ersatzverkehr".equals(trainName))
|
||||
return "BSEV";
|
||||
if ("SEV".equals(trainType) || "SEV".equals(trainNum) || "SEV".equals(trainName) || "SEV".equals(symbol) || "BSV".equals(trainType)
|
||||
|| "Ersatzverkehr".equals(trainName) || "Schienenersatzverkehr".equals(trainName))
|
||||
return "BSEV" + (trainNum != null ? trainNum : "");
|
||||
if ("Bus replacement".equals(trainName)) // GB
|
||||
return "BBR";
|
||||
if ("BR".equals(trainType) && trainName.startsWith("Bus")) // GB
|
||||
|
|
|
@ -2733,9 +2733,12 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider
|
|||
return 'R';
|
||||
if ("M".equals(ucType)) // Meridian
|
||||
return 'R';
|
||||
|
||||
// if ("E".equals(normalizedType)) // Eilzug, stimmt wahrscheinlich nicht
|
||||
// return "R" + normalizedName;
|
||||
if ("WBA".equals(ucType)) // Waldbahn
|
||||
return 'R';
|
||||
if ("BEX".equals(ucType)) // Bernina Express
|
||||
return 'R';
|
||||
if ("VAE".equals(ucType)) // Voralpen-Express
|
||||
return 'R';
|
||||
|
||||
// Suburban Trains
|
||||
if (P_LINE_SBAHN.matcher(ucType).matches()) // Generic (Night) S-Bahn
|
||||
|
|
|
@ -69,7 +69,12 @@ public class BayernProvider extends AbstractEfaProvider
|
|||
protected String parseLine(final String mot, final String symbol, final String name, final String longName, final String trainType,
|
||||
final String trainNum, final String trainName)
|
||||
{
|
||||
if ("16".equals(mot))
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("ZUG".equals(trainType) && trainNum != null)
|
||||
return "R" + trainNum;
|
||||
}
|
||||
else if ("16".equals(mot))
|
||||
{
|
||||
if ("EC".equals(trainType))
|
||||
return "IEC" + trainNum;
|
||||
|
|
|
@ -158,6 +158,13 @@ public class LuProvider extends AbstractHafasProvider
|
|||
if ("CRE".equals(ucType))
|
||||
return 'R';
|
||||
|
||||
if ("CITYBUS".equals(ucType))
|
||||
return 'B';
|
||||
if ("NIGHTBUS".equals(ucType))
|
||||
return 'B';
|
||||
if ("DIFFBUS".equals(ucType))
|
||||
return 'B';
|
||||
|
||||
final char t = super.normalizeType(type);
|
||||
if (t != 0)
|
||||
return t;
|
||||
|
|
|
@ -50,6 +50,19 @@ public class NaldoProvider extends AbstractEfaProvider
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String parseLine(final String mot, final String symbol, final String name, final String longName, final String trainType,
|
||||
final String trainNum, final String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("RR".equals(trainType))
|
||||
return "RRR" + trainNum;
|
||||
}
|
||||
|
||||
return super.parseLine(mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Location> autocompleteStations(final CharSequence constraint) throws IOException
|
||||
{
|
||||
|
|
|
@ -221,8 +221,6 @@ public class NasaProvider extends AbstractHafasProvider
|
|||
if ("E".equals(ucType)) // Stadtbahn Karlsruhe: S4/S31/xxxxx
|
||||
return 'S';
|
||||
|
||||
if ("BSV".equals(ucType))
|
||||
return 'B';
|
||||
if ("RUFBUS".equals(ucType)) // Rufbus
|
||||
return 'B';
|
||||
if ("RBS".equals(ucType)) // Rufbus
|
||||
|
|
|
@ -53,8 +53,6 @@ public class NvbwProvider extends AbstractEfaProvider
|
|||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("INZ".equals(trainType))
|
||||
return "IINZ" + trainNum;
|
||||
if ("RR".equals(trainType))
|
||||
return "RRR" + trainNum;
|
||||
if ("Meridian".equals(trainName) && symbol != null)
|
||||
|
|
|
@ -255,8 +255,6 @@ public class OebbProvider extends AbstractHafasProvider
|
|||
return 'B';
|
||||
if (ucType.equals("ICB")) // ÖBB ICBus
|
||||
return 'B';
|
||||
if (ucType.equals("BSV")) // Deutschland, Connections only?
|
||||
return 'B';
|
||||
if (ucType.equals("O-BUS")) // Stadtbus
|
||||
return 'B';
|
||||
if (ucType.equals("O")) // Stadtbus
|
||||
|
|
|
@ -154,21 +154,13 @@ public class SbbProvider extends AbstractHafasProvider
|
|||
return 'R';
|
||||
if ("T".equals(ucType))
|
||||
return 'R';
|
||||
if ("KB".equals(ucType))
|
||||
return 'R';
|
||||
if ("BEX".equals(ucType)) // Bernina Express
|
||||
return 'R';
|
||||
|
||||
if ("M".equals(ucType)) // Metro Wien
|
||||
return 'U';
|
||||
|
||||
if ("NFT".equals(ucType)) // Niederflurtram
|
||||
return 'T';
|
||||
|
||||
if ("TX".equals(ucType))
|
||||
return 'B';
|
||||
if ("NFO".equals(ucType))
|
||||
return 'B';
|
||||
if ("KB".equals(ucType)) // Kleinbus?
|
||||
return 'B';
|
||||
|
||||
final char t = super.normalizeType(type);
|
||||
if (t != 0)
|
||||
|
|
|
@ -75,34 +75,24 @@ public class SfProvider extends AbstractEfaProvider
|
|||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("Train".equals(trainName))
|
||||
return "R" + symbol;
|
||||
|
||||
if ("Millbrae / Richmond".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
if ("Richmond / Millbrae".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
if ("Fremont / Richmond".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
if ("Richmond / Fremont".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
if ("Pittsburg Bay Point / SFO".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
if ("SFO / Pittsburg Bay Point".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
if ("Dublin Pleasanton / Daly City".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
if ("Daly City / Dublin Pleasanton".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
if ("Fremont / Daly City".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
if ("Fremont / Daly City".equals(trainNum)) // BART
|
||||
return 'U' + trainNum;
|
||||
if ("Daly City / Fremont".equals(symbol)) // BART
|
||||
return 'U' + symbol;
|
||||
|
||||
if ("Muni Rail".equals(trainName)) // Muni
|
||||
if ("Muni Rail".equals(trainName) && symbol != null) // Muni
|
||||
return 'T' + symbol;
|
||||
if (trainType == null && "F".equals(trainNum)) // Muni Historic Streetcar
|
||||
return "TF";
|
||||
if (trainType == null && "J".equals(trainNum)) // Muni Metro
|
||||
return "TJ";
|
||||
if (trainType == null && "K".equals(trainNum)) // Muni Metro
|
||||
return "TK";
|
||||
if (trainType == null && "KT".equals(trainNum)) // Muni Metro
|
||||
return "TKT";
|
||||
if (trainType == null && "L".equals(trainNum)) // Muni Metro
|
||||
return "TL";
|
||||
if (trainType == null && "M".equals(trainNum)) // Muni Metro
|
||||
return "TM";
|
||||
if (trainType == null && "N".equals(trainNum)) // Muni Metro
|
||||
return "TN";
|
||||
if (trainType == null && "T".equals(trainNum)) // Muni Metro
|
||||
return "TT";
|
||||
}
|
||||
|
||||
return super.parseLine(mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
|
|
|
@ -60,4 +60,17 @@ public class TfiProvider extends AbstractEfaProvider
|
|||
{
|
||||
return Product.ALL;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String parseLine(final String mot, final String symbol, final String name, final String longName, final String trainType,
|
||||
final String trainNum, final String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("Rail".equals(trainName) && trainNum == null)
|
||||
return "RRail";
|
||||
}
|
||||
|
||||
return super.parseLine(mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -45,4 +45,63 @@ public class VblProvider extends AbstractEfaProvider
|
|||
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String parseLine(final String mot, final String symbol, final String name, final String longName, final String trainType,
|
||||
final String trainNum, final String trainName)
|
||||
{
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if ("BLS".equals(trainType) && trainNum != null)
|
||||
return "RBLS" + trainNum;
|
||||
if ("ASM".equals(trainType) && trainNum != null) // Aare Seeland mobil
|
||||
return "RASM" + trainNum;
|
||||
if ("SOB".equals(trainType) && trainNum != null) // Schweizerische Südostbahn
|
||||
return "RSOB" + trainNum;
|
||||
if ("RhB".equals(trainType) && trainNum != null) // Rhätische Bahn
|
||||
return "RRhB" + trainNum;
|
||||
if ("AB-".equals(trainType) && trainNum != null) // Appenzeller Bahnen
|
||||
return "RAB" + trainNum;
|
||||
if ("BDW".equals(trainType) && trainNum != null) // BDWM Transport
|
||||
return "RBDW" + trainNum;
|
||||
if ("ZB".equals(trainType) && trainNum != null) // Zentralbahn
|
||||
return "RZB" + trainNum;
|
||||
if ("TPF".equals(trainType) && trainNum != null) // Transports publics fribourgeois
|
||||
return "RTPF" + trainNum;
|
||||
if ("MGB".equals(trainType) && trainNum != null) // Matterhorn Gotthard Bahn
|
||||
return "RMGB" + trainNum;
|
||||
if ("CJ".equals(trainType) && trainNum != null) // Chemins de fer du Jura
|
||||
return "RCJ" + trainNum;
|
||||
if ("LEB".equals(trainType) && trainNum != null) // Lausanne-Echallens-Bercher
|
||||
return "RLEB" + trainNum;
|
||||
if ("FAR".equals(trainType) && trainNum != null) // Ferrovie Autolinee Regionali Ticinesi
|
||||
return "RFAR" + trainNum;
|
||||
if ("WAB".equals(trainType) && trainNum != null) // Wengernalpbahn
|
||||
return "RWAB" + trainNum;
|
||||
if ("JB".equals(trainType) && trainNum != null) // Jungfraubahn
|
||||
return "RJB" + trainNum;
|
||||
if ("NSt".equals(trainType) && trainNum != null) // Nyon-St-Cergue-Morez
|
||||
return "RNSt" + trainNum;
|
||||
if ("RA".equals(trainType) && trainNum != null) // Regionalps
|
||||
return "RRA" + trainNum;
|
||||
if ("TRN".equals(trainType) && trainNum != null) // Transport Publics Neuchâtelois
|
||||
return "RTRN" + trainNum;
|
||||
if ("TPC".equals(trainType) && trainNum != null) // Transports Publics du Chablais
|
||||
return "RTPC" + trainNum;
|
||||
if ("MVR".equals(trainType) && trainNum != null) // Montreux-Vevey-Riviera
|
||||
return "RMVR" + trainNum;
|
||||
if ("MOB".equals(trainType) && trainNum != null) // Montreux-Oberland Bernois
|
||||
return "RMOB" + trainNum;
|
||||
if ("TRA".equals(trainType) && trainNum != null) // Transports Vallée de Joux-Yverdon-Ste-Croix
|
||||
return "RTRA" + trainNum;
|
||||
if ("TMR".equals(trainType) && trainNum != null) // Transports de Martigny et Régions
|
||||
return "RTMR" + trainNum;
|
||||
if ("GGB".equals(trainType) && trainNum != null) // Gornergratbahn
|
||||
return "RGGB" + trainNum;
|
||||
if ("BLM".equals(trainType) && trainNum != null) // Lauterbrunnen-Mürren
|
||||
return "RBLM" + trainNum;
|
||||
}
|
||||
|
||||
return super.parseLine(mot, symbol, name, longName, trainType, trainNum, trainName);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -67,7 +67,12 @@ public class VrrProvider extends AbstractEfaProvider
|
|||
protected String parseLine(final String mot, final String symbol, final String name, final String longName, final String trainType,
|
||||
final String trainNum, final String trainName)
|
||||
{
|
||||
if ("11".equals(mot))
|
||||
if ("0".equals(mot))
|
||||
{
|
||||
if (trainType == null && "RB67/71".equals(trainNum))
|
||||
return 'R' + trainNum;
|
||||
}
|
||||
else if ("11".equals(mot))
|
||||
{
|
||||
// Wuppertaler Schwebebahn & SkyTrain D'dorf
|
||||
if ("Schwebebahn".equals(trainName) || (longName != null && longName.startsWith("Schwebebahn")))
|
||||
|
|
|
@ -276,12 +276,20 @@ public class ZvvProvider extends AbstractHafasProvider
|
|||
return 'B';
|
||||
if ("TROLLEY".equals(ucType))
|
||||
return 'B';
|
||||
if ("KB".equals(ucType)) // Kleinbus?
|
||||
return 'B';
|
||||
if ("EE".equals(ucType))
|
||||
return 'B';
|
||||
|
||||
if ("D-SCHIFF".equals(ucType))
|
||||
return 'F';
|
||||
|
||||
if ("BERGBAHN".equals(ucType))
|
||||
return 'C';
|
||||
if ("LSB".equals(ucType)) // Luftseilbahn
|
||||
return 'C';
|
||||
if ("SLB".equals(ucType)) // Sesselliftbahn
|
||||
return 'C';
|
||||
|
||||
if ("UNB".equals(ucType))
|
||||
return '?';
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue