diff --git a/src/de/schildbach/pte/NetworkId.java b/src/de/schildbach/pte/NetworkId.java index 866c40a8..9362965f 100644 --- a/src/de/schildbach/pte/NetworkId.java +++ b/src/de/schildbach/pte/NetworkId.java @@ -34,7 +34,7 @@ public enum NetworkId { CZECH_REPUBLIC, // Switzerland - SBB, VBL, ZVV, + VBL, ZVV, // France PARIS, FRANCESOUTHWEST, FRANCESOUTHEAST, FRANCENORTHWEST, FRANCENORTHEAST, diff --git a/src/de/schildbach/pte/SbbProvider.java b/src/de/schildbach/pte/SbbProvider.java deleted file mode 100644 index 3c699235..00000000 --- a/src/de/schildbach/pte/SbbProvider.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright 2010-2015 the original author or authors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package de.schildbach.pte; - -import java.util.Set; -import java.util.regex.Matcher; - -import de.schildbach.pte.dto.Product; - -import okhttp3.HttpUrl; - -/** - * @author Andreas Schildbach - */ -public class SbbProvider extends AbstractHafasLegacyProvider { - private static final HttpUrl API_BASE = HttpUrl.parse("http://fahrplan.sbb.ch/bin/"); - private static final Product[] PRODUCTS_MAP = { Product.HIGH_SPEED_TRAIN, Product.HIGH_SPEED_TRAIN, - Product.HIGH_SPEED_TRAIN, Product.REGIONAL_TRAIN, Product.FERRY, Product.SUBURBAN_TRAIN, Product.BUS, - Product.CABLECAR, Product.REGIONAL_TRAIN, Product.TRAM }; - - public SbbProvider() { - super(NetworkId.SBB, API_BASE, "dn", PRODUCTS_MAP); - - setStationBoardHasStationTable(false); - } - - @Override - public Set defaultProducts() { - return Product.ALL; - } - - @Override - protected String[] splitStationName(final String name) { - final Matcher m = P_SPLIT_NAME_FIRST_COMMA.matcher(name); - if (m.matches()) - return new String[] { m.group(1), m.group(2) }; - - return super.splitStationName(name); - } - - @Override - protected String[] splitPOI(final String poi) { - final Matcher m = P_SPLIT_NAME_FIRST_COMMA.matcher(poi); - if (m.matches()) - return new String[] { m.group(1), m.group(2) }; - - return super.splitStationName(poi); - } - - @Override - protected String[] splitAddress(final String address) { - final Matcher m = P_SPLIT_NAME_FIRST_COMMA.matcher(address); - if (m.matches()) - return new String[] { m.group(1), m.group(2) }; - - return super.splitStationName(address); - } - - @Override - protected Product normalizeType(final String type) { - final String ucType = type.toUpperCase(); - - if ("IN".equals(ucType)) // Italien Roma-Lecce - return Product.HIGH_SPEED_TRAIN; - if ("IT".equals(ucType)) // Italien Roma-Venezia - return Product.HIGH_SPEED_TRAIN; - - if ("T".equals(ucType)) - return Product.REGIONAL_TRAIN; - if ("TE2".equals(ucType)) // Basel - Strasbourg - return Product.REGIONAL_TRAIN; - - if ("TX".equals(ucType)) - return Product.BUS; - if ("NFO".equals(ucType)) - return Product.BUS; - if ("KB".equals(ucType)) // Kleinbus? - return Product.BUS; - - return super.normalizeType(type); - } -} diff --git a/test/de/schildbach/pte/live/SbbProviderLiveTest.java b/test/de/schildbach/pte/live/SbbProviderLiveTest.java deleted file mode 100644 index dd7e38df..00000000 --- a/test/de/schildbach/pte/live/SbbProviderLiveTest.java +++ /dev/null @@ -1,127 +0,0 @@ -/* - * Copyright the original author or authors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package de.schildbach.pte.live; - -import static org.junit.Assert.assertEquals; - -import java.util.Date; - -import org.junit.Test; - -import de.schildbach.pte.SbbProvider; -import de.schildbach.pte.dto.Location; -import de.schildbach.pte.dto.LocationType; -import de.schildbach.pte.dto.NearbyLocationsResult; -import de.schildbach.pte.dto.Point; -import de.schildbach.pte.dto.QueryDeparturesResult; -import de.schildbach.pte.dto.QueryTripsResult; -import de.schildbach.pte.dto.SuggestLocationsResult; - -/** - * @author Andreas Schildbach - */ -public class SbbProviderLiveTest extends AbstractProviderLiveTest { - public SbbProviderLiveTest() { - super(new SbbProvider()); - } - - @Test - public void nearbyStations() throws Exception { - final NearbyLocationsResult result = queryNearbyStations(new Location(LocationType.STATION, "8500010")); - print(result); - } - - @Test - public void nearbyStationsByCoordinate() throws Exception { - final NearbyLocationsResult result = queryNearbyStations(Location.coord(52525589, 13369548)); - print(result); - } - - @Test - public void queryDepartures() throws Exception { - final QueryDeparturesResult result = queryDepartures("8500010", false); - print(result); - } - - @Test - public void queryDeparturesInvalidStation() throws Exception { - final QueryDeparturesResult result = queryDepartures("999999", false); - assertEquals(QueryDeparturesResult.Status.INVALID_STATION, result.status); - } - - @Test - public void suggestLocations() throws Exception { - final SuggestLocationsResult result = suggestLocations("haupt"); - print(result); - } - - @Test - public void suggestLocationsUmlaut() throws Exception { - final SuggestLocationsResult result = suggestLocations("Höhle"); - print(result); - } - - @Test - public void suggestLocationsAddress() throws Exception { - final SuggestLocationsResult result = suggestLocations("Dorfstrasse 10, Dällikon, Schweiz"); - print(result); - } - - @Test - public void shortTrip() throws Exception { - final QueryTripsResult result = queryTrips(new Location(LocationType.STATION, "8503000", null, "Zürich HB"), - null, new Location(LocationType.STATION, "8507785", null, "Bern, Hauptbahnhof"), new Date(), true, - null); - print(result); - final QueryTripsResult laterResult = queryMoreTrips(result.context, true); - print(laterResult); - } - - @Test - public void slowTrip() throws Exception { - final QueryTripsResult result = queryTrips( - new Location(LocationType.STATION, "8587210", null, "Schocherswil, Alte Post"), null, - new Location(LocationType.STATION, "8592972", null, "Laconnex, Mollach"), new Date(), true, null); - print(result); - final QueryTripsResult laterResult = queryMoreTrips(result.context, true); - print(laterResult); - } - - @Test - public void tripWithFootway() throws Exception { - final Location from = new Location(LocationType.ADDRESS, null, Point.from1E6(46689354, 7683444), null, - "Spiez, Seestraße 62"); - final Location to = new Location(LocationType.ADDRESS, null, Point.from1E6(47133169, 8767425), null, - "Einsiedeln, Erlenmoosweg 24"); - final QueryTripsResult result = queryTrips(from, null, to, new Date(), true, null); - print(result); - final QueryTripsResult laterResult = queryMoreTrips(result.context, true); - print(laterResult); - } - - @Test - public void tripFromAddress() throws Exception { - final Location from = new Location(LocationType.ADDRESS, null, Point.from1E6(47438595, 8437369), null, - "Dorfstrasse 10, Dällikon, Schweiz"); - final Location to = new Location(LocationType.STATION, "8500010", null, "Basel"); - final QueryTripsResult result = queryTrips(from, null, to, new Date(), true, null); - print(result); - final QueryTripsResult laterResult = queryMoreTrips(result.context, true); - print(laterResult); - } -}