diff options
| author | rsudev <rasch@munin-soft.de> | 2014-02-22 23:03:45 +0100 |
|---|---|---|
| committer | rsudev <rasch@munin-soft.de> | 2014-02-22 23:03:45 +0100 |
| commit | c841050d5797082b5531e0ef9dc8e2dd5cba7386 (patch) | |
| tree | aa07fdf891a3bc946341c7beada1871f0d018820 /main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java | |
| parent | 0fef0fb52b537065cfe3561628c58ad74b5336b3 (diff) | |
| download | cgeo-c841050d5797082b5531e0ef9dc8e2dd5cba7386.zip cgeo-c841050d5797082b5531e0ef9dc8e2dd5cba7386.tar.gz cgeo-c841050d5797082b5531e0ef9dc8e2dd5cba7386.tar.bz2 | |
Finally fixes #3267, Detect and report time-skew that prevents okapi access
Extended the OAuth process to allow specific additional error reporting
Diffstat (limited to 'main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java')
| -rw-r--r-- | main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java b/main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java index c082bac..19f4447 100644 --- a/main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java +++ b/main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java @@ -2,9 +2,13 @@ package cgeo.geocaching.connector.oc; import cgeo.geocaching.CgeoApplication; import cgeo.geocaching.R; +import cgeo.geocaching.connector.oc.OkapiError.OkapiErrors; import cgeo.geocaching.network.OAuthAuthorizationActivity; import cgeo.geocaching.settings.Settings; +import ch.boye.httpclientandroidlib.HttpResponse; + +import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.tuple.ImmutablePair; import org.eclipse.jdt.annotation.Nullable; @@ -52,4 +56,16 @@ public abstract class OCAuthorizationActivity extends OAuthAuthorizationActivity return res.getString(R.string.auth_dialog_completed_oc, getAuthTitle()); } + /** + * Return an extended error in case of an invalid time stamp + */ + @Override + protected String getExtendedErrorMsg(HttpResponse response) { + OkapiError error = OkapiClient.decodeErrorResponse(response); + if (error.getResult() == OkapiErrors.INVALID_TIMESTAMP) { + return res.getString(R.string.init_login_popup_invalid_timestamp); + } + return StringUtils.EMPTY; + } + } |
