Migrate network IDs to constant field.

This commit is contained in:
Andreas Schildbach 2015-02-09 09:57:45 +01:00
parent 695fc56d8e
commit cf651676d2
70 changed files with 130 additions and 480 deletions

View file

@ -138,23 +138,25 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
}
}
public AbstractEfaProvider(final String apiBase)
public AbstractEfaProvider(final NetworkId network, final String apiBase)
{
this(apiBase, null, null, null, null);
this(network, apiBase, null, null, null, null);
}
public AbstractEfaProvider(final String apiBase, final String departureMonitorEndpoint, final String tripEndpoint,
public AbstractEfaProvider(final NetworkId network, final String apiBase, final String departureMonitorEndpoint, final String tripEndpoint,
final String stopFinderEndpoint, final String coordEndpoint)
{
this(apiBase + (departureMonitorEndpoint != null ? departureMonitorEndpoint : DEFAULT_DEPARTURE_MONITOR_ENDPOINT), //
this(network, apiBase + (departureMonitorEndpoint != null ? departureMonitorEndpoint : DEFAULT_DEPARTURE_MONITOR_ENDPOINT), //
apiBase + (tripEndpoint != null ? tripEndpoint : DEFAULT_TRIP_ENDPOINT), //
apiBase + (stopFinderEndpoint != null ? stopFinderEndpoint : DEFAULT_STOPFINDER_ENDPOINT), //
apiBase + (coordEndpoint != null ? coordEndpoint : DEFAULT_COORD_ENDPOINT));
}
public AbstractEfaProvider(final String departureMonitorEndpoint, final String tripEndpoint, final String stopFinderEndpoint,
final String coordEndpoint)
public AbstractEfaProvider(final NetworkId network, final String departureMonitorEndpoint, final String tripEndpoint,
final String stopFinderEndpoint, final String coordEndpoint)
{
super(network);
try
{
parserFactory = XmlPullParserFactory.newInstance(System.getProperty(XmlPullParserFactory.PROPERTY_NAME), null);

View file

@ -155,14 +155,17 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider
}
}
public AbstractHafasProvider(final String stationBoardEndpoint, final String getStopEndpoint, final String queryEndpoint, final int numProductBits)
public AbstractHafasProvider(final NetworkId network, final String stationBoardEndpoint, final String getStopEndpoint,
final String queryEndpoint, final int numProductBits)
{
this(stationBoardEndpoint, getStopEndpoint, queryEndpoint, numProductBits, Charsets.ISO_8859_1);
this(network, stationBoardEndpoint, getStopEndpoint, queryEndpoint, numProductBits, Charsets.ISO_8859_1);
}
public AbstractHafasProvider(final String stationBoardEndpoint, final String getStopEndpoint, final String queryEndpoint,
final int numProductBits, final Charset jsonEncoding)
public AbstractHafasProvider(final NetworkId network, final String stationBoardEndpoint, final String getStopEndpoint,
final String queryEndpoint, final int numProductBits, final Charset jsonEncoding)
{
super(network);
this.stationBoardEndpoint = stationBoardEndpoint;
this.getStopEndpoint = getStopEndpoint;
this.queryEndpoint = queryEndpoint;

View file

@ -132,8 +132,10 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
private final String authorization;
public AbstractNavitiaProvider(final String authorization)
public AbstractNavitiaProvider(final NetworkId network, final String authorization)
{
super(network);
this.authorization = authorization;
}

View file

@ -39,13 +39,25 @@ import de.schildbach.pte.dto.Style;
*/
public abstract class AbstractNetworkProvider implements NetworkProvider
{
protected static final Set<Product> ALL_EXCEPT_HIGHSPEED = EnumSet.complementOf(EnumSet.of(Product.HIGH_SPEED_TRAIN));
protected final NetworkId network;
protected TimeZone timeZone = TimeZone.getTimeZone("CET");
protected int numTripsRequested = 6;
private @Nullable Map<String, Style> styles = null;
protected @Nullable String sessionCookieName = null;
protected static final Set<Product> ALL_EXCEPT_HIGHSPEED = EnumSet.complementOf(EnumSet.of(Product.HIGH_SPEED_TRAIN));
protected AbstractNetworkProvider(final NetworkId network)
{
this.network = network;
}
public final NetworkId id()
{
return network;
}
public final boolean hasCapabilities(final Capability... capabilities)
{
for (final Capability capability : capabilities)

View file

@ -170,21 +170,24 @@ public abstract class AbstractTsiProvider extends AbstractNetworkProvider
private final String stopFinderEndpoint;
private final String tripEndpoint;
public AbstractTsiProvider(final String apiKey, final String apiBase)
public AbstractTsiProvider(final NetworkId network, final String apiKey, final String apiBase)
{
this(apiKey, apiBase, null, null);
this(network, apiKey, apiBase, null, null);
}
public AbstractTsiProvider(final String apiKey, final String tripEndpoint, final String stopFinderEndpoint)
public AbstractTsiProvider(final NetworkId network, final String apiKey, final String tripEndpoint, final String stopFinderEndpoint)
{
super(network);
this.apiKey = apiKey;
this.tripEndpoint = tripEndpoint;
this.stopFinderEndpoint = stopFinderEndpoint;
}
public AbstractTsiProvider(final String apiKey, final String apiBase, final String tripEndpoint, final String stopFinderEndpoint)
public AbstractTsiProvider(final NetworkId network, final String apiKey, final String apiBase, final String tripEndpoint,
final String stopFinderEndpoint)
{
this(apiKey, apiBase + (tripEndpoint != null ? tripEndpoint : DEFAULT_TRIP_ENDPOINT), //
this(network, apiKey, apiBase + (tripEndpoint != null ? tripEndpoint : DEFAULT_TRIP_ENDPOINT), //
apiBase + (stopFinderEndpoint != null ? stopFinderEndpoint : DEFAULT_STOPFINDER_ENDPOINT));
}

View file

@ -22,16 +22,12 @@ package de.schildbach.pte;
*/
public class AtcProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.ATC;
private final static String API_BASE = "http://82.187.83.50/TravelPlanner/"; // "http://cisium.webhop.net/TravelPlanner/"
private final static String API_BASE = "http://82.187.83.50/TravelPlanner/";
// http://cisium.webhop.net/TravelPlanner/
public AtcProvider()
{
super(API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.ATC, API_BASE);
}
}

View file

@ -31,22 +31,16 @@ import de.schildbach.pte.dto.Style;
*/
public class AvvProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.AVV;
private final static String API_BASE = "http://efa.avv-augsburg.de/avv/";
public AvvProvider()
{
super(API_BASE);
super(NetworkId.AVV, API_BASE);
setUseRouteIndexAsTripId(false);
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
@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)

View file

@ -28,23 +28,17 @@ import de.schildbach.pte.dto.Product;
*/
public final class BahnProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.DB;
private static final String API_BASE = "http://reiseauskunft.bahn.de/bin/";
public BahnProvider()
{
super(API_BASE + "bhftafel.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 14);
super(NetworkId.DB, API_BASE + "bhftafel.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 14);
setClientType("ANDROID");
setStationBoardHasStationTable(false);
setJsonGetStopsUseWeight(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -41,7 +41,6 @@ import de.schildbach.pte.dto.SuggestLocationsResult;
*/
public class BayernProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.BAYERN;
private final static String API_BASE = "http://mobile.defas-fgi.de/beg/";
// http://mobile.defas-fgi.de/xml/
@ -52,18 +51,13 @@ public class BayernProvider extends AbstractEfaProvider
public BayernProvider()
{
super(API_BASE, DEPARTURE_MONITOR_ENDPOINT, TRIP_ENDPOINT, STOP_FINDER_ENDPOINT, null);
super(NetworkId.BAYERN, API_BASE, DEPARTURE_MONITOR_ENDPOINT, TRIP_ENDPOINT, STOP_FINDER_ENDPOINT, null);
setRequestUrlEncoding(Charsets.UTF_8);
setIncludeRegionId(false);
setNumTripsRequested(12);
}
public NetworkId id()
{
return NETWORK_ID;
}
@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)

View file

@ -27,22 +27,18 @@ import de.schildbach.pte.dto.Style;
*/
public class BsvagProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.BSVAG;
private final static String API_BASE = "http://212.68.73.240/bsvag/"; // http://212.68.73.240/vrbstd/
private final static String API_BASE = "http://212.68.73.240/bsvag/";
// http://212.68.73.240/vrbstd/
public BsvagProvider()
{
super(API_BASE);
super(NetworkId.BSVAG, API_BASE);
setUseRouteIndexAsTripId(false);
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static

View file

@ -28,17 +28,11 @@ import de.schildbach.pte.dto.SuggestLocationsResult;
*/
public class BvbProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.BVB;
private final static String API_BASE = "http://www.efa-bvb.ch/bvb/";
public BvbProvider()
{
super(API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.BVB, API_BASE);
}
@Override

View file

@ -37,23 +37,18 @@ import de.schildbach.pte.geo.Berlin;
*/
public final class BvgProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.BVG;
private static final String API_BASE = "http://fahrinfo.bvg.de/Fahrinfo/bin/";
private static final String API_BASE_STATION_BOARD = "http://bvg.hafas.de/bin/";
public BvgProvider()
{
super(API_BASE_STATION_BOARD + "stboard.exe/dn", API_BASE + "ajax-getstop.bin/dny", API_BASE + "query.bin/dn", 8, Charsets.UTF_8);
super(NetworkId.BVG, API_BASE_STATION_BOARD + "stboard.exe/dn", API_BASE + "ajax-getstop.bin/dny", API_BASE + "query.bin/dn", 8,
Charsets.UTF_8);
setJsonGetStopsUseWeight(false);
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -22,16 +22,12 @@ package de.schildbach.pte;
*/
public class DingProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.DING;
private final static String API_BASE = "http://www.ding-ulm.de/ding2/"; // http://www.ding.eu/swu
private final static String API_BASE = "http://www.ding-ulm.de/ding2/";
// http://www.ding.eu/swu
public DingProvider()
{
super(API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.DING, API_BASE);
}
}

View file

@ -27,7 +27,6 @@ import de.schildbach.pte.dto.Product;
*/
public class DsbProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.DSB;
private static final String API_BASE = "http://mobil.rejseplanen.dk/mobil-bin/";
// http://dk.hafas.de/bin/fat/
@ -35,16 +34,11 @@ public class DsbProvider extends AbstractHafasProvider
public DsbProvider()
{
super(API_BASE + "stboard.exe/mn", API_BASE + "ajax-getstop.exe/mn", API_BASE + "query.exe/dn", 11);
super(NetworkId.DSB, API_BASE + "stboard.exe/mn", API_BASE + "ajax-getstop.exe/mn", API_BASE + "query.exe/dn", 11);
setStationBoardHasStationTable(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -22,20 +22,14 @@ package de.schildbach.pte;
*/
public class DubProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.DUB;
private final static String API_BASE = "http://wojhati.rta.ae/dub/";
public DubProvider()
{
super(API_BASE);
super(NetworkId.DUB, API_BASE);
setTimeZone("Asia/Dubai");
setUseRouteIndexAsTripId(false);
setFareCorrectionFactor(0.01f);
}
public NetworkId id()
{
return NETWORK_ID;
}
}

View file

@ -38,21 +38,15 @@ import de.schildbach.pte.dto.QueryTripsResult;
*/
public class EireannProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.EIREANN;
private static final String API_BASE = "http://journeyplanner.buseireann.ie/jp/bin/";
public EireannProvider()
{
super(API_BASE + "stboard.exe/en", API_BASE + "ajax-getstop.exe/en", API_BASE + "query.exe/en", 4);
super(NetworkId.EIREANN, API_BASE + "stboard.exe/en", API_BASE + "ajax-getstop.exe/en", API_BASE + "query.exe/en", 4);
setStationBoardHasStationTable(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected void setProductBits(final StringBuilder productBits, final Product product)
{

View file

@ -27,26 +27,21 @@ import de.schildbach.pte.dto.Style;
*/
public class GvhProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.GVH;
private static final String API_BASE = "http://bhb.efa.de/bhb/";
// http://www.efa.de/efaws2/cmsembedded_gvh/
// http://bhb.efa.de/bhb/
// http://mobil.efa.de/mobile3/
public GvhProvider(final String additionalQueryParameter)
{
super(API_BASE);
super(NetworkId.GVH, API_BASE);
setAdditionalQueryParameter(additionalQueryParameter);
setStyles(STYLES);
setSessionCookieName("HASESSIONID");
}
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static

View file

@ -56,7 +56,6 @@ import de.schildbach.pte.util.ParserUtils;
*/
public class InvgProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.INVG;
private static final String API_BASE = "http://fpa.invg.de/bin/";
// http://invg.hafas.de/bin/
@ -65,18 +64,13 @@ public class InvgProvider extends AbstractHafasProvider
public InvgProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
super(NetworkId.INVG, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
setStationBoardCanDoEquivs(false);
setStyles(STYLES);
setExtXmlEndpoint(API_BASE + "extxml.exe");
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected boolean hasCapability(final Capability capability)
{

View file

@ -22,18 +22,12 @@ package de.schildbach.pte;
*/
public class IvbProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.IVB;
private final static String API_BASE = "http://efa.ivb.at/ivb/";
public IvbProvider()
{
super(API_BASE);
super(NetworkId.IVB, API_BASE);
setUseRouteIndexAsTripId(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
}

View file

@ -37,17 +37,11 @@ import de.schildbach.pte.dto.Product;
*/
public class JetProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.JET;
private static final String API_BASE = "http://planner.jet.org.il/bin/";
public JetProvider()
{
super(API_BASE + "stboard.bin/yn", API_BASE + "ajax-getstop.bin/yn", API_BASE + "query.bin/yn", 4, Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.JET, API_BASE + "stboard.bin/yn", API_BASE + "ajax-getstop.bin/yn", API_BASE + "query.bin/yn", 4, Charsets.UTF_8);
}
@Override

View file

@ -33,7 +33,6 @@ import de.schildbach.pte.dto.Style.Shape;
*/
public class KvvProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.KVV;
private final static String API_BASE = "http://213.144.24.66/kvv2/";
public KvvProvider()
@ -43,17 +42,12 @@ public class KvvProvider extends AbstractEfaProvider
public KvvProvider(final String apiBase)
{
super(apiBase);
super(NetworkId.KVV, apiBase);
setStyles(STYLES);
setSessionCookieName("HASESSIONID");
}
public NetworkId id()
{
return NETWORK_ID;
}
private static final Pattern P_LINE = Pattern.compile("(.*?)\\s+\\([\\w/]+\\)", Pattern.CASE_INSENSITIVE);
@Override

View file

@ -27,22 +27,18 @@ import de.schildbach.pte.dto.Style;
*/
public class LinzProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.LINZ;
public static final String API_BASE = "http://www.linzag.at/linz2/"; // open data: http://www.linzag.at/static/
public static final String API_BASE = "http://www.linzag.at/linz2/";
// http://www.linzag.at/static/
public LinzProvider()
{
super(API_BASE);
super(NetworkId.LINZ, API_BASE);
setUseRouteIndexAsTripId(false);
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static

View file

@ -28,17 +28,11 @@ import de.schildbach.pte.dto.Product;
*/
public class LuProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.LU;
private static final String API_BASE = "http://mobiliteitszentral.hafas.de/hafas/";
public LuProvider()
{
super(API_BASE + "stboard.exe/fn", API_BASE + "ajax-getstop.exe/fn", API_BASE + "query.exe/fn", 9, Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.LU, API_BASE + "stboard.exe/fn", API_BASE + "ajax-getstop.exe/fn", API_BASE + "query.exe/fn", 9, Charsets.UTF_8);
}
@Override

View file

@ -29,22 +29,16 @@ import de.schildbach.pte.dto.Product;
*/
public class MerseyProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.MERSEY;
private final static String API_BASE = "http://jp.merseytravel.gov.uk/nwm/";
public MerseyProvider()
{
super(API_BASE);
super(NetworkId.MERSEY, API_BASE);
setLanguage("en");
setTimeZone("Europe/London");
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
public Set<Product> defaultProducts()
{

View file

@ -35,12 +35,11 @@ import de.schildbach.pte.dto.Style;
*/
public class MetProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.MET;
private final static String API_BASE = "http://jp.ptv.vic.gov.au/ptv/";
public MetProvider()
{
super(API_BASE);
super(NetworkId.MET, API_BASE);
setLanguage("en");
setTimeZone("Australia/Melbourne");
@ -49,11 +48,6 @@ public class MetProvider extends AbstractEfaProvider
setSessionCookieName("BIGipServerpl_ptv_jp_lbvsvr");
}
public NetworkId id()
{
return NETWORK_ID;
}
@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)

View file

@ -24,17 +24,11 @@ import de.schildbach.pte.dto.Position;
*/
public class MvgProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.MVG;
private static final String API_BASE = "http://mobil.mvg-online.de/mvgMobil/";
public MvgProvider()
{
super(API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.MVG, API_BASE);
}
@Override

View file

@ -35,7 +35,6 @@ import de.schildbach.pte.dto.Style;
*/
public class MvvProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.MVV;
private static final String API_BASE = "http://efa.mvv-muenchen.de/mobile/";
public MvvProvider()
@ -45,18 +44,13 @@ public class MvvProvider extends AbstractEfaProvider
public MvvProvider(final String apiBase)
{
super(apiBase);
super(NetworkId.MVV, apiBase);
setIncludeRegionId(false);
setStyles(STYLES);
setSessionCookieName("NS-Sticky");
}
public NetworkId id()
{
return NETWORK_ID;
}
@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)

View file

@ -34,21 +34,15 @@ import de.schildbach.pte.util.StringReplaceReader;
*/
public class NasaProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.NASA;
private static final String API_BASE = "http://reiseauskunft.insa.de/bin/";
public NasaProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 8, Charsets.UTF_8);
super(NetworkId.NASA, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 8, Charsets.UTF_8);
setStationBoardHasLocation(true);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -35,21 +35,15 @@ import de.schildbach.pte.dto.QueryTripsResult;
*/
public class NriProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.NRI;
private static final String API_BASE = "http://hafas.websrv05.reiseinfo.no/bin/dev/nri/";
public NriProvider()
{
super(API_BASE + "stboard.exe/on", API_BASE + "ajax-getstop.exe/ony", API_BASE + "query.exe/on", 8);
super(NetworkId.NRI, API_BASE + "stboard.exe/on", API_BASE + "ajax-getstop.exe/ony", API_BASE + "query.exe/on", 8);
setJsonGetStopsEncoding(Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -32,24 +32,18 @@ import de.schildbach.pte.dto.Product;
*/
public class NsProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.NS;
private static final String API_BASE = "http://hafas.bene-system.com/bin/";
private static final Pattern HTML_NEARBY_STATIONS_PATTERN = Pattern.compile("<tr bgcolor=\"#(E7EEF9|99BAE4)\">(.*?)</tr>", Pattern.DOTALL);
public NsProvider()
{
super(API_BASE + "stboard.exe/nn", API_BASE + "ajax-getstop.exe/nny", API_BASE + "query.exe/nn", 10);
super(NetworkId.NS, API_BASE + "stboard.exe/nn", API_BASE + "ajax-getstop.exe/nny", API_BASE + "query.exe/nn", 10);
setHtmlNearbyStationsPattern(HTML_NEARBY_STATIONS_PATTERN);
setStationBoardHasLocation(true);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -36,7 +36,6 @@ import de.schildbach.pte.dto.QueryTripsResult;
*/
public class NvbwProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.NVBW;
private final static String API_BASE = "http://www.efa-bw.de/nvbw/"; // no intermeditate stops
private final static String API_BASE_MOBILE = "http://www.efa-bw.de/android/";
@ -44,19 +43,14 @@ public class NvbwProvider extends AbstractEfaProvider
public NvbwProvider()
{
super(API_BASE + DEFAULT_DEPARTURE_MONITOR_ENDPOINT, API_BASE_MOBILE + DEFAULT_TRIP_ENDPOINT, API_BASE + DEFAULT_STOPFINDER_ENDPOINT,
API_BASE + DEFAULT_COORD_ENDPOINT);
super(NetworkId.NVBW, API_BASE + DEFAULT_DEPARTURE_MONITOR_ENDPOINT, API_BASE_MOBILE + DEFAULT_TRIP_ENDPOINT, API_BASE
+ DEFAULT_STOPFINDER_ENDPOINT, API_BASE + DEFAULT_COORD_ENDPOINT);
setIncludeRegionId(false);
setUseRouteIndexAsTripId(false);
setNumTripsRequested(12);
}
public NetworkId id()
{
return NETWORK_ID;
}
private static final Pattern P_LINE_S_AVG_VBK = Pattern.compile("(S\\d+) \\((?:AVG|VBK)\\)");
@Override

View file

@ -34,17 +34,11 @@ import de.schildbach.pte.util.StringReplaceReader;
*/
public class NvvProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.NVV;
private static final String API_BASE = "http://auskunft.nvv.de/auskunft/bin/jp/";
public NvvProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 12, Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.NVV, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 12, Charsets.UTF_8);
}
@Override

View file

@ -34,22 +34,16 @@ import de.schildbach.pte.dto.Product;
*/
public class OebbProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.OEBB;
private static final String API_BASE = "http://fahrplan.oebb.at/bin/";
public OebbProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dny", API_BASE + "query.exe/dn", 13);
super(NetworkId.OEBB, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dny", API_BASE + "query.exe/dn", 13);
setDominantPlanStopTime(true);
setJsonGetStopsEncoding(Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -24,16 +24,9 @@ import de.schildbach.pte.dto.Product;
*/
public class PacaProvider extends AbstractTsiProvider
{
public static final NetworkId NETWORK_ID = NetworkId.PACA;
public PacaProvider()
{
super("PACA", "http://www.pacamobilite.fr/WebServices/TransinfoService/api");
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.PACA, "PACA", "http://www.pacamobilite.fr/WebServices/TransinfoService/api");
}
@Override

View file

@ -26,21 +26,15 @@ import de.schildbach.pte.dto.Style.Shape;
*/
public class ParisProvider extends AbstractNavitiaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.PARIS;
private static String API_REGION = "fr-idf";
public ParisProvider(final String authorization)
{
super(authorization);
super(NetworkId.PARIS, authorization);
setTimeZone("Europe/Paris");
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
public String region()
{

View file

@ -29,17 +29,11 @@ import de.schildbach.pte.util.StringReplaceReader;
*/
public class PlProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.PL;
private static final String API_BASE = "http://rozklad.bilkom.pl/bin/";
public PlProvider()
{
super(API_BASE + "stboard.exe/pn", API_BASE + "ajax-getstop.exe/pn", API_BASE + "query.exe/pn", 7, Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.PL, API_BASE + "stboard.exe/pn", API_BASE + "ajax-getstop.exe/pn", API_BASE + "query.exe/pn", 7, Charsets.UTF_8);
}
@Override

View file

@ -33,21 +33,17 @@ import de.schildbach.pte.dto.Style.Shape;
*/
public class RsagProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.RSAG;
private static final String API_BASE = "http://fahrplan.rsag-online.de/hafas/";
// http://fahrplanauskunft.verkehrsverbund-warnow.de/bin/
public RsagProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
super(NetworkId.RSAG, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -28,22 +28,16 @@ import de.schildbach.pte.dto.Product;
*/
public class RtProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.RT;
private static final String API_BASE = "http://railteam.hafas.de/bin/";
public RtProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
super(NetworkId.RT, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
setJsonNearbyLocationsEncoding(Charsets.ISO_8859_1);
setStationBoardHasStationTable(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected void setProductBits(final StringBuilder productBits, final Product product)
{

View file

@ -27,21 +27,15 @@ import de.schildbach.pte.dto.Product;
*/
public class SbbProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.SBB;
private static final String API_BASE = "http://fahrplan.sbb.ch/bin/";
public SbbProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10);
super(NetworkId.SBB, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10);
setStationBoardHasStationTable(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -31,7 +31,6 @@ import de.schildbach.pte.dto.Product;
*/
public class SeProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.SE;
private static final String API_BASE = "http://samtrafiken.hafas.de/bin/";
// http://reseplanerare.resrobot.se/bin/
@ -39,7 +38,7 @@ public class SeProvider extends AbstractHafasProvider
public SeProvider()
{
super(API_BASE + "stboard.exe/sn", API_BASE + "ajax-getstop.exe/sny", API_BASE + "query.exe/sn", 14, Charsets.UTF_8);
super(NetworkId.SE, API_BASE + "stboard.exe/sn", API_BASE + "ajax-getstop.exe/sny", API_BASE + "query.exe/sn", 14, Charsets.UTF_8);
setClientType("ANDROID");
setUseIso8601(true);
@ -47,11 +46,6 @@ public class SeProvider extends AbstractHafasProvider
setStationBoardCanDoEquivs(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -52,24 +52,18 @@ import de.schildbach.pte.util.ParserUtils;
*/
public class SeptaProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.SEPTA;
private static final String API_BASE = "http://airs1.septa.org/bin/";
private static final long PARSER_DAY_ROLLOVER_THRESHOLD_MS = 12 * 60 * 60 * 1000;
public SeptaProvider()
{
super(API_BASE + "stboard.exe/en", API_BASE + "ajax-getstop.exe/dny", API_BASE + "query.exe/en", 4);
super(NetworkId.SEPTA, API_BASE + "stboard.exe/en", API_BASE + "ajax-getstop.exe/dny", API_BASE + "query.exe/en", 4);
setStationBoardCanDoEquivs(false);
setTimeZone("EST");
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected void setProductBits(final StringBuilder productBits, final Product product)
{

View file

@ -31,12 +31,11 @@ import de.schildbach.pte.dto.Style;
*/
public class SfProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.SF;
private final static String API_BASE = "http://tripplanner.transit.511.org/mtc/";
public SfProvider()
{
super(API_BASE);
super(NetworkId.SF, API_BASE);
setLanguage("en");
setTimeZone("America/Los_Angeles");
@ -45,11 +44,6 @@ public class SfProvider extends AbstractEfaProvider
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected String normalizeLocationName(final String name)
{

View file

@ -33,21 +33,15 @@ import de.schildbach.pte.dto.Product;
*/
public class ShProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.SH;
private static final String API_BASE = "http://nah.sh.hafas.de/bin/";
public ShProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
super(NetworkId.SH, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
setStationBoardCanDoEquivs(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -34,23 +34,19 @@ import de.schildbach.pte.dto.Product;
*/
public class SncbProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.SNCB;
private static final String API_BASE = "http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/"; // http://hari.b-rail.be/hafas/bin/
private static final String API_BASE = "http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/";
// http://hari.b-rail.be/hafas/bin/
public SncbProvider()
{
super(API_BASE + "stboard.exe/nn", API_BASE + "ajax-getstop.exe/nny", API_BASE + "query.exe/nn", 16);
super(NetworkId.SNCB, API_BASE + "stboard.exe/nn", API_BASE + "ajax-getstop.exe/nny", API_BASE + "query.exe/nn", 16);
setJsonGetStopsEncoding(Charsets.UTF_8);
setJsonNearbyLocationsEncoding(Charsets.UTF_8);
setStationBoardHasLocation(true);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -31,23 +31,17 @@ import de.schildbach.pte.dto.Style.Shape;
*/
public class StockholmProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.STOCKHOLM;
private static final String API_BASE = "http://reseplanerare.trafiken.nu/bin/";
public StockholmProvider()
{
super(API_BASE + "stboard.exe/sn", API_BASE + "ajax-getstop.exe/sny", API_BASE + "query.exe/sn", 7);
super(NetworkId.STOCKHOLM, API_BASE + "stboard.exe/sn", API_BASE + "ajax-getstop.exe/sny", API_BASE + "query.exe/sn", 7);
setStyles(STYLES);
setStationBoardHasStationTable(false);
setStationBoardCanDoEquivs(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -27,21 +27,15 @@ import de.schildbach.pte.dto.Product;
*/
public class StvProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.STV;
private final static String API_BASE = "http://fahrplan.verbundlinie.at/stv/";
public StvProvider()
{
super(API_BASE);
super(NetworkId.STV, API_BASE);
setIncludeRegionId(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@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)

View file

@ -22,16 +22,10 @@ package de.schildbach.pte;
*/
public class SvvProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.SVV;
private final static String API_BASE = "http://efa.svv-info.at/svv/";
public SvvProvider()
{
super(API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.SVV, API_BASE);
}
}

View file

@ -31,12 +31,11 @@ import de.schildbach.pte.dto.Style;
*/
public class SydneyProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.SYDNEY;
private final static String API_BASE = "http://tp.transportnsw.info/nsw/";
public SydneyProvider()
{
super(API_BASE);
super(NetworkId.SYDNEY, API_BASE);
setLanguage("en");
setTimeZone("Australia/Sydney");
@ -45,11 +44,6 @@ public class SydneyProvider extends AbstractEfaProvider
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected String normalizeLocationName(final String name)
{

View file

@ -29,22 +29,18 @@ import de.schildbach.pte.dto.Product;
*/
public class TfiProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.TFI;
private static final String API_BASE = "http://www.journeyplanner.transportforireland.ie/nta/"; // http://www.journeyplanner.transportforireland.ie/ultraLite/
private static final String API_BASE = "http://www.journeyplanner.transportforireland.ie/nta/";
// http://www.journeyplanner.transportforireland.ie/ultraLite/
public TfiProvider()
{
super(API_BASE);
super(NetworkId.TFI, API_BASE);
setLanguage("en");
setTimeZone("Europe/London");
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
public Set<Product> defaultProducts()
{

View file

@ -32,7 +32,6 @@ import de.schildbach.pte.dto.Style;
*/
public class TlemProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.TLEM;
private final static String API_BASE = "http://www.travelineeastmidlands.co.uk/em/";
// http://www.travelineeastmidlands.co.uk/em/
@ -44,7 +43,7 @@ public class TlemProvider extends AbstractEfaProvider
public TlemProvider()
{
super(API_BASE);
super(NetworkId.TLEM, API_BASE);
setLanguage("en");
setTimeZone("Europe/London");
@ -52,11 +51,6 @@ public class TlemProvider extends AbstractEfaProvider
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected String normalizeLocationName(final String name)
{

View file

@ -28,22 +28,16 @@ import de.schildbach.pte.dto.Style.Shape;
*/
public class VagfrProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VAGFR;
private final static String API_BASE = "http://efa.vag-freiburg.de/vagfr/";
public VagfrProvider()
{
super(API_BASE);
super(NetworkId.VAGFR, API_BASE);
setUseRouteIndexAsTripId(false);
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static

View file

@ -32,23 +32,17 @@ import de.schildbach.pte.dto.Product;
*/
public class VbbProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VBB;
private static final String API_BASE = "http://fahrinfo.vbb.de/bin/";
private static final Set<Product> ALL_EXCEPT_HIGHSPEED_AND_ONDEMAND = EnumSet.complementOf(EnumSet
.of(Product.HIGH_SPEED_TRAIN, Product.ON_DEMAND));
public VbbProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 7, Charsets.UTF_8);
super(NetworkId.VBB, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 7, Charsets.UTF_8);
setJsonGetStopsUseWeight(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{

View file

@ -27,21 +27,15 @@ import de.schildbach.pte.dto.Product;
*/
public class VblProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VBL;
private final static String API_BASE = "http://mobil.vbl.ch/vblmobil/";
public VblProvider()
{
super(API_BASE);
super(NetworkId.VBL, API_BASE);
setUseRouteIndexAsTripId(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@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)

View file

@ -26,19 +26,13 @@ import de.schildbach.pte.dto.Product;
*/
public class VbnProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VBN;
private static final String API_BASE = "http://fahrplaner.vbn.de/bin/";
// http://fahrplaner.vbn.de/hafas/
public VbnProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dny", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.VBN, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dny", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
}
@Override

View file

@ -32,18 +32,12 @@ import de.schildbach.pte.dto.Product;
*/
public class VgnProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VGN;
private static final String DEPARTURE_MONITOR_ENDPOINT = "XML_DM_REQUEST";
private static final String TRIP_ENDPOINT = "XML_TRIP_REQUEST2";
public VgnProvider(final String apiBase)
{
super(apiBase, DEPARTURE_MONITOR_ENDPOINT, TRIP_ENDPOINT, null, null);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.VGN, apiBase, DEPARTURE_MONITOR_ENDPOINT, TRIP_ENDPOINT, null, null);
}
@Override

View file

@ -35,16 +35,11 @@ public class VgsProvider extends AbstractHafasProvider
public VgsProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 11);
super(NetworkId.VGS, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 11);
setStationBoardHasStationTable(false);
}
public NetworkId id()
{
return NetworkId.VGS;
}
@Override
protected void setProductBits(final StringBuilder productBits, final Product product)
{

View file

@ -24,16 +24,10 @@ package de.schildbach.pte;
*/
public class VmobilProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VMOBIL;
private final static String API_BASE = "http://efaneu.vmobil.at/vvvmobile/";
public VmobilProvider()
{
super(API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.VMOBIL, API_BASE);
}
}

View file

@ -27,17 +27,11 @@ import de.schildbach.pte.dto.Product;
*/
public class VmsProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VMS;
private static final String API_BASE = "http://www.vms.de/vms2/";
public VmsProvider()
{
super(API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.VMS, API_BASE);
}
@Override

View file

@ -28,22 +28,18 @@ import de.schildbach.pte.dto.Style.Shape;
*/
public class VmvProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VMV;
private static final String API_BASE = "http://80.146.180.107/delfi/"; // http://80.146.180.107/vmv/
private static final String API_BASE = "http://80.146.180.107/delfi/";
// http://80.146.180.107/vmv/
public VmvProvider()
{
super(API_BASE);
super(NetworkId.VMV, API_BASE);
setUseRouteIndexAsTripId(false);
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static

View file

@ -29,12 +29,11 @@ import de.schildbach.pte.dto.Style;
*/
public class VorProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VOR;
private final static String API_BASE = "http://efa.vor.at/vor/";
public VorProvider()
{
super(API_BASE);
super(NetworkId.VOR, API_BASE);
setHttpReferer(API_BASE + DEFAULT_TRIP_ENDPOINT);
setHttpPost(true);
@ -43,11 +42,6 @@ public class VorProvider extends AbstractEfaProvider
setRequestUrlEncoding(Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static

View file

@ -27,19 +27,13 @@ import de.schildbach.pte.dto.Product;
*/
public class VrnProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VRN;
private static final String API_BASE = "http://fahrplanauskunft.vrn.de/vrn_mobile/";
// http://efa9.vrn.de/vrt/
public VrnProvider()
{
super(API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.VRN, API_BASE);
}
@Override

View file

@ -33,12 +33,11 @@ import de.schildbach.pte.dto.Style;
*/
public class VrrProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VRR;
private static final String API_BASE = "http://app.vrr.de/standard/";
public VrrProvider()
{
super(API_BASE);
super(NetworkId.VRR, API_BASE);
setIncludeRegionId(false);
setUseProxFootSearch(false);
@ -48,11 +47,6 @@ public class VrrProvider extends AbstractEfaProvider
setRequestUrlEncoding(Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
}
@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)

View file

@ -32,17 +32,11 @@ import de.schildbach.pte.dto.Product;
*/
public class VsnProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VSN;
private static final String API_BASE = "http://fahrplaner.vsninfo.de/hafas/";
public VsnProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.VSN, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
}
@Override

View file

@ -22,18 +22,12 @@ package de.schildbach.pte;
*/
public class VvmProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VVM;
private final static String API_BASE = "http://efa.mobilitaetsverbund.de/web/";
public VvmProvider()
{
super(API_BASE);
super(NetworkId.VVM, API_BASE);
setNeedsSpEncId(true);
}
public NetworkId id()
{
return NETWORK_ID;
}
}

View file

@ -29,7 +29,6 @@ import de.schildbach.pte.dto.Product;
*/
public class VvoProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VVO;
private final static String API_BASE = "http://efa.vvo-online.de:8080/dvb/";
public VvoProvider()
@ -39,17 +38,12 @@ public class VvoProvider extends AbstractEfaProvider
public VvoProvider(final String apiBase)
{
super(apiBase);
super(NetworkId.VVO, apiBase);
setUseRealtime(false);
setRequestUrlEncoding(Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
}
@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)

View file

@ -24,7 +24,6 @@ import de.schildbach.pte.dto.Point;
*/
public class VvsProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VVS;
private static final String API_BASE = "http://www2.vvs.de/vvs/";
public VvsProvider()
@ -34,16 +33,11 @@ public class VvsProvider extends AbstractEfaProvider
public VvsProvider(final String apiBase)
{
super(apiBase);
super(NetworkId.VVS, apiBase);
setIncludeRegionId(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
public Point[] getArea()
{

View file

@ -22,18 +22,12 @@ package de.schildbach.pte;
*/
public class VvtProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VVT;
private final static String API_BASE = "http://efa.vvt.at/vvtadr/";
public VvtProvider()
{
super(API_BASE);
super(NetworkId.VVT, API_BASE);
setUseRouteIndexAsTripId(false);
}
public NetworkId id()
{
return NETWORK_ID;
}
}

View file

@ -24,16 +24,10 @@ package de.schildbach.pte;
*/
public class VvvProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.VVV;
private final static String API_BASE = "http://195.30.98.162:8081/vvv2/";
public VvvProvider()
{
super(API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
super(NetworkId.VVV, API_BASE);
}
}

View file

@ -29,23 +29,17 @@ import de.schildbach.pte.dto.Style;
*/
public class WienProvider extends AbstractEfaProvider
{
public static final NetworkId NETWORK_ID = NetworkId.WIEN;
private final static String API_BASE = "http://www.wienerlinien.at/ogd_routing/";
public WienProvider()
{
super(API_BASE);
super(NetworkId.WIEN, API_BASE);
setIncludeRegionId(false);
setStyles(STYLES);
setRequestUrlEncoding(Charsets.UTF_8);
}
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static

View file

@ -33,21 +33,15 @@ import de.schildbach.pte.dto.Style.Shape;
*/
public class ZvvProvider extends AbstractHafasProvider
{
public static final NetworkId NETWORK_ID = NetworkId.ZVV;
private static final String API_BASE = "http://online.fahrplan.zvv.ch/bin/";
public ZvvProvider()
{
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
super(NetworkId.ZVV, API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8);
setStyles(STYLES);
}
public NetworkId id()
{
return NETWORK_ID;
}
@Override
protected Product intToProduct(final int value)
{