From 094fb698deca4aa269a754e89acacde2f339a97f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Sch=C3=BCrmann?= Date: Fri, 11 Apr 2014 17:45:52 +0200 Subject: Refactor ProviderHelper to be non-static using a constructor based on context (first commit to get context out of pgp classes) --- .../keychain/ui/EncryptAsymmetricFragment.java | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptAsymmetricFragment.java') 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 a276b6382..e8e5b14bc 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptAsymmetricFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptAsymmetricFragment.java @@ -53,6 +53,8 @@ public class EncryptAsymmetricFragment extends Fragment { public static final int RESULT_CODE_PUBLIC_KEYS = 0x00007001; public static final int RESULT_CODE_SECRET_KEYS = 0x00007002; + ProviderHelper mProviderHelper; + OnAsymmetricKeySelection mKeySelectionListener; // view @@ -133,8 +135,10 @@ public class EncryptAsymmetricFragment extends Fragment { long signatureKeyId = getArguments().getLong(ARG_SIGNATURE_KEY_ID); long[] encryptionKeyIds = getArguments().getLongArray(ARG_ENCRYPTION_KEY_IDS); + mProviderHelper = new ProviderHelper(getActivity()); + // preselect keys given by arguments (given by Intent to EncryptActivity) - preselectKeys(signatureKeyId, encryptionKeyIds); + preselectKeys(signatureKeyId, encryptionKeyIds, mProviderHelper); } /** @@ -143,11 +147,12 @@ public class EncryptAsymmetricFragment extends Fragment { * @param preselectedSignatureKeyId * @param preselectedEncryptionKeyIds */ - private void preselectKeys(long preselectedSignatureKeyId, long[] preselectedEncryptionKeyIds) { + private void preselectKeys(long preselectedSignatureKeyId, long[] preselectedEncryptionKeyIds, + ProviderHelper providerHelper) { if (preselectedSignatureKeyId != 0) { // TODO: don't use bouncy castle objects! try { - PGPSecretKeyRing keyRing = ProviderHelper.getPGPSecretKeyRingWithKeyId(getActivity(), + PGPSecretKeyRing keyRing = providerHelper.getPGPSecretKeyRingWithKeyId( preselectedSignatureKeyId); PGPSecretKey masterKey = keyRing.getSecretKey(); @@ -167,7 +172,7 @@ public class EncryptAsymmetricFragment extends Fragment { for (int i = 0; i < preselectedEncryptionKeyIds.length; ++i) { // TODO One query per selected key?! wtf try { - long id = ProviderHelper.getMasterKeyId(getActivity(), + long id = providerHelper.getMasterKeyId( KeyRings.buildUnifiedKeyRingsFindBySubkeyUri( Long.toString(preselectedEncryptionKeyIds[i])) ); @@ -201,8 +206,8 @@ public class EncryptAsymmetricFragment extends Fragment { mMainUserIdRest.setText(""); } else { // See if we can get a user_id from a unified query - String userIdResult = (String) ProviderHelper.getUnifiedData( - getActivity(), mSecretKeyId, KeyRings.USER_ID, ProviderHelper.FIELD_TYPE_STRING); + String userIdResult = (String) mProviderHelper.getUnifiedData( + mSecretKeyId, KeyRings.USER_ID, ProviderHelper.FIELD_TYPE_STRING); String[] userId = PgpKeyHelper.splitUserId(userIdResult); if (userId[0] != null) { mMainUserId.setText(userId[0]); -- cgit v1.2.3