mirror of
https://gitlab.com/oeffi/public-transport-enabler.git
synced 2025-07-07 05:38:47 +00:00
optionally query equivalent stations for departures
git-svn-id: https://public-transport-enabler.googlecode.com/svn/trunk@490 0924bc21-9374-b0fa-ee44-9ff1593b38f0
This commit is contained in:
parent
a3c413de4f
commit
a990586727
48 changed files with 171 additions and 107 deletions
|
@ -43,7 +43,6 @@ import de.schildbach.pte.dto.Fare;
|
|||
import de.schildbach.pte.dto.Fare.Type;
|
||||
import de.schildbach.pte.dto.GetConnectionDetailsResult;
|
||||
import de.schildbach.pte.dto.Line;
|
||||
import de.schildbach.pte.dto.StationDepartures;
|
||||
import de.schildbach.pte.dto.Location;
|
||||
import de.schildbach.pte.dto.LocationType;
|
||||
import de.schildbach.pte.dto.NearbyStationsResult;
|
||||
|
@ -51,6 +50,7 @@ import de.schildbach.pte.dto.QueryConnectionsResult;
|
|||
import de.schildbach.pte.dto.QueryConnectionsResult.Status;
|
||||
import de.schildbach.pte.dto.QueryDeparturesResult;
|
||||
import de.schildbach.pte.dto.Station;
|
||||
import de.schildbach.pte.dto.StationDepartures;
|
||||
import de.schildbach.pte.dto.Stop;
|
||||
import de.schildbach.pte.util.Color;
|
||||
import de.schildbach.pte.util.ParserUtils;
|
||||
|
@ -118,13 +118,12 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
// parse assigned stops
|
||||
if (XmlPullUtil.jumpToStartTag(pp, null, "itdOdvAssignedStops"))
|
||||
{
|
||||
while (XmlPullUtil.nextStartTagInsideTree(pp, null, "itdOdvAssignedStop"))
|
||||
XmlPullUtil.enter(pp, "itdOdvAssignedStops");
|
||||
while (XmlPullUtil.test(pp, "itdOdvAssignedStop"))
|
||||
{
|
||||
final Location location = processItdOdvAssignedStop(pp);
|
||||
if (!results.contains(location))
|
||||
results.add(location);
|
||||
|
||||
XmlPullUtil.skipRestOfTree(pp);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -238,7 +237,7 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
return new Location(type, id, lat, lon, place != null ? place : defaultPlace, name != null ? name : longName);
|
||||
}
|
||||
|
||||
private Location processItdOdvAssignedStop(final XmlPullParser pp)
|
||||
private Location processItdOdvAssignedStop(final XmlPullParser pp) throws XmlPullParserException, IOException
|
||||
{
|
||||
final int id = Integer.parseInt(pp.getAttributeValue(null, "stopID"));
|
||||
int lat = 0, lon = 0;
|
||||
|
@ -247,8 +246,14 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
lat = Integer.parseInt(pp.getAttributeValue(null, "y"));
|
||||
lon = Integer.parseInt(pp.getAttributeValue(null, "x"));
|
||||
}
|
||||
final String place = normalizeLocationName(XmlPullUtil.attr(pp, "place"));
|
||||
final String name = normalizeLocationName(pp.getAttributeValue(null, "nameWithPlace"));
|
||||
return new Location(LocationType.STATION, id, lat, lon, null, name);
|
||||
|
||||
XmlPullUtil.enter(pp, "itdOdvAssignedStop");
|
||||
// final String name = normalizeLocationName(pp.getText());
|
||||
XmlPullUtil.exit(pp, "itdOdvAssignedStop");
|
||||
|
||||
return new Location(LocationType.STATION, id, lat, lon, place, name);
|
||||
}
|
||||
|
||||
protected abstract String nearbyLatLonUri(int lat, int lon);
|
||||
|
@ -842,10 +847,10 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
|
||||
protected abstract String departuresQueryUri(String stationId, int maxDepartures);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final String uri = departuresQueryUri(stationId, maxDepartures)
|
||||
+ "&outputFormat=XML&coordOutputFormat=WGS84&deleteAssignedStops_dm=1&mode=direct";
|
||||
final String uri = departuresQueryUri(stationId, maxDepartures) + "&outputFormat=XML&coordOutputFormat=WGS84&deleteAssignedStops_dm="
|
||||
+ (equivs ? '0' : '1') + "&mode=direct";
|
||||
|
||||
InputStream is = null;
|
||||
try
|
||||
|
@ -856,7 +861,11 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
pp.setInput(is, null);
|
||||
assertItdRequest(pp);
|
||||
|
||||
if (!XmlPullUtil.jumpToStartTag(pp, null, "itdOdv") || !"dm".equals(pp.getAttributeValue(null, "usage")))
|
||||
XmlPullUtil.enter(pp, "itdRequest");
|
||||
|
||||
XmlPullUtil.enter(pp, "itdDepartureMonitorRequest");
|
||||
|
||||
if (!XmlPullUtil.test(pp, "itdOdv") || !"dm".equals(XmlPullUtil.attr(pp, "usage")))
|
||||
throw new IllegalStateException("cannot find <itdOdv usage=\"dm\" />");
|
||||
XmlPullUtil.enter(pp, "itdOdv");
|
||||
|
||||
|
@ -867,38 +876,64 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
XmlPullUtil.enter(pp, "itdOdvName");
|
||||
if ("identified".equals(nameState))
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
final Location location = processOdvNameElem(pp, place);
|
||||
result.stationDepartures.add(new StationDepartures(location, new LinkedList<Departure>(), new LinkedList<Line>()));
|
||||
|
||||
XmlPullUtil.exit(pp, "itdOdvName");
|
||||
|
||||
if (XmlPullUtil.test(pp, "itdOdvAssignedStops"))
|
||||
{
|
||||
XmlPullUtil.enter(pp, "itdOdvAssignedStops");
|
||||
while (XmlPullUtil.test(pp, "itdOdvAssignedStop"))
|
||||
{
|
||||
final Location assignedLocation = processItdOdvAssignedStop(pp);
|
||||
if (findStationDepartures(result.stationDepartures, assignedLocation.id) == null)
|
||||
result.stationDepartures
|
||||
.add(new StationDepartures(assignedLocation, new LinkedList<Departure>(), new LinkedList<Line>()));
|
||||
}
|
||||
XmlPullUtil.exit(pp, "itdOdvAssignedStops");
|
||||
}
|
||||
|
||||
XmlPullUtil.exit(pp, "itdOdv");
|
||||
|
||||
if (XmlPullUtil.test(pp, "itdDateTime"))
|
||||
XmlPullUtil.next(pp);
|
||||
|
||||
if (XmlPullUtil.test(pp, "itdDateRange"))
|
||||
XmlPullUtil.next(pp);
|
||||
|
||||
if (XmlPullUtil.test(pp, "itdTripOptions"))
|
||||
XmlPullUtil.next(pp);
|
||||
|
||||
final Calendar plannedDepartureTime = new GregorianCalendar();
|
||||
plannedDepartureTime.setTimeZone(timeZone());
|
||||
final Calendar predictedDepartureTime = new GregorianCalendar();
|
||||
predictedDepartureTime.setTimeZone(timeZone());
|
||||
|
||||
final List<Line> lines = new ArrayList<Line>(4);
|
||||
|
||||
XmlPullUtil.jumpToStartTag(pp, null, "itdServingLines");
|
||||
XmlPullUtil.require(pp, "itdServingLines");
|
||||
if (!pp.isEmptyElementTag())
|
||||
{
|
||||
XmlPullUtil.enter(pp, "itdServingLines");
|
||||
while (XmlPullUtil.test(pp, "itdServingLine"))
|
||||
{
|
||||
final String assignedStopId = pp.getAttributeValue(null, "assignedStopID");
|
||||
if (assignedStopId == null || Integer.parseInt(assignedStopId) == location.id)
|
||||
{
|
||||
final String destination = normalizeLocationName(pp.getAttributeValue(null, "direction"));
|
||||
final String destinationIdStr = pp.getAttributeValue(null, "destID");
|
||||
final int destinationId = destinationIdStr.length() > 0 ? Integer.parseInt(destinationIdStr) : 0;
|
||||
final String destination = normalizeLocationName(pp.getAttributeValue(null, "direction"));
|
||||
final String destinationIdStr = pp.getAttributeValue(null, "destID");
|
||||
final int destinationId = destinationIdStr.length() > 0 ? Integer.parseInt(destinationIdStr) : 0;
|
||||
|
||||
final String lineStr = processItdServingLine(pp);
|
||||
final Line line = new Line(lineStr, lineColors(lineStr), destinationId, destination);
|
||||
if (!lines.contains(line))
|
||||
lines.add(line);
|
||||
}
|
||||
final String lineStr = processItdServingLine(pp);
|
||||
final Line line = new Line(lineStr, lineColors(lineStr), destinationId, destination);
|
||||
|
||||
final List<Line> lines;
|
||||
if (assignedStopId == null)
|
||||
lines = result.stationDepartures.get(0).lines;
|
||||
else
|
||||
{
|
||||
XmlPullUtil.enter(pp, "itdServingLine");
|
||||
XmlPullUtil.exit(pp, "itdServingLine");
|
||||
}
|
||||
lines = findStationDepartures(result.stationDepartures, Integer.parseInt(assignedStopId)).lines;
|
||||
|
||||
if (!lines.contains(line))
|
||||
lines.add(line);
|
||||
}
|
||||
XmlPullUtil.exit(pp, "itdServingLines");
|
||||
}
|
||||
|
@ -907,50 +942,43 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
XmlPullUtil.next(pp);
|
||||
}
|
||||
|
||||
final List<Departure> departures = new ArrayList<Departure>(8);
|
||||
|
||||
XmlPullUtil.require(pp, "itdDepartureList");
|
||||
if (!pp.isEmptyElementTag())
|
||||
{
|
||||
XmlPullUtil.enter(pp, "itdDepartureList");
|
||||
while (XmlPullUtil.test(pp, "itdDeparture"))
|
||||
{
|
||||
if (XmlPullUtil.intAttr(pp, "stopID") == location.id)
|
||||
{
|
||||
final String position = normalizePlatform(pp.getAttributeValue(null, "platform"),
|
||||
pp.getAttributeValue(null, "platformName"));
|
||||
final int stopId = XmlPullUtil.intAttr(pp, "stopID");
|
||||
|
||||
XmlPullUtil.enter(pp, "itdDeparture");
|
||||
final String position = normalizePlatform(pp.getAttributeValue(null, "platform"), pp.getAttributeValue(null, "platformName"));
|
||||
|
||||
XmlPullUtil.require(pp, "itdDateTime");
|
||||
plannedDepartureTime.clear();
|
||||
processItdDateTime(pp, plannedDepartureTime);
|
||||
XmlPullUtil.enter(pp, "itdDeparture");
|
||||
|
||||
predictedDepartureTime.clear();
|
||||
if (XmlPullUtil.test(pp, "itdRTDateTime"))
|
||||
processItdDateTime(pp, predictedDepartureTime);
|
||||
XmlPullUtil.require(pp, "itdDateTime");
|
||||
plannedDepartureTime.clear();
|
||||
processItdDateTime(pp, plannedDepartureTime);
|
||||
|
||||
if (XmlPullUtil.test(pp, "itdFrequencyInfo"))
|
||||
XmlPullUtil.next(pp);
|
||||
predictedDepartureTime.clear();
|
||||
if (XmlPullUtil.test(pp, "itdRTDateTime"))
|
||||
processItdDateTime(pp, predictedDepartureTime);
|
||||
|
||||
XmlPullUtil.require(pp, "itdServingLine");
|
||||
final boolean isRealtime = pp.getAttributeValue(null, "realtime").equals("1");
|
||||
final String destination = normalizeLocationName(pp.getAttributeValue(null, "direction"));
|
||||
final int destinationId = Integer.parseInt(pp.getAttributeValue(null, "destID"));
|
||||
if (XmlPullUtil.test(pp, "itdFrequencyInfo"))
|
||||
XmlPullUtil.next(pp);
|
||||
|
||||
final String line = processItdServingLine(pp);
|
||||
XmlPullUtil.require(pp, "itdServingLine");
|
||||
final boolean isRealtime = pp.getAttributeValue(null, "realtime").equals("1");
|
||||
final String destination = normalizeLocationName(pp.getAttributeValue(null, "direction"));
|
||||
final int destinationId = Integer.parseInt(pp.getAttributeValue(null, "destID"));
|
||||
|
||||
if (isRealtime && !predictedDepartureTime.isSet(Calendar.HOUR_OF_DAY))
|
||||
predictedDepartureTime.setTimeInMillis(plannedDepartureTime.getTimeInMillis());
|
||||
final String line = processItdServingLine(pp);
|
||||
|
||||
departures.add(new Departure(plannedDepartureTime.getTime(),
|
||||
predictedDepartureTime.isSet(Calendar.HOUR_OF_DAY) ? predictedDepartureTime.getTime() : null, line,
|
||||
lineColors(line), null, position, destinationId, destination, null));
|
||||
}
|
||||
else
|
||||
{
|
||||
XmlPullUtil.enter(pp, "itdDeparture");
|
||||
}
|
||||
if (isRealtime && !predictedDepartureTime.isSet(Calendar.HOUR_OF_DAY))
|
||||
predictedDepartureTime.setTimeInMillis(plannedDepartureTime.getTimeInMillis());
|
||||
|
||||
final List<Departure> departures = findStationDepartures(result.stationDepartures, stopId).departures;
|
||||
departures.add(new Departure(plannedDepartureTime.getTime(),
|
||||
predictedDepartureTime.isSet(Calendar.HOUR_OF_DAY) ? predictedDepartureTime.getTime() : null, line, lineColors(line),
|
||||
null, position, destinationId, destination, null));
|
||||
|
||||
XmlPullUtil.exit(pp, "itdDeparture");
|
||||
}
|
||||
|
@ -958,8 +986,6 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
XmlPullUtil.exit(pp, "itdDepartureList");
|
||||
}
|
||||
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
result.stationDepartures.add(new StationDepartures(location, departures, lines));
|
||||
return result;
|
||||
}
|
||||
else if ("notidentified".equals(nameState))
|
||||
|
@ -982,6 +1008,15 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
}
|
||||
}
|
||||
|
||||
private StationDepartures findStationDepartures(final List<StationDepartures> stationDepartures, final int id)
|
||||
{
|
||||
for (final StationDepartures stationDeparture : stationDepartures)
|
||||
if (stationDeparture.location.id == id)
|
||||
return stationDeparture;
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
private void processItdDateTime(final XmlPullParser pp, final Calendar calendar) throws XmlPullParserException, IOException
|
||||
{
|
||||
XmlPullUtil.enter(pp);
|
||||
|
|
|
@ -452,7 +452,7 @@ public final class BahnProvider extends AbstractHafasProvider
|
|||
);
|
||||
private static final Pattern P_DEPARTURES_MESSAGES = Pattern.compile("<Err code=\"([^\"]*)\" text=\"([^\"]*)\"");
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -629,7 +629,7 @@ public final class BvgProvider extends AbstractHafasProvider
|
|||
private static final Pattern P_DEPARTURES_PLAN_ERRORS = Pattern.compile("(derzeit leider nicht bearbeitet werden)|(Wartungsarbeiten)|"
|
||||
+ "(http-equiv=\"refresh\")", Pattern.CASE_INSENSITIVE);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -185,7 +185,7 @@ public class InvgProvider extends AbstractHafasProvider
|
|||
+ "(?:<td class=\"center sepline top\">\n(" + ParserUtils.P_PLATFORM + ").*?)?" // position
|
||||
, Pattern.DOTALL);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -133,7 +133,7 @@ public class NasaProvider extends AbstractHafasProvider
|
|||
+ "(?:<td class=\"center sepline top\">\n(" + ParserUtils.P_PLATFORM + ").*?)?" // position
|
||||
, Pattern.DOTALL);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -128,10 +128,12 @@ public interface NetworkProvider
|
|||
* id of the station
|
||||
* @param maxDepartures
|
||||
* maximum number of departures to get or {@code 0}
|
||||
* @param equivs
|
||||
* also query equivalent stations?
|
||||
* @return result object containing the departures
|
||||
* @throws IOException
|
||||
*/
|
||||
QueryDeparturesResult queryDepartures(String stationId, int maxDepartures) throws IOException;
|
||||
QueryDeparturesResult queryDepartures(String stationId, int maxDepartures, boolean equivs) throws IOException;
|
||||
|
||||
/**
|
||||
* Get colors of line
|
||||
|
|
|
@ -107,7 +107,7 @@ public class NsProvider extends AbstractHafasProvider
|
|||
+ "(?:<span class=\"delay\">([+-]?\\d+|Ausfall)</span>\r\n)?" // delay
|
||||
, Pattern.DOTALL);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -529,7 +529,7 @@ public class OebbProvider extends AbstractHafasProvider
|
|||
|
||||
private static final Pattern P_DEPARTURES_ERROR = Pattern.compile("(Verbindung zum Server konnte leider nicht hergestellt werden)");
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -464,7 +464,7 @@ public class RmvProvider extends AbstractHafasProvider
|
|||
+ "(?:<img src=\".+?\" alt=\"\" />\n<b>[^<]*</b>\n<br />\n)*" // (messages)
|
||||
, Pattern.DOTALL);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -114,7 +114,7 @@ public class SbbProvider extends AbstractHafasProvider
|
|||
+ ".*?" //
|
||||
, Pattern.DOTALL);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -153,7 +153,7 @@ public class SeptaProvider extends AbstractHafasProvider
|
|||
+ "(?:<td class=\"center sepline top\">\n(" + ParserUtils.P_PLATFORM + ").*?)?" // position
|
||||
, Pattern.DOTALL);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -107,7 +107,7 @@ public class SncbProvider extends AbstractHafasProvider
|
|||
+ "(?:<span class=\"delay\">([+-]?\\d+|Ausfall)</span>\r\n)?" // delay
|
||||
, Pattern.DOTALL);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -132,7 +132,7 @@ public class VgsProvider extends AbstractHafasProvider
|
|||
+ "(?:<td class=\"center sepline top\">\n(" + ParserUtils.P_PLATFORM + ").*?)?" // position
|
||||
, Pattern.DOTALL);
|
||||
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures) throws IOException
|
||||
public QueryDeparturesResult queryDepartures(final String stationId, final int maxDepartures, final boolean equivs) throws IOException
|
||||
{
|
||||
final QueryDeparturesResult result = new QueryDeparturesResult();
|
||||
|
||||
|
|
|
@ -41,7 +41,7 @@ public class AtcProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("Bologna", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("Bologna", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class AvvProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("100", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("100", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class BahnProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("692991", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("692991", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class BvbProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("10000", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("10000", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -65,7 +65,7 @@ public class BvgProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("309557", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("309557", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class DingProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("Ulm", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("Ulm", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class InvgProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("80301", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("80301", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@ public class KvvProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("119", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("119", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -72,7 +72,7 @@ public class LinzProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("60501720", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("60501720", 0, false);
|
||||
System.out.println(result);
|
||||
}
|
||||
|
||||
|
|
|
@ -41,7 +41,7 @@ public class MariborProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("63203067", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("63203067", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class MetProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("10001167", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("10001167", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
package de.schildbach.pte.live;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
|
@ -27,6 +28,7 @@ import de.schildbach.pte.dto.Location;
|
|||
import de.schildbach.pte.dto.LocationType;
|
||||
import de.schildbach.pte.dto.NearbyStationsResult;
|
||||
import de.schildbach.pte.dto.QueryConnectionsResult;
|
||||
import de.schildbach.pte.dto.QueryDeparturesResult;
|
||||
|
||||
/**
|
||||
* @author Andreas Schildbach
|
||||
|
@ -36,6 +38,22 @@ public class MvvProviderLiveTest
|
|||
private MvvProvider provider = new MvvProvider();
|
||||
private static final String ALL_PRODUCTS = "IRSUTBFC";
|
||||
|
||||
@Test
|
||||
public void autocompleteIncomplete() throws Exception
|
||||
{
|
||||
final List<Location> autocompletes = provider.autocompleteStations("Marien");
|
||||
|
||||
list(autocompletes);
|
||||
}
|
||||
|
||||
private void list(final List<Location> autocompletes)
|
||||
{
|
||||
System.out.print(autocompletes.size() + " ");
|
||||
for (final Location autocomplete : autocompletes)
|
||||
System.out.print(autocomplete.toDebugString() + " ");
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void nearbyStation() throws Exception
|
||||
{
|
||||
|
@ -44,6 +62,14 @@ public class MvvProviderLiveTest
|
|||
System.out.println(result.stations.size() + " " + result.stations);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("2", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shortConnection() throws Exception
|
||||
{
|
||||
|
@ -96,8 +122,9 @@ public class MvvProviderLiveTest
|
|||
@Test
|
||||
public void connectionBetweenStationAndAddress() throws Exception
|
||||
{
|
||||
final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 1220, null, "Josephsburg"), null, new Location(
|
||||
LocationType.ADDRESS, 0, 48188018, 11574239, null, "München Frankfurter Ring 35"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL);
|
||||
final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 1220, null, "Josephsburg"), null,
|
||||
new Location(LocationType.ADDRESS, 0, 48188018, 11574239, null, "München Frankfurter Ring 35"), new Date(), true, ALL_PRODUCTS,
|
||||
WalkSpeed.NORMAL);
|
||||
System.out.println(result);
|
||||
final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context);
|
||||
System.out.println(moreResult);
|
||||
|
|
|
@ -41,7 +41,7 @@ public class NaldoProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("53019174", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("53019174", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class NasaProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("13000", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("13000", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ public class NsProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("100080", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("100080", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class RmvProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("3000001", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("3000001", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -65,7 +65,7 @@ public class SbbProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("8500010", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("8500010", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class SeptaProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("1000002", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("1000002", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class SfProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("10010813", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("10010813", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ public class SncbProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("100080", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("100080", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class StvProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("Graz", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("Graz", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class SvvProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("60650002", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("60650002", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@ public class TflProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("1000086", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("1000086", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class TlemProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("London", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("London", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class TlswProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("247616", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("247616", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class VblProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("717", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("717", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class VgsProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("8000244", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("8000244", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class VmsProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("Chemnitz", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("Chemnitz", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class VmvProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("6118", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("6118", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -84,7 +84,7 @@ public class VrnProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("6032236", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("6032236", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -76,7 +76,7 @@ public class VrrProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("1007258", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("1007258", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class VrtProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("17001301", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("17001301", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class VvmProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("3000510", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("3000510", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class VvoProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("100", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("100", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ public class VvsProviderLiveTest
|
|||
@Test
|
||||
public void queryDepartures() throws Exception
|
||||
{
|
||||
final QueryDeparturesResult result = provider.queryDepartures("6118", 0);
|
||||
final QueryDeparturesResult result = provider.queryDepartures("6118", 0, false);
|
||||
|
||||
System.out.println(result.stationDepartures);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue