diff options
author | Bananeweizen <bananeweizen@gmx.de> | 2015-02-13 23:10:47 +0100 |
---|---|---|
committer | Bananeweizen <bananeweizen@gmx.de> | 2015-02-13 23:10:47 +0100 |
commit | 0b77441d721dbd444c0a4675978fecf753ad79f6 (patch) | |
tree | 281dc5950ab800412e36c23f619d09554d59c5ab /main | |
parent | 1d9a1922ca9ab563d686150ca20a153b20a378d7 (diff) | |
download | cgeo-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.java | 17 |
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; + } } |