aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
authorBananeweizen <bananeweizen@gmx.de>2015-02-13 23:10:47 +0100
committerBananeweizen <bananeweizen@gmx.de>2015-02-13 23:10:47 +0100
commit0b77441d721dbd444c0a4675978fecf753ad79f6 (patch)
tree281dc5950ab800412e36c23f619d09554d59c5ab /main
parent1d9a1922ca9ab563d686150ca20a153b20a378d7 (diff)
downloadcgeo-0b77441d721dbd444c0a4675978fecf753ad79f6.zip
cgeo-0b77441d721dbd444c0a4675978fecf753ad79f6.tar.gz
cgeo-0b77441d721dbd444c0a4675978fecf753ad79f6.tar.bz2
some more connector tests
Diffstat (limited to 'main')
-rw-r--r--main/src/cgeo/geocaching/connector/WaymarkingConnector.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/main/src/cgeo/geocaching/connector/WaymarkingConnector.java b/main/src/cgeo/geocaching/connector/WaymarkingConnector.java
index 5a6f362..3361341 100644
--- a/main/src/cgeo/geocaching/connector/WaymarkingConnector.java
+++ b/main/src/cgeo/geocaching/connector/WaymarkingConnector.java
@@ -4,6 +4,7 @@ import cgeo.geocaching.Geocache;
import org.apache.commons.lang3.StringUtils;
import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
class WaymarkingConnector extends AbstractConnector {
@@ -41,4 +42,20 @@ class WaymarkingConnector extends AbstractConnector {
public boolean canHandle(@NonNull final String geocode) {
return StringUtils.startsWith(geocode, "WM");
}
+
+ @Override
+ @Nullable
+ public String getGeocodeFromUrl(@NonNull final String url) {
+ // coord.info URLs
+ String code = StringUtils.substringAfterLast(url, "coord.info/");
+ if (code != null && canHandle(code)) {
+ return code;
+ }
+ // waymarking URLs http://www.waymarking.com/waymarks/WMNCDT_American_Legion_Flagpole_1983_University_of_Oregon
+ code = StringUtils.substringBetween(url, "waymarks/", "_");
+ if (code != null && canHandle(code)) {
+ return code;
+ }
+ return null;
+ }
}