diff --git a/enabler/src/de/schildbach/pte/AbstractHafasProvider.java b/enabler/src/de/schildbach/pte/AbstractHafasProvider.java index a10e875a..9ba3de45 100644 --- a/enabler/src/de/schildbach/pte/AbstractHafasProvider.java +++ b/enabler/src/de/schildbach/pte/AbstractHafasProvider.java @@ -839,9 +839,11 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider final Calendar c = new GregorianCalendar(timeZone()); c.setTime(date); - 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)); - uri.append("&REQ0JourneyTime=").append(String.format("%02d:%02d", c.get(Calendar.HOUR_OF_DAY), c.get(Calendar.MINUTE))); + uri.append("&REQ0JourneyDate="); + uri.append(String.format(Locale.ENGLISH, "%02d.%02d.%02d", c.get(Calendar.DAY_OF_MONTH), c.get(Calendar.MONTH) + 1, + c.get(Calendar.YEAR) - 2000)); + uri.append("&REQ0JourneyTime="); + uri.append(String.format(Locale.ENGLISH, "%02d:%02d", c.get(Calendar.HOUR_OF_DAY), c.get(Calendar.MINUTE))); final StringBuilder productsStr = new StringBuilder(numProductBits); if (products != null) @@ -937,9 +939,12 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider request.append(""); } request.append("").append(locationXml(to)).append(""); - request.append(""); + request.append(""); request.append(" autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/BvgProvider.java b/enabler/src/de/schildbach/pte/BvgProvider.java index fc525a17..79f4f33d 100644 --- a/enabler/src/de/schildbach/pte/BvgProvider.java +++ b/enabler/src/de/schildbach/pte/BvgProvider.java @@ -24,6 +24,7 @@ import java.util.Date; import java.util.GregorianCalendar; import java.util.HashMap; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.Set; import java.util.regex.Matcher; @@ -505,7 +506,7 @@ public final class BvgProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/DsbProvider.java b/enabler/src/de/schildbach/pte/DsbProvider.java index a0b0b3fd..95d00823 100644 --- a/enabler/src/de/schildbach/pte/DsbProvider.java +++ b/enabler/src/de/schildbach/pte/DsbProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; @@ -109,7 +110,7 @@ public class DsbProvider extends AbstractHafasProvider { if (location.hasLocation()) { - final StringBuilder uri = new StringBuilder(String.format(NEARBY_STATIONS_BY_COORDINATE_URI, location.lon, location.lat)); + final StringBuilder uri = new StringBuilder(String.format(Locale.ENGLISH, NEARBY_STATIONS_BY_COORDINATE_URI, location.lon, location.lat)); if (maxStations != 0) uri.append("&maxNumber=").append(maxStations); if (maxDistance != 0) @@ -157,7 +158,7 @@ public class DsbProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return xmlLocationList(uri); } diff --git a/enabler/src/de/schildbach/pte/EireannProvider.java b/enabler/src/de/schildbach/pte/EireannProvider.java index cfed35a2..aa6cf710 100644 --- a/enabler/src/de/schildbach/pte/EireannProvider.java +++ b/enabler/src/de/schildbach/pte/EireannProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -147,7 +148,7 @@ public class EireannProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/NriProvider.java b/enabler/src/de/schildbach/pte/NriProvider.java index 455ab15c..70b5ac01 100644 --- a/enabler/src/de/schildbach/pte/NriProvider.java +++ b/enabler/src/de/schildbach/pte/NriProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; @@ -181,7 +182,7 @@ public class NriProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/NsProvider.java b/enabler/src/de/schildbach/pte/NsProvider.java index 65e89163..dc90bf90 100644 --- a/enabler/src/de/schildbach/pte/NsProvider.java +++ b/enabler/src/de/schildbach/pte/NsProvider.java @@ -20,6 +20,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.Date; import java.util.List; +import java.util.Locale; import java.util.Set; import de.schildbach.pte.dto.Location; @@ -135,7 +136,7 @@ public class NsProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/OebbProvider.java b/enabler/src/de/schildbach/pte/OebbProvider.java index b57bfbe1..d45be4b0 100644 --- a/enabler/src/de/schildbach/pte/OebbProvider.java +++ b/enabler/src/de/schildbach/pte/OebbProvider.java @@ -20,6 +20,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.Date; import java.util.List; +import java.util.Locale; import java.util.Set; import de.schildbach.pte.dto.Location; @@ -192,7 +193,7 @@ public class OebbProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/RmvProvider.java b/enabler/src/de/schildbach/pte/RmvProvider.java index 45d14fe6..c3db824d 100644 --- a/enabler/src/de/schildbach/pte/RmvProvider.java +++ b/enabler/src/de/schildbach/pte/RmvProvider.java @@ -20,6 +20,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.Date; import java.util.List; +import java.util.Locale; import java.util.Set; import de.schildbach.pte.dto.Location; @@ -200,7 +201,7 @@ public class RmvProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), UTF_8)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), UTF_8)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/RtProvider.java b/enabler/src/de/schildbach/pte/RtProvider.java index 7e381631..4ecc5cfe 100644 --- a/enabler/src/de/schildbach/pte/RtProvider.java +++ b/enabler/src/de/schildbach/pte/RtProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; @@ -151,7 +152,7 @@ public class RtProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/SbbProvider.java b/enabler/src/de/schildbach/pte/SbbProvider.java index 8a7de36c..19462cd3 100644 --- a/enabler/src/de/schildbach/pte/SbbProvider.java +++ b/enabler/src/de/schildbach/pte/SbbProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; @@ -146,7 +147,7 @@ public class SbbProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/SeProvider.java b/enabler/src/de/schildbach/pte/SeProvider.java index c05b6d22..71740cfa 100644 --- a/enabler/src/de/schildbach/pte/SeProvider.java +++ b/enabler/src/de/schildbach/pte/SeProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -194,7 +195,7 @@ public class SeProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/SeptaProvider.java b/enabler/src/de/schildbach/pte/SeptaProvider.java index 4608737f..f2524476 100644 --- a/enabler/src/de/schildbach/pte/SeptaProvider.java +++ b/enabler/src/de/schildbach/pte/SeptaProvider.java @@ -23,6 +23,7 @@ import java.util.Calendar; import java.util.Collections; import java.util.GregorianCalendar; import java.util.List; +import java.util.Locale; import java.util.TimeZone; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -142,11 +143,11 @@ public class SeptaProvider extends AbstractHafasProvider uri.append(API_BASE).append("stboard.exe/en"); uri.append("?input=").append(stationId); uri.append("&boardType=dep"); - uri.append("&time=").append( - ParserUtils.urlEncode(String.format("%02d:%02d %s", now.get(Calendar.HOUR), now.get(Calendar.MINUTE), - now.get(Calendar.AM_PM) == Calendar.AM ? "am" : "pm"))); - uri.append("&date=").append( - String.format("%02d%02d%04d", now.get(Calendar.MONTH) + 1, now.get(Calendar.DAY_OF_MONTH), now.get(Calendar.YEAR))); + uri.append("&time="); + uri.append(ParserUtils.urlEncode(String.format(Locale.ENGLISH, "%02d:%02d %s", now.get(Calendar.HOUR), now.get(Calendar.MINUTE), + now.get(Calendar.AM_PM) == Calendar.AM ? "am" : "pm"))); + uri.append("&date="); + uri.append(String.format(Locale.ENGLISH, "%02d%02d%04d", now.get(Calendar.MONTH) + 1, now.get(Calendar.DAY_OF_MONTH), now.get(Calendar.YEAR))); uri.append("&productsFilter=").append(allProductsString()); if (maxDepartures != 0) uri.append("&maxJourneys=").append(maxDepartures); @@ -292,7 +293,7 @@ public class SeptaProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/SncbProvider.java b/enabler/src/de/schildbach/pte/SncbProvider.java index 355476ce..80d5d609 100644 --- a/enabler/src/de/schildbach/pte/SncbProvider.java +++ b/enabler/src/de/schildbach/pte/SncbProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; @@ -136,7 +137,7 @@ public class SncbProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/StockholmProvider.java b/enabler/src/de/schildbach/pte/StockholmProvider.java index 50924405..eb5cd2dd 100644 --- a/enabler/src/de/schildbach/pte/StockholmProvider.java +++ b/enabler/src/de/schildbach/pte/StockholmProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -181,7 +182,7 @@ public class StockholmProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/VbbProvider.java b/enabler/src/de/schildbach/pte/VbbProvider.java index e3319f64..76afe78f 100644 --- a/enabler/src/de/schildbach/pte/VbbProvider.java +++ b/enabler/src/de/schildbach/pte/VbbProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -188,7 +189,7 @@ public class VbbProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), UTF_8)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), UTF_8)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/VbnProvider.java b/enabler/src/de/schildbach/pte/VbnProvider.java index 6ad20b56..5cf9f192 100644 --- a/enabler/src/de/schildbach/pte/VbnProvider.java +++ b/enabler/src/de/schildbach/pte/VbnProvider.java @@ -19,6 +19,7 @@ package de.schildbach.pte; import java.io.IOException; import java.util.List; +import java.util.Locale; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; @@ -152,7 +153,7 @@ public class VbnProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); } diff --git a/enabler/src/de/schildbach/pte/VgsProvider.java b/enabler/src/de/schildbach/pte/VgsProvider.java index a96e1ace..bfc3c80f 100644 --- a/enabler/src/de/schildbach/pte/VgsProvider.java +++ b/enabler/src/de/schildbach/pte/VgsProvider.java @@ -23,6 +23,7 @@ import java.util.Calendar; import java.util.Collections; import java.util.GregorianCalendar; import java.util.List; +import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -303,7 +304,7 @@ public class VgsProvider extends AbstractHafasProvider public List autocompleteStations(final CharSequence constraint) throws IOException { - final String uri = String.format(AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); + final String uri = String.format(Locale.ENGLISH, AUTOCOMPLETE_URI, ParserUtils.urlEncode(constraint.toString(), ISO_8859_1)); return jsonGetStops(uri); }