aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui
diff options
context:
space:
mode:
authorDominik Schürmann <dominik@dominikschuermann.de>2014-04-08 23:41:21 +0200
committerDominik Schürmann <dominik@dominikschuermann.de>2014-04-08 23:41:21 +0200
commit8ab9a0a2d0add6fd33d2d3102d692f31844d38a4 (patch)
treeb885227a7badec825f6fef0ac819bb2a84e457b8 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui
parentd81de8509be0f37a1c1d75204d1431cb8e92a1c5 (diff)
downloadopen-keychain-8ab9a0a2d0add6fd33d2d3102d692f31844d38a4.tar.gz
open-keychain-8ab9a0a2d0add6fd33d2d3102d692f31844d38a4.tar.bz2
open-keychain-8ab9a0a2d0add6fd33d2d3102d692f31844d38a4.zip
Use NotFoundException in more places
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CertifyKeyActivity.java21
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java7
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptAsymmetricFragment.java12
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewCertActivity.java18
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivityJB.java3
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/PassphraseDialogFragment.java17
6 files changed, 46 insertions, 32 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CertifyKeyActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CertifyKeyActivity.java
index de8a9cd6d..e2e09f052 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CertifyKeyActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CertifyKeyActivity.java
@@ -224,8 +224,9 @@ public class CertifyKeyActivity extends ActionBarActivity implements
* handles the UI bits of the signing process on the UI thread
*/
private void initiateSigning() {
- PGPPublicKeyRing pubring = ProviderHelper.getPGPPublicKeyRing(this, mPubKeyId);
- if (pubring != null) {
+ try {
+ PGPPublicKeyRing pubring = ProviderHelper.getPGPPublicKeyRing(this, mPubKeyId);
+
// if we have already signed this key, dont bother doing it again
boolean alreadySigned = false;
@@ -248,14 +249,14 @@ public class CertifyKeyActivity extends ActionBarActivity implements
String passphrase = PassphraseCacheService.getCachedPassphrase(this, mMasterKeyId);
if (passphrase == null) {
PassphraseDialogFragment.show(this, mMasterKeyId,
- new Handler() {
- @Override
- public void handleMessage(Message message) {
- if (message.what == PassphraseDialogFragment.MESSAGE_OKAY) {
- startSigning();
+ new Handler() {
+ @Override
+ public void handleMessage(Message message) {
+ if (message.what == PassphraseDialogFragment.MESSAGE_OKAY) {
+ startSigning();
+ }
}
- }
- });
+ });
// bail out; need to wait until the user has entered the passphrase before trying again
return;
} else {
@@ -268,6 +269,8 @@ public class CertifyKeyActivity extends ActionBarActivity implements
setResult(RESULT_CANCELED);
finish();
}
+ } catch (ProviderHelper.NotFoundException e) {
+ Log.e(Constants.TAG, "key not found!", e);
}
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java
index cfb7c56c2..4e21b172e 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java
@@ -300,15 +300,16 @@ public class EditKeyActivity extends ActionBarActivity implements EditorListener
private void finallyEdit(final long masterKeyId) {
if (masterKeyId != 0) {
PGPSecretKey masterKey = null;
- mKeyRing = ProviderHelper.getPGPSecretKeyRing(this, masterKeyId);
- if (mKeyRing != null) {
+ try {
+ mKeyRing = ProviderHelper.getPGPSecretKeyRing(this, masterKeyId);
+
masterKey = mKeyRing.getSecretKey();
mMasterCanSign = PgpKeyHelper.isCertificationKey(mKeyRing.getSecretKey());
for (PGPSecretKey key : new IterableIterator<PGPSecretKey>(mKeyRing.getSecretKeys())) {
mKeys.add(key);
mKeysUsages.add(-1); // get usage when view is created
}
- } else {
+ } catch (ProviderHelper.NotFoundException e) {
Log.e(Constants.TAG, "Keyring not found with masterKeyId: " + masterKeyId);
AppMsg.makeText(this, R.string.error_no_secret_key_found, AppMsg.STYLE_ALERT).show();
// TODO
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptAsymmetricFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptAsymmetricFragment.java
index 7fcb9a552..2ec4dd89e 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptAsymmetricFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptAsymmetricFragment.java
@@ -146,17 +146,19 @@ public class EncryptAsymmetricFragment extends Fragment {
private void preselectKeys(long preselectedSignatureKeyId, long[] preselectedEncryptionKeyIds) {
if (preselectedSignatureKeyId != 0) {
// TODO: don't use bouncy castle objects!
- PGPSecretKeyRing keyRing = ProviderHelper.getPGPSecretKeyRingWithKeyId(getActivity(),
- preselectedSignatureKeyId);
- PGPSecretKey masterKey;
- if (keyRing != null) {
- masterKey = keyRing.getSecretKey();
+ try {
+ PGPSecretKeyRing keyRing = ProviderHelper.getPGPSecretKeyRingWithKeyId(getActivity(),
+ preselectedSignatureKeyId);
+
+ PGPSecretKey masterKey = keyRing.getSecretKey();
if (masterKey != null) {
Vector<PGPSecretKey> signKeys = PgpKeyHelper.getUsableSigningKeys(keyRing);
if (signKeys.size() > 0) {
setSignatureKeyId(masterKey.getKeyID());
}
}
+ } catch (ProviderHelper.NotFoundException e) {
+ Log.e(Constants.TAG, "key not found!", e);
}
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewCertActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewCertActivity.java
index 92e171130..0dc36a792 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewCertActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewCertActivity.java
@@ -145,14 +145,14 @@ public class ViewCertActivity extends ActionBarActivity
}
PGPSignature sig = PgpConversionHelper.BytesToPGPSignature(data.getBlob(INDEX_DATA));
- PGPKeyRing signeeRing = ProviderHelper.getPGPKeyRing(this,
- KeychainContract.KeyRingData.buildPublicKeyRingUri(
- Long.toString(data.getLong(INDEX_MASTER_KEY_ID))));
- PGPKeyRing signerRing = ProviderHelper.getPGPKeyRing(this,
- KeychainContract.KeyRingData.buildPublicKeyRingUri(
- Long.toString(sig.getKeyID())));
-
- if (signerRing != null) {
+ try {
+ PGPKeyRing signeeRing = ProviderHelper.getPGPKeyRing(this,
+ KeychainContract.KeyRingData.buildPublicKeyRingUri(
+ Long.toString(data.getLong(INDEX_MASTER_KEY_ID))));
+ PGPKeyRing signerRing = ProviderHelper.getPGPKeyRing(this,
+ KeychainContract.KeyRingData.buildPublicKeyRingUri(
+ Long.toString(sig.getKeyID())));
+
try {
sig.init(new JcaPGPContentVerifierBuilderProvider().setProvider(
Constants.BOUNCY_CASTLE_PROVIDER_NAME), signeeRing.getPublicKey());
@@ -170,7 +170,7 @@ public class ViewCertActivity extends ActionBarActivity
mStatus.setText("error!");
mStatus.setTextColor(getResources().getColor(R.color.alert));
}
- } else {
+ } catch (ProviderHelper.NotFoundException e) {
mStatus.setText("key unavailable");
mStatus.setTextColor(getResources().getColor(R.color.black));
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivityJB.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivityJB.java
index 6dc0413bb..6f52ea916 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivityJB.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivityJB.java
@@ -93,6 +93,9 @@ public class ViewKeyActivityJB extends ViewKeyActivity implements CreateNdefMess
} catch(IOException e) {
Log.e(Constants.TAG, "Error parsing keyring", e);
return null;
+ } catch (ProviderHelper.NotFoundException e) {
+ Log.e(Constants.TAG, "key not found!", e);
+ return null;
}
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/PassphraseDialogFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/PassphraseDialogFragment.java
index a3feab959..74bc73952 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/PassphraseDialogFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/PassphraseDialogFragment.java
@@ -139,9 +139,9 @@ public class PassphraseDialogFragment extends DialogFragment implements OnEditor
secretKey = null;
alert.setMessage(R.string.passphrase_for_symmetric_encryption);
} else {
- secretKey = ProviderHelper.getPGPSecretKeyRing(activity, secretKeyId).getSecretKey();
-
- if (secretKey == null) {
+ try {
+ secretKey = ProviderHelper.getPGPSecretKeyRing(activity, secretKeyId).getSecretKey();
+ } catch (ProviderHelper.NotFoundException e) {
alert.setTitle(R.string.title_key_not_found);
alert.setMessage(getString(R.string.key_not_found, secretKeyId));
alert.setPositiveButton(android.R.string.ok, new OnClickListener() {
@@ -153,6 +153,7 @@ public class PassphraseDialogFragment extends DialogFragment implements OnEditor
mCanKB = false;
return alert.create();
}
+
String userId = PgpKeyHelper.getMainUserIdSafe(activity, secretKey);
Log.d(Constants.TAG, "User id: '" + userId + "'");
@@ -194,9 +195,13 @@ public class PassphraseDialogFragment extends DialogFragment implements OnEditor
sendMessageToHandler(MESSAGE_CANCEL);
return;
} else {
- clickSecretKey = PgpKeyHelper.getKeyNum(ProviderHelper
- .getPGPSecretKeyRingWithKeyId(activity, secretKeyId),
- curKeyIndex);
+ try {
+ clickSecretKey = PgpKeyHelper.getKeyNum(ProviderHelper
+ .getPGPSecretKeyRingWithKeyId(activity, secretKeyId),
+ curKeyIndex);
+ } catch (ProviderHelper.NotFoundException e) {
+ Log.e(Constants.TAG, "key not found!", e);
+ }
curKeyIndex++; // does post-increment work like C?
continue;
}