From 7fa1afe4300ff1603861389a242dce1a5b224943 Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Thu, 10 Sep 2015 01:45:59 +0200 Subject: linked: work on github lid creation error handling --- .../ui/linked/LinkedIdCreateGithubFragment.java | 163 ++++++++++++++++----- 1 file changed, 125 insertions(+), 38 deletions(-) (limited to 'OpenKeychain/src/main/java/org') diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateGithubFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateGithubFragment.java index d1a39d7c3..f8f4a7020 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateGithubFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateGithubFragment.java @@ -26,6 +26,7 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.OutputStreamWriter; +import java.net.SocketTimeoutException; import java.net.URI; import java.net.URL; import java.util.Random; @@ -74,6 +75,8 @@ import org.sufficientlysecure.keychain.provider.KeychainContract.KeyRings; import org.sufficientlysecure.keychain.service.SaveKeyringParcel; import org.sufficientlysecure.keychain.ui.ViewKeyActivity; import org.sufficientlysecure.keychain.ui.base.CryptoOperationFragment; +import org.sufficientlysecure.keychain.ui.util.Notify; +import org.sufficientlysecure.keychain.ui.util.Notify.Style; import org.sufficientlysecure.keychain.ui.widget.StatusIndicator; import org.sufficientlysecure.keychain.ui.widget.StatusIndicator.Status; import org.sufficientlysecure.keychain.util.Log; @@ -172,10 +175,24 @@ public class LinkedIdCreateGithubFragment extends CryptoOperationFragment() { + + Exception mException; + @Override protected JSONObject doInBackground(Void... dummy) { try { @@ -199,13 +214,13 @@ public class LinkedIdCreateGithubFragment extends CryptoOperationFragment() { + + Exception mException; + @Override protected JSONObject doInBackground(Void... dummy) { try { @@ -264,8 +305,8 @@ public class LinkedIdCreateGithubFragment extends CryptoOperationFragment= Build.VERSION_CODES.LOLLIPOP) { - linkedItem.setTransitionName(resource.toUri().toString()); - } - - // we only need authorization for this one operation, drop it afterwards - revokeToken(accessToken); - - step3EditKey(resource); - + resource = GithubResource.create(uri); } catch (JSONException e) { setState(State.POST_ERROR); - e.printStackTrace(); + return; + } + + View linkedItem = mButtonContainer.getChildAt(2); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { + linkedItem.setTransitionName(resource.toUri().toString()); } + // we only need authorization for this one operation, drop it afterwards + revokeToken(accessToken); + + step3EditKey(resource); } + }.execute(); } @@ -402,6 +462,16 @@ public class LinkedIdCreateGithubFragment extends CryptoOperationFragment