mirror of
https://gitlab.com/oeffi/public-transport-enabler.git
synced 2025-07-10 20:58:47 +00:00
workaround for REQ0JourneyStops1.0ID parameter does not seem to exist
git-svn-id: https://public-transport-enabler.googlecode.com/svn/trunk@715 0924bc21-9374-b0fa-ee44-9ff1593b38f0
This commit is contained in:
parent
fc7dfcafe7
commit
8bea0851a6
2 changed files with 55 additions and 3 deletions
|
@ -23,6 +23,7 @@ import java.util.Calendar;
|
|||
import java.util.Date;
|
||||
import java.util.GregorianCalendar;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
|
@ -146,10 +147,36 @@ public final class BahnProvider extends AbstractHafasProvider
|
|||
|
||||
uri.append(API_BASE).append("query.exe/dox");
|
||||
uri.append("?REQ0HafasOptimize1=0:1");
|
||||
|
||||
uri.append("&REQ0JourneyStopsS0ID=").append(ParserUtils.urlEncode(locationId(from)));
|
||||
if (via != null)
|
||||
uri.append("&REQ0JourneyStops1.0ID=").append(ParserUtils.urlEncode(locationId(via)));
|
||||
uri.append("&REQ0JourneyStopsZ0ID=").append(ParserUtils.urlEncode(locationId(to)));
|
||||
|
||||
if (via != null)
|
||||
{
|
||||
// workaround, for there does not seem to be a REQ0JourneyStops1.0ID parameter
|
||||
|
||||
uri.append("&REQ0JourneyStops1.0A=").append(locationType(via));
|
||||
|
||||
if (via.type == LocationType.STATION && via.hasId() && isValidStationId(via.id))
|
||||
{
|
||||
uri.append("&REQ0JourneyStops1.0L=").append(via.id);
|
||||
}
|
||||
else if (via.hasLocation())
|
||||
{
|
||||
uri.append("&REQ0JourneyStops1.0X=").append(via.lon);
|
||||
uri.append("&REQ0JourneyStops1.0Y=").append(via.lat);
|
||||
if (via.name == null)
|
||||
uri.append("&REQ0JourneyStops1.0O=").append(
|
||||
ParserUtils.urlEncode(String.format(Locale.ENGLISH, "%.6f, %.6f", via.lat / 1E6, via.lon / 1E6)));
|
||||
}
|
||||
else if (via.name != null)
|
||||
{
|
||||
uri.append("&REQ0JourneyStops1.0G=").append(ParserUtils.urlEncode(via.name));
|
||||
if (via.type != LocationType.ANY)
|
||||
uri.append('!');
|
||||
}
|
||||
}
|
||||
|
||||
uri.append("&REQ0HafasSearchForw=").append(dep ? "1" : "0");
|
||||
uri.append("&REQ0JourneyDate=").append(
|
||||
String.format("%02d.%02d.%02d", c.get(Calendar.DAY_OF_MONTH), c.get(Calendar.MONTH) + 1, c.get(Calendar.YEAR) - 2000));
|
||||
|
|
|
@ -26,6 +26,7 @@ import java.util.GregorianCalendar;
|
|||
import java.util.HashMap;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
@ -440,8 +441,32 @@ public final class BvgProvider extends AbstractHafasProvider
|
|||
|
||||
uri.append("&REQ0JourneyStopsS0ID=").append(ParserUtils.urlEncode(locationId(from), URL_ENCODING));
|
||||
uri.append("&REQ0JourneyStopsZ0ID=").append(ParserUtils.urlEncode(locationId(to), URL_ENCODING));
|
||||
|
||||
if (via != null)
|
||||
uri.append("&REQ0JourneyStops1.0ID=").append(ParserUtils.urlEncode(locationId(via), URL_ENCODING));
|
||||
{
|
||||
// workaround, for there does not seem to be a REQ0JourneyStops1.0ID parameter
|
||||
|
||||
uri.append("&REQ0JourneyStops1.0A=").append(locationType(via));
|
||||
|
||||
if (via.type == LocationType.STATION && via.hasId() && isValidStationId(via.id))
|
||||
{
|
||||
uri.append("&REQ0JourneyStops1.0L=").append(via.id);
|
||||
}
|
||||
else if (via.hasLocation())
|
||||
{
|
||||
uri.append("&REQ0JourneyStops1.0X=").append(via.lon);
|
||||
uri.append("&REQ0JourneyStops1.0Y=").append(via.lat);
|
||||
if (via.name == null)
|
||||
uri.append("&REQ0JourneyStops1.0O=").append(
|
||||
ParserUtils.urlEncode(String.format(Locale.ENGLISH, "%.6f, %.6f", via.lat / 1E6, via.lon / 1E6), URL_ENCODING));
|
||||
}
|
||||
else if (via.name != null)
|
||||
{
|
||||
uri.append("&REQ0JourneyStops1.0G=").append(ParserUtils.urlEncode(via.name, URL_ENCODING));
|
||||
if (via.type != LocationType.ANY)
|
||||
uri.append('!');
|
||||
}
|
||||
}
|
||||
|
||||
uri.append("&REQ0HafasSearchForw=").append(dep ? "1" : "0");
|
||||
uri.append("&REQ0JourneyDate=").append(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue