diff options
author | jcardus <joaquim.cardeira@gmail.com> | 2020-01-21 18:24:03 +0000 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2020-01-21 10:24:03 -0800 |
commit | 0c40b37a389ae681152f320e47731ee3012f17eb (patch) | |
tree | 0218c165eb05dd03ece2d075b94998e2a93d32c4 /src | |
parent | df740ef9d1f2c339f4ffb0bf96f4a418065c72c8 (diff) | |
download | traccar-server-0c40b37a389ae681152f320e47731ee3012f17eb.tar.gz traccar-server-0c40b37a389ae681152f320e47731ee3012f17eb.tar.bz2 traccar-server-0c40b37a389ae681152f320e47731ee3012f17eb.zip |
Here geocoder url config parameter (#4472)
* here geocoder url config parameter
* here geocoder url config parameter
* added new parameter apiKey and kept app_code for retro compatibility
added default url for here
* fixed ident
removed url from here geocode test
* fixed ident
intellij uses 2 spaces, this project uses 4.
* fixed ident
intellij uses 2 spaces, this project uses 4.
* url should be null not ""
* wrong file
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/org/traccar/MainModule.java | 2 | ||||
-rw-r--r-- | src/main/java/org/traccar/geocoder/HereGeocoder.java | 12 | ||||
-rw-r--r-- | src/test/java/org/traccar/geocoder/GeocoderTest.java | 2 |
3 files changed, 10 insertions, 6 deletions
diff --git a/src/main/java/org/traccar/MainModule.java b/src/main/java/org/traccar/MainModule.java index 9adea61b0..0957d9fe3 100644 --- a/src/main/java/org/traccar/MainModule.java +++ b/src/main/java/org/traccar/MainModule.java @@ -170,7 +170,7 @@ public class MainModule extends AbstractModule { case "ban": return new BanGeocoder(cacheSize, addressFormat); case "here": - return new HereGeocoder(id, key, language, cacheSize, addressFormat); + return new HereGeocoder(url, id, key, language, cacheSize, addressFormat); case "mapmyindia": return new MapmyIndiaGeocoder(url, key, cacheSize, addressFormat); default: diff --git a/src/main/java/org/traccar/geocoder/HereGeocoder.java b/src/main/java/org/traccar/geocoder/HereGeocoder.java index 756260b52..aaf11d74d 100644 --- a/src/main/java/org/traccar/geocoder/HereGeocoder.java +++ b/src/main/java/org/traccar/geocoder/HereGeocoder.java @@ -19,20 +19,24 @@ import javax.json.JsonObject; public class HereGeocoder extends JsonGeocoder { - private static String formatUrl(String id, String key, String language) { - String url = "https://reverse.geocoder.api.here.com/6.2/reversegeocode.json"; + private static String formatUrl(String url, String id, String key, String language) { + if (url == null) { + url = "https://reverse.geocoder.ls.hereapi.com/6.2/reversegeocode.json"; + } url += "?mode=retrieveAddresses&maxresults=1"; url += "&prox=%f,%f,0"; url += "&app_id=" + id; url += "&app_code=" + key; + url += "&apiKey=" + key; if (language != null) { url += "&language=" + language; } return url; } - public HereGeocoder(String id, String key, String language, int cacheSize, AddressFormat addressFormat) { - super(formatUrl(id, key, language), cacheSize, addressFormat); + public HereGeocoder( + String url, String id, String key, String language, int cacheSize, AddressFormat addressFormat) { + super(formatUrl(url, id, key, language), cacheSize, addressFormat); } @Override diff --git a/src/test/java/org/traccar/geocoder/GeocoderTest.java b/src/test/java/org/traccar/geocoder/GeocoderTest.java index 85d9bf62f..9f59d0b23 100644 --- a/src/test/java/org/traccar/geocoder/GeocoderTest.java +++ b/src/test/java/org/traccar/geocoder/GeocoderTest.java @@ -73,7 +73,7 @@ public class GeocoderTest { @Ignore @Test public void testHere() { - Geocoder geocoder = new HereGeocoder("", "", null, 0, new AddressFormat()); + Geocoder geocoder = new HereGeocoder(null, "", "", null, 0, new AddressFormat()); String address = geocoder.getAddress(48.8575, 2.2944, null); assertEquals("6 Avenue Gustave Eiffel, Paris, Île-de-France, FRA", address); } |