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) 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 + (tripEndpoint != null ? tripEndpoint : DEFAULT_TRIP_ENDPOINT), //
apiBase + (stopFinderEndpoint != null ? stopFinderEndpoint : DEFAULT_STOPFINDER_ENDPOINT), // apiBase + (stopFinderEndpoint != null ? stopFinderEndpoint : DEFAULT_STOPFINDER_ENDPOINT), //
apiBase + (coordEndpoint != null ? coordEndpoint : DEFAULT_COORD_ENDPOINT)); apiBase + (coordEndpoint != null ? coordEndpoint : DEFAULT_COORD_ENDPOINT));
} }
public AbstractEfaProvider(final String departureMonitorEndpoint, final String tripEndpoint, final String stopFinderEndpoint, public AbstractEfaProvider(final NetworkId network, final String departureMonitorEndpoint, final String tripEndpoint,
final String coordEndpoint) final String stopFinderEndpoint, final String coordEndpoint)
{ {
super(network);
try try
{ {
parserFactory = XmlPullParserFactory.newInstance(System.getProperty(XmlPullParserFactory.PROPERTY_NAME), null); 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, public AbstractHafasProvider(final NetworkId network, final String stationBoardEndpoint, final String getStopEndpoint,
final int numProductBits, final Charset jsonEncoding) final String queryEndpoint, final int numProductBits, final Charset jsonEncoding)
{ {
super(network);
this.stationBoardEndpoint = stationBoardEndpoint; this.stationBoardEndpoint = stationBoardEndpoint;
this.getStopEndpoint = getStopEndpoint; this.getStopEndpoint = getStopEndpoint;
this.queryEndpoint = queryEndpoint; this.queryEndpoint = queryEndpoint;

View file

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

View file

@ -39,13 +39,25 @@ import de.schildbach.pte.dto.Style;
*/ */
public abstract class AbstractNetworkProvider implements NetworkProvider 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 TimeZone timeZone = TimeZone.getTimeZone("CET");
protected int numTripsRequested = 6; protected int numTripsRequested = 6;
private @Nullable Map<String, Style> styles = null; private @Nullable Map<String, Style> styles = null;
protected @Nullable String sessionCookieName = 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) public final boolean hasCapabilities(final Capability... capabilities)
{ {
for (final Capability 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 stopFinderEndpoint;
private final String tripEndpoint; 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.apiKey = apiKey;
this.tripEndpoint = tripEndpoint; this.tripEndpoint = tripEndpoint;
this.stopFinderEndpoint = stopFinderEndpoint; 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)); apiBase + (stopFinderEndpoint != null ? stopFinderEndpoint : DEFAULT_STOPFINDER_ENDPOINT));
} }

View file

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

View file

@ -31,22 +31,16 @@ import de.schildbach.pte.dto.Style;
*/ */
public class AvvProvider extends AbstractEfaProvider 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/"; private final static String API_BASE = "http://efa.avv-augsburg.de/avv/";
public AvvProvider() public AvvProvider()
{ {
super(API_BASE); super(NetworkId.AVV, API_BASE);
setUseRouteIndexAsTripId(false); setUseRouteIndexAsTripId(false);
setStyles(STYLES); setStyles(STYLES);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name, 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) 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 final class BahnProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.DB;
private static final String API_BASE = "http://reiseauskunft.bahn.de/bin/"; private static final String API_BASE = "http://reiseauskunft.bahn.de/bin/";
public BahnProvider() 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"); setClientType("ANDROID");
setStationBoardHasStationTable(false); setStationBoardHasStationTable(false);
setJsonGetStopsUseWeight(false); setJsonGetStopsUseWeight(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

@ -41,7 +41,6 @@ import de.schildbach.pte.dto.SuggestLocationsResult;
*/ */
public class BayernProvider extends AbstractEfaProvider 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/"; private final static String API_BASE = "http://mobile.defas-fgi.de/beg/";
// http://mobile.defas-fgi.de/xml/ // http://mobile.defas-fgi.de/xml/
@ -52,18 +51,13 @@ public class BayernProvider extends AbstractEfaProvider
public BayernProvider() 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); setRequestUrlEncoding(Charsets.UTF_8);
setIncludeRegionId(false); setIncludeRegionId(false);
setNumTripsRequested(12); setNumTripsRequested(12);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name, 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) 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 class BsvagProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.BSVAG; private final static String API_BASE = "http://212.68.73.240/bsvag/";
private final static String API_BASE = "http://212.68.73.240/bsvag/"; // http://212.68.73.240/vrbstd/
// http://212.68.73.240/vrbstd/
public BsvagProvider() public BsvagProvider()
{ {
super(API_BASE); super(NetworkId.BSVAG, API_BASE);
setUseRouteIndexAsTripId(false); setUseRouteIndexAsTripId(false);
setStyles(STYLES); setStyles(STYLES);
} }
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>(); private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static static

View file

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

View file

@ -37,23 +37,18 @@ import de.schildbach.pte.geo.Berlin;
*/ */
public final class BvgProvider extends AbstractHafasProvider 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 = "http://fahrinfo.bvg.de/Fahrinfo/bin/";
private static final String API_BASE_STATION_BOARD = "http://bvg.hafas.de/bin/"; private static final String API_BASE_STATION_BOARD = "http://bvg.hafas.de/bin/";
public BvgProvider() 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); setJsonGetStopsUseWeight(false);
setStyles(STYLES); setStyles(STYLES);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

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

View file

@ -27,7 +27,6 @@ import de.schildbach.pte.dto.Product;
*/ */
public class DsbProvider extends AbstractHafasProvider 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/"; private static final String API_BASE = "http://mobil.rejseplanen.dk/mobil-bin/";
// http://dk.hafas.de/bin/fat/ // http://dk.hafas.de/bin/fat/
@ -35,16 +34,11 @@ public class DsbProvider extends AbstractHafasProvider
public DsbProvider() 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); setStationBoardHasStationTable(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

@ -22,20 +22,14 @@ package de.schildbach.pte;
*/ */
public class DubProvider extends AbstractEfaProvider public class DubProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.DUB;
private final static String API_BASE = "http://wojhati.rta.ae/dub/"; private final static String API_BASE = "http://wojhati.rta.ae/dub/";
public DubProvider() public DubProvider()
{ {
super(API_BASE); super(NetworkId.DUB, API_BASE);
setTimeZone("Asia/Dubai"); setTimeZone("Asia/Dubai");
setUseRouteIndexAsTripId(false); setUseRouteIndexAsTripId(false);
setFareCorrectionFactor(0.01f); 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 class EireannProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.EIREANN;
private static final String API_BASE = "http://journeyplanner.buseireann.ie/jp/bin/"; private static final String API_BASE = "http://journeyplanner.buseireann.ie/jp/bin/";
public EireannProvider() 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); setStationBoardHasStationTable(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected void setProductBits(final StringBuilder productBits, final Product product) 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 class GvhProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.GVH;
private static final String API_BASE = "http://bhb.efa.de/bhb/"; private static final String API_BASE = "http://bhb.efa.de/bhb/";
// http://www.efa.de/efaws2/cmsembedded_gvh/
// http://bhb.efa.de/bhb/ // http://bhb.efa.de/bhb/
// http://mobil.efa.de/mobile3/ // http://mobil.efa.de/mobile3/
public GvhProvider(final String additionalQueryParameter) public GvhProvider(final String additionalQueryParameter)
{ {
super(API_BASE); super(NetworkId.GVH, API_BASE);
setAdditionalQueryParameter(additionalQueryParameter); setAdditionalQueryParameter(additionalQueryParameter);
setStyles(STYLES); setStyles(STYLES);
setSessionCookieName("HASESSIONID"); setSessionCookieName("HASESSIONID");
} }
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>(); private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static static

View file

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

View file

@ -22,18 +22,12 @@ package de.schildbach.pte;
*/ */
public class IvbProvider extends AbstractEfaProvider public class IvbProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.IVB;
private final static String API_BASE = "http://efa.ivb.at/ivb/"; private final static String API_BASE = "http://efa.ivb.at/ivb/";
public IvbProvider() public IvbProvider()
{ {
super(API_BASE); super(NetworkId.IVB, API_BASE);
setUseRouteIndexAsTripId(false); 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 class JetProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.JET;
private static final String API_BASE = "http://planner.jet.org.il/bin/"; private static final String API_BASE = "http://planner.jet.org.il/bin/";
public JetProvider() public JetProvider()
{ {
super(API_BASE + "stboard.bin/yn", API_BASE + "ajax-getstop.bin/yn", API_BASE + "query.bin/yn", 4, Charsets.UTF_8); super(NetworkId.JET, 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;
} }
@Override @Override

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -35,7 +35,6 @@ import de.schildbach.pte.dto.Style;
*/ */
public class MvvProvider extends AbstractEfaProvider 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/"; private static final String API_BASE = "http://efa.mvv-muenchen.de/mobile/";
public MvvProvider() public MvvProvider()
@ -45,18 +44,13 @@ public class MvvProvider extends AbstractEfaProvider
public MvvProvider(final String apiBase) public MvvProvider(final String apiBase)
{ {
super(apiBase); super(NetworkId.MVV, apiBase);
setIncludeRegionId(false); setIncludeRegionId(false);
setStyles(STYLES); setStyles(STYLES);
setSessionCookieName("NS-Sticky"); setSessionCookieName("NS-Sticky");
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name, 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) 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 class NasaProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.NASA;
private static final String API_BASE = "http://reiseauskunft.insa.de/bin/"; private static final String API_BASE = "http://reiseauskunft.insa.de/bin/";
public NasaProvider() 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); setStationBoardHasLocation(true);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

@ -35,21 +35,15 @@ import de.schildbach.pte.dto.QueryTripsResult;
*/ */
public class NriProvider extends AbstractHafasProvider 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/"; private static final String API_BASE = "http://hafas.websrv05.reiseinfo.no/bin/dev/nri/";
public NriProvider() 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); setJsonGetStopsEncoding(Charsets.UTF_8);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

@ -32,24 +32,18 @@ import de.schildbach.pte.dto.Product;
*/ */
public class NsProvider extends AbstractHafasProvider 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 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); private static final Pattern HTML_NEARBY_STATIONS_PATTERN = Pattern.compile("<tr bgcolor=\"#(E7EEF9|99BAE4)\">(.*?)</tr>", Pattern.DOTALL);
public NsProvider() 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); setHtmlNearbyStationsPattern(HTML_NEARBY_STATIONS_PATTERN);
setStationBoardHasLocation(true); setStationBoardHasLocation(true);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

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

View file

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

View file

@ -34,22 +34,16 @@ import de.schildbach.pte.dto.Product;
*/ */
public class OebbProvider extends AbstractHafasProvider public class OebbProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.OEBB;
private static final String API_BASE = "http://fahrplan.oebb.at/bin/"; private static final String API_BASE = "http://fahrplan.oebb.at/bin/";
public OebbProvider() 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); setDominantPlanStopTime(true);
setJsonGetStopsEncoding(Charsets.UTF_8); setJsonGetStopsEncoding(Charsets.UTF_8);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

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

View file

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

View file

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

View file

@ -33,21 +33,17 @@ import de.schildbach.pte.dto.Style.Shape;
*/ */
public class RsagProvider extends AbstractHafasProvider 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/"; private static final String API_BASE = "http://fahrplan.rsag-online.de/hafas/";
// http://fahrplanauskunft.verkehrsverbund-warnow.de/bin/
public RsagProvider() 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); setStyles(STYLES);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

@ -28,22 +28,16 @@ import de.schildbach.pte.dto.Product;
*/ */
public class RtProvider extends AbstractHafasProvider public class RtProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.RT;
private static final String API_BASE = "http://railteam.hafas.de/bin/"; private static final String API_BASE = "http://railteam.hafas.de/bin/";
public RtProvider() 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); setJsonNearbyLocationsEncoding(Charsets.ISO_8859_1);
setStationBoardHasStationTable(false); setStationBoardHasStationTable(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected void setProductBits(final StringBuilder productBits, final Product product) 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 class SbbProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.SBB;
private static final String API_BASE = "http://fahrplan.sbb.ch/bin/"; private static final String API_BASE = "http://fahrplan.sbb.ch/bin/";
public SbbProvider() 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); setStationBoardHasStationTable(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

@ -31,7 +31,6 @@ import de.schildbach.pte.dto.Product;
*/ */
public class SeProvider extends AbstractHafasProvider public class SeProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.SE;
private static final String API_BASE = "http://samtrafiken.hafas.de/bin/"; private static final String API_BASE = "http://samtrafiken.hafas.de/bin/";
// http://reseplanerare.resrobot.se/bin/ // http://reseplanerare.resrobot.se/bin/
@ -39,7 +38,7 @@ public class SeProvider extends AbstractHafasProvider
public SeProvider() 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"); setClientType("ANDROID");
setUseIso8601(true); setUseIso8601(true);
@ -47,11 +46,6 @@ public class SeProvider extends AbstractHafasProvider
setStationBoardCanDoEquivs(false); setStationBoardCanDoEquivs(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

@ -52,24 +52,18 @@ import de.schildbach.pte.util.ParserUtils;
*/ */
public class SeptaProvider extends AbstractHafasProvider 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 String API_BASE = "http://airs1.septa.org/bin/";
private static final long PARSER_DAY_ROLLOVER_THRESHOLD_MS = 12 * 60 * 60 * 1000; private static final long PARSER_DAY_ROLLOVER_THRESHOLD_MS = 12 * 60 * 60 * 1000;
public SeptaProvider() 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); setStationBoardCanDoEquivs(false);
setTimeZone("EST"); setTimeZone("EST");
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected void setProductBits(final StringBuilder productBits, final Product product) 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 class SfProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.SF;
private final static String API_BASE = "http://tripplanner.transit.511.org/mtc/"; private final static String API_BASE = "http://tripplanner.transit.511.org/mtc/";
public SfProvider() public SfProvider()
{ {
super(API_BASE); super(NetworkId.SF, API_BASE);
setLanguage("en"); setLanguage("en");
setTimeZone("America/Los_Angeles"); setTimeZone("America/Los_Angeles");
@ -45,11 +44,6 @@ public class SfProvider extends AbstractEfaProvider
setStyles(STYLES); setStyles(STYLES);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected String normalizeLocationName(final String name) protected String normalizeLocationName(final String name)
{ {

View file

@ -33,21 +33,15 @@ import de.schildbach.pte.dto.Product;
*/ */
public class ShProvider extends AbstractHafasProvider 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/"; private static final String API_BASE = "http://nah.sh.hafas.de/bin/";
public ShProvider() 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); setStationBoardCanDoEquivs(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

@ -34,23 +34,19 @@ import de.schildbach.pte.dto.Product;
*/ */
public class SncbProvider extends AbstractHafasProvider 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/";
private static final String API_BASE = "http://www.belgianrail.be/jp/sncb-nmbs-routeplanner/"; // http://hari.b-rail.be/hafas/bin/
// http://hari.b-rail.be/hafas/bin/
public SncbProvider() 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); setJsonGetStopsEncoding(Charsets.UTF_8);
setJsonNearbyLocationsEncoding(Charsets.UTF_8); setJsonNearbyLocationsEncoding(Charsets.UTF_8);
setStationBoardHasLocation(true); setStationBoardHasLocation(true);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) 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 class StockholmProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.STOCKHOLM;
private static final String API_BASE = "http://reseplanerare.trafiken.nu/bin/"; private static final String API_BASE = "http://reseplanerare.trafiken.nu/bin/";
public StockholmProvider() 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); setStyles(STYLES);
setStationBoardHasStationTable(false); setStationBoardHasStationTable(false);
setStationBoardCanDoEquivs(false); setStationBoardCanDoEquivs(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {

View file

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

View file

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

View file

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

View file

@ -32,7 +32,6 @@ import de.schildbach.pte.dto.Style;
*/ */
public class TlemProvider extends AbstractEfaProvider 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/"; private final static String API_BASE = "http://www.travelineeastmidlands.co.uk/em/";
// http://www.travelineeastmidlands.co.uk/em/ // http://www.travelineeastmidlands.co.uk/em/
@ -44,7 +43,7 @@ public class TlemProvider extends AbstractEfaProvider
public TlemProvider() public TlemProvider()
{ {
super(API_BASE); super(NetworkId.TLEM, API_BASE);
setLanguage("en"); setLanguage("en");
setTimeZone("Europe/London"); setTimeZone("Europe/London");
@ -52,11 +51,6 @@ public class TlemProvider extends AbstractEfaProvider
setStyles(STYLES); setStyles(STYLES);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected String normalizeLocationName(final String name) 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 class VagfrProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.VAGFR;
private final static String API_BASE = "http://efa.vag-freiburg.de/vagfr/"; private final static String API_BASE = "http://efa.vag-freiburg.de/vagfr/";
public VagfrProvider() public VagfrProvider()
{ {
super(API_BASE); super(NetworkId.VAGFR, API_BASE);
setUseRouteIndexAsTripId(false); setUseRouteIndexAsTripId(false);
setStyles(STYLES); setStyles(STYLES);
} }
public NetworkId id()
{
return NETWORK_ID;
}
private static final Map<String, Style> STYLES = new HashMap<String, Style>(); private static final Map<String, Style> STYLES = new HashMap<String, Style>();
static static

View file

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

View file

@ -27,21 +27,15 @@ import de.schildbach.pte.dto.Product;
*/ */
public class VblProvider extends AbstractEfaProvider public class VblProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.VBL;
private final static String API_BASE = "http://mobil.vbl.ch/vblmobil/"; private final static String API_BASE = "http://mobil.vbl.ch/vblmobil/";
public VblProvider() public VblProvider()
{ {
super(API_BASE); super(NetworkId.VBL, API_BASE);
setUseRouteIndexAsTripId(false); setUseRouteIndexAsTripId(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name, 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) 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 class VbnProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.VBN;
private static final String API_BASE = "http://fahrplaner.vbn.de/bin/"; private static final String API_BASE = "http://fahrplaner.vbn.de/bin/";
// http://fahrplaner.vbn.de/hafas/ // http://fahrplaner.vbn.de/hafas/
public VbnProvider() public VbnProvider()
{ {
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dny", API_BASE + "query.exe/dn", 10, Charsets.UTF_8); super(NetworkId.VBN, 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;
} }
@Override @Override

View file

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

View file

@ -35,16 +35,11 @@ public class VgsProvider extends AbstractHafasProvider
public VgsProvider() 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); setStationBoardHasStationTable(false);
} }
public NetworkId id()
{
return NetworkId.VGS;
}
@Override @Override
protected void setProductBits(final StringBuilder productBits, final Product product) 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 class VmobilProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.VMOBIL;
private final static String API_BASE = "http://efaneu.vmobil.at/vvvmobile/"; private final static String API_BASE = "http://efaneu.vmobil.at/vvvmobile/";
public VmobilProvider() public VmobilProvider()
{ {
super(API_BASE); super(NetworkId.VMOBIL, API_BASE);
}
public NetworkId id()
{
return NETWORK_ID;
} }
} }

View file

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

View file

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

View file

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

View file

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

View file

@ -33,12 +33,11 @@ import de.schildbach.pte.dto.Style;
*/ */
public class VrrProvider extends AbstractEfaProvider public class VrrProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.VRR;
private static final String API_BASE = "http://app.vrr.de/standard/"; private static final String API_BASE = "http://app.vrr.de/standard/";
public VrrProvider() public VrrProvider()
{ {
super(API_BASE); super(NetworkId.VRR, API_BASE);
setIncludeRegionId(false); setIncludeRegionId(false);
setUseProxFootSearch(false); setUseProxFootSearch(false);
@ -48,11 +47,6 @@ public class VrrProvider extends AbstractEfaProvider
setRequestUrlEncoding(Charsets.UTF_8); setRequestUrlEncoding(Charsets.UTF_8);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name, 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) 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 class VsnProvider extends AbstractHafasProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.VSN;
private static final String API_BASE = "http://fahrplaner.vsninfo.de/hafas/"; private static final String API_BASE = "http://fahrplaner.vsninfo.de/hafas/";
public VsnProvider() public VsnProvider()
{ {
super(API_BASE + "stboard.exe/dn", API_BASE + "ajax-getstop.exe/dn", API_BASE + "query.exe/dn", 10, Charsets.UTF_8); super(NetworkId.VSN, 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;
} }
@Override @Override

View file

@ -22,18 +22,12 @@ package de.schildbach.pte;
*/ */
public class VvmProvider extends AbstractEfaProvider public class VvmProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.VVM;
private final static String API_BASE = "http://efa.mobilitaetsverbund.de/web/"; private final static String API_BASE = "http://efa.mobilitaetsverbund.de/web/";
public VvmProvider() public VvmProvider()
{ {
super(API_BASE); super(NetworkId.VVM, API_BASE);
setNeedsSpEncId(true); 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 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/"; private final static String API_BASE = "http://efa.vvo-online.de:8080/dvb/";
public VvoProvider() public VvoProvider()
@ -39,17 +38,12 @@ public class VvoProvider extends AbstractEfaProvider
public VvoProvider(final String apiBase) public VvoProvider(final String apiBase)
{ {
super(apiBase); super(NetworkId.VVO, apiBase);
setUseRealtime(false); setUseRealtime(false);
setRequestUrlEncoding(Charsets.UTF_8); setRequestUrlEncoding(Charsets.UTF_8);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Line parseLine(final @Nullable String id, final @Nullable String mot, final @Nullable String symbol, final @Nullable String name, 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) 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 class VvsProvider extends AbstractEfaProvider
{ {
public static final NetworkId NETWORK_ID = NetworkId.VVS;
private static final String API_BASE = "http://www2.vvs.de/vvs/"; private static final String API_BASE = "http://www2.vvs.de/vvs/";
public VvsProvider() public VvsProvider()
@ -34,16 +33,11 @@ public class VvsProvider extends AbstractEfaProvider
public VvsProvider(final String apiBase) public VvsProvider(final String apiBase)
{ {
super(apiBase); super(NetworkId.VVS, apiBase);
setIncludeRegionId(false); setIncludeRegionId(false);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
public Point[] getArea() public Point[] getArea()
{ {

View file

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

View file

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

View file

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

View file

@ -33,21 +33,15 @@ import de.schildbach.pte.dto.Style.Shape;
*/ */
public class ZvvProvider extends AbstractHafasProvider 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/"; private static final String API_BASE = "http://online.fahrplan.zvv.ch/bin/";
public ZvvProvider() 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); setStyles(STYLES);
} }
public NetworkId id()
{
return NETWORK_ID;
}
@Override @Override
protected Product intToProduct(final int value) protected Product intToProduct(final int value)
{ {