aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
authorSammysHP <sven@sammyshp.de>2012-05-08 23:46:32 +0200
committerSamuel Tardieu <sam@rfc1149.net>2012-05-09 09:45:48 +0200
commit5faaca070124f3868e7b59f115c2b5a1863d17ed (patch)
tree6026cf6df990e17e2c8343468c9ab8bf2f96573b /main
parent6e52aa6e4518838f6708ed181824ee04ffd26e47 (diff)
downloadcgeo-5faaca070124f3868e7b59f115c2b5a1863d17ed.zip
cgeo-5faaca070124f3868e7b59f115c2b5a1863d17ed.tar.gz
cgeo-5faaca070124f3868e7b59f115c2b5a1863d17ed.tar.bz2
Refactoring: Move some strings into GCConstants
Fix: issue with gc.com update Tests are not green because mocked data was not updated. Conflicts (cherry-picking from master branch): main/src/cgeo/geocaching/cgBase.java main/src/cgeo/geocaching/cgCache.java
Diffstat (limited to 'main')
-rw-r--r--main/src/cgeo/geocaching/cgBase.java25
-rw-r--r--main/src/cgeo/geocaching/connector/gc/GCConstants.java11
2 files changed, 21 insertions, 15 deletions
diff --git a/main/src/cgeo/geocaching/cgBase.java b/main/src/cgeo/geocaching/cgBase.java
index 09e13b9..26d724a 100644
--- a/main/src/cgeo/geocaching/cgBase.java
+++ b/main/src/cgeo/geocaching/cgBase.java
@@ -400,31 +400,26 @@ public class cgBase {
final SearchResult searchResult = new SearchResult();
- if (page.contains("Cache is Unpublished") || page.contains("you cannot view this cache listing until it has been published")) {
- searchResult.error = StatusCode.UNPUBLISHED_CACHE;
+ if (page.contains(GCConstants.STRING_UNPUBLISHED_OTHER) || page.contains(GCConstants.STRING_UNPUBLISHED_OWNER)) {
+ searchResult.setError(StatusCode.UNPUBLISHED_CACHE);
return searchResult;
}
- if (page.contains("Sorry, the owner of this listing has made it viewable to Premium Members only.")) {
- searchResult.error = StatusCode.PREMIUM_ONLY;
- return searchResult;
- }
-
- if (page.contains("has chosen to make this cache listing visible to Premium Members only.")) {
- searchResult.error = StatusCode.PREMIUM_ONLY;
+ if (page.contains(GCConstants.STRING_PREMIUMONLY_1) || page.contains(GCConstants.STRING_PREMIUMONLY_2)) {
+ searchResult.setError(StatusCode.PREMIUM_ONLY);
return searchResult;
}
final String cacheName = Html.fromHtml(BaseUtils.getMatch(page, GCConstants.PATTERN_NAME, true, "")).toString();
- if ("An Error Has Occurred".equalsIgnoreCase(cacheName)) {
- searchResult.error = StatusCode.UNKNOWN_ERROR;
+ if (GCConstants.STRING_UNKNOWN_ERROR.equalsIgnoreCase(cacheName)) {
+ searchResult.setError(StatusCode.UNKNOWN_ERROR);
return searchResult;
}
final cgCache cache = new cgCache();
- cache.setDisabled(page.contains("<li>This cache is temporarily unavailable."));
+ cache.setDisabled(page.contains(GCConstants.STRING_DISABLED));
- cache.setArchived(page.contains("<li>This cache has been archived,"));
+ cache.setArchived(page.contains(GCConstants.STRING_ARCHIVED));
cache.setPremiumMembersOnly(BaseUtils.matches(page, GCConstants.PATTERN_PREMIUMMEMBERS));
@@ -452,7 +447,7 @@ public class cgBase {
String tableInside = page;
- int pos = tableInside.indexOf("id=\"cacheDetails\"");
+ int pos = tableInside.indexOf(GCConstants.STRING_CACHEDETAILS);
if (pos == -1) {
Log.e(Settings.tag, "cgeoBase.parseCache: ID \"cacheDetails\" not found on page");
return null;
@@ -460,7 +455,7 @@ public class cgBase {
tableInside = tableInside.substring(pos);
- pos = tableInside.indexOf("<div id=\"ctl00_ContentBody_CacheInformationTable\" class=\"CacheInformationTable\">");
+ pos = tableInside.indexOf(GCConstants.STRING_CACHEINFORMATIONTABLE);
if (pos == -1) {
Log.e(Settings.tag, "cgeoBase.parseCache: class \"CacheInformationTable\" not found on page");
return null;
diff --git a/main/src/cgeo/geocaching/connector/gc/GCConstants.java b/main/src/cgeo/geocaching/connector/gc/GCConstants.java
index 563cf4b..0edb0ef 100644
--- a/main/src/cgeo/geocaching/connector/gc/GCConstants.java
+++ b/main/src/cgeo/geocaching/connector/gc/GCConstants.java
@@ -151,6 +151,17 @@ public final class GCConstants {
/** Live Map since 14.02.2012 */
public final static Pattern PATTERN_USERSESSION = Pattern.compile("UserSession\\('([^']+)'");
public final static Pattern PATTERN_SESSIONTOKEN = Pattern.compile("sessionToken:'([^']+)'");
+
+ public final static String STRING_PREMIUMONLY_2 = "Sorry, the owner of this listing has made it viewable to Premium Members only.";
+ public final static String STRING_PREMIUMONLY_1 = "has chosen to make this cache listing visible to Premium Members only.";
+ public final static String STRING_UNPUBLISHED_OWNER = "Cache is Unpublished";
+ public final static String STRING_UNPUBLISHED_OTHER = "you cannot view this cache listing until it has been published";
+ public final static String STRING_UNKNOWN_ERROR = "An Error Has Occurred";
+ public final static String STRING_CACHEINFORMATIONTABLE = "<div id=\"ctl00_ContentBody_CacheInformationTable\" class=\"CacheInformationTable\">";
+ public final static String STRING_DISABLED = "<li>This cache is temporarily unavailable.";
+ public final static String STRING_ARCHIVED = "<li>This cache has been archived,";
+ public final static String STRING_CACHEDETAILS = "id=\"cacheDetails\"";
+
/** Number of logs to retrieve from GC.com */
public final static int NUMBER_OF_LOGS = 35;