aboutsummaryrefslogtreecommitdiffstats
path: root/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/provider
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2014-03-11 03:19:12 +0100
committerVincent Breitmoser <valodim@mugenguild.com>2014-03-11 03:19:12 +0100
commit3ed93b767143909c2ebf275047d38f06a18c2629 (patch)
tree8af0ebf9194216a71a33e3614c1defc2fcba3412 /OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/provider
parent8b4a63d5c445abadb83d041490283d05070ff955 (diff)
downloadopen-keychain-3ed93b767143909c2ebf275047d38f06a18c2629.tar.gz
open-keychain-3ed93b767143909c2ebf275047d38f06a18c2629.tar.bz2
open-keychain-3ed93b767143909c2ebf275047d38f06a18c2629.zip
add "show unknown signatures" button
Diffstat (limited to 'OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/provider')
-rw-r--r--OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainProvider.java13
1 files changed, 9 insertions, 4 deletions
diff --git a/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainProvider.java b/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainProvider.java
index e582ec559..765bd1c44 100644
--- a/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainProvider.java
+++ b/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainProvider.java
@@ -88,7 +88,8 @@ public class KeychainProvider extends ContentProvider {
private static final int CERTS_BY_KEY_ID = 402;
private static final int CERTS_BY_ROW_ID = 403;
private static final int CERTS_BY_KEY_ROW_ID = 404;
- private static final int CERTS_BY_CERTIFIER_ID = 405;
+ private static final int CERTS_BY_KEY_ROW_ID_ALL = 405;
+ private static final int CERTS_BY_CERTIFIER_ID = 406;
// private static final int DATA_STREAM = 401;
@@ -257,6 +258,8 @@ public class KeychainProvider extends ContentProvider {
matcher.addURI(authority, KeychainContract.BASE_CERTS + "/"
+ KeychainContract.PATH_BY_KEY_ROW_ID + "/#", CERTS_BY_KEY_ROW_ID);
matcher.addURI(authority, KeychainContract.BASE_CERTS + "/"
+ + KeychainContract.PATH_BY_KEY_ROW_ID + "/#/all", CERTS_BY_KEY_ROW_ID_ALL);
+ matcher.addURI(authority, KeychainContract.BASE_CERTS + "/"
+ KeychainContract.PATH_BY_KEY_ID + "/#", CERTS_BY_KEY_ID);
matcher.addURI(authority, KeychainContract.BASE_CERTS + "/"
+ KeychainContract.PATH_BY_CERTIFIER_ID + "/#", CERTS_BY_CERTIFIER_ID);
@@ -717,6 +720,7 @@ public class KeychainProvider extends ContentProvider {
break;
case CERTS_BY_KEY_ROW_ID:
+ case CERTS_BY_KEY_ROW_ID_ALL:
qb.setTables(Tables.CERTS
+ " JOIN " + Tables.USER_IDS + " ON ("
+ Tables.CERTS + "." + Certs.KEY_RING_ROW_ID + " = "
@@ -725,9 +729,10 @@ public class KeychainProvider extends ContentProvider {
+ Tables.CERTS + "." + Certs.RANK + " = "
+ Tables.USER_IDS + "." + UserIds.RANK
// noooooooot sure about this~ database design
- + ") LEFT JOIN " + Tables.KEYS + " ON ("
- + Tables.CERTS + "." + Certs.KEY_ID_CERTIFIER + " = "
- + Tables.KEYS + "." + Keys.KEY_ID
+ + ")" + (match == CERTS_BY_KEY_ROW_ID_ALL ? " LEFT" : "")
+ + " JOIN " + Tables.KEYS + " ON ("
+ + Tables.CERTS + "." + Certs.KEY_ID_CERTIFIER + " = "
+ + Tables.KEYS + "." + Keys.KEY_ID
+ ") LEFT JOIN " + Tables.USER_IDS + " AS signer ON ("
+ Tables.KEYS + "." + Keys.KEY_RING_ROW_ID + " = "
+ "signer." + UserIds.KEY_RING_ROW_ID