aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2015-03-05 13:13:43 +0100
committerVincent Breitmoser <valodim@mugenguild.com>2015-03-05 13:13:43 +0100
commit5d2c81d715cf1fd9ff23a8d1aa43fcfb58f7d099 (patch)
tree004c1cb4147e63b5d8096d637e3ab0f1d97c3463 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp
parent7b3bc4ca98c2be52bec996287c5997c3c52e3603 (diff)
downloadopen-keychain-5d2c81d715cf1fd9ff23a8d1aa43fcfb58f7d099.tar.gz
open-keychain-5d2c81d715cf1fd9ff23a8d1aa43fcfb58f7d099.tar.bz2
open-keychain-5d2c81d715cf1fd9ff23a8d1aa43fcfb58f7d099.zip
make linked identity list homogeneous
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedCookieResource.java4
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedIdentity.java18
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedResource.java17
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/RawLinkedIdentity.java16
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/DnsResource.java17
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/GenericHttpsResource.java17
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/TwitterResource.java20
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/UnknownResource.java21
8 files changed, 102 insertions, 28 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedCookieResource.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedCookieResource.java
index b21f482b7..4b01d8135 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedCookieResource.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedCookieResource.java
@@ -6,18 +6,14 @@ import org.sufficientlysecure.keychain.Constants;
import org.sufficientlysecure.keychain.operations.results.LinkedVerifyResult;
import org.sufficientlysecure.keychain.operations.results.OperationResult.LogType;
import org.sufficientlysecure.keychain.operations.results.OperationResult.OperationLog;
-import org.sufficientlysecure.keychain.pgp.linked.resources.GenericHttpsResource;
-import org.sufficientlysecure.keychain.pgp.linked.resources.UnknownResource;
import org.sufficientlysecure.keychain.ui.util.KeyFormattingUtils;
import org.sufficientlysecure.keychain.util.Log;
import java.net.URI;
import java.util.HashMap;
-import java.util.HashSet;
import java.util.Map.Entry;
import java.util.Set;
import java.util.regex.Matcher;
-import java.util.regex.Pattern;
public abstract class LinkedCookieResource extends LinkedResource {
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedIdentity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedIdentity.java
index f06a23681..35813b8b3 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedIdentity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedIdentity.java
@@ -3,6 +3,7 @@ package org.sufficientlysecure.keychain.pgp.linked;
import org.spongycastle.bcpg.UserAttributeSubpacket;
import org.spongycastle.util.Strings;
import org.sufficientlysecure.keychain.Constants;
+import org.sufficientlysecure.keychain.R;
import org.sufficientlysecure.keychain.pgp.WrappedUserAttribute;
import org.sufficientlysecure.keychain.util.Log;
@@ -11,6 +12,10 @@ import java.net.URI;
import java.nio.ByteBuffer;
import java.util.Arrays;
+import android.content.Context;
+import android.support.annotation.DrawableRes;
+
+
public class LinkedIdentity extends RawLinkedIdentity {
public final LinkedResource mResource;
@@ -72,4 +77,17 @@ public class LinkedIdentity extends RawLinkedIdentity {
return new RawLinkedIdentity(nonce, res.toUri());
}
+
+ public @DrawableRes int getDisplayIcon() {
+ return mResource.getDisplayIcon();
+ }
+
+ public String getDisplayTitle(Context context) {
+ return mResource.getDisplayTitle(context);
+ }
+
+ public String getDisplayComment(Context context) {
+ return mResource.getDisplayComment(context);
+ }
+
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedResource.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedResource.java
index 59ffbfc45..28f40f0d7 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedResource.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/LinkedResource.java
@@ -3,7 +3,7 @@ package org.sufficientlysecure.keychain.pgp.linked;
import org.sufficientlysecure.keychain.Constants;
import org.sufficientlysecure.keychain.pgp.linked.resources.DnsResource;
import org.sufficientlysecure.keychain.pgp.linked.resources.GenericHttpsResource;
-import org.sufficientlysecure.keychain.pgp.linked.resources.UnknownResource;
+import org.sufficientlysecure.keychain.pgp.linked.resources.TwitterResource;
import org.sufficientlysecure.keychain.util.Log;
import java.net.URI;
@@ -12,6 +12,9 @@ import java.util.HashSet;
import java.util.Set;
import java.util.regex.Pattern;
+import android.content.Context;
+import android.support.annotation.DrawableRes;
+
public abstract class LinkedResource {
protected final URI mSubUri;
@@ -58,8 +61,8 @@ public abstract class LinkedResource {
String[] pieces = specific.split("@", 2);
URI subUri = URI.create(pieces[1]);
- Set<String> flags = new HashSet<String>();
- HashMap<String,String> params = new HashMap<String,String>();
+ Set<String> flags = new HashSet<>();
+ HashMap<String,String> params = new HashMap<>();
if (!pieces[0].isEmpty()) {
String[] rawParams = pieces[0].split(";");
for (String param : rawParams) {
@@ -90,9 +93,17 @@ public abstract class LinkedResource {
if (res != null) {
return res;
}
+ res = TwitterResource.create(flags, params, subUri);
+ if (res != null) {
+ return res;
+ }
return null;
}
+ public abstract @DrawableRes int getDisplayIcon();
+ public abstract String getDisplayTitle(Context context);
+ public abstract String getDisplayComment(Context context);
+
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/RawLinkedIdentity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/RawLinkedIdentity.java
index bfde3c3b9..0de55ac38 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/RawLinkedIdentity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/RawLinkedIdentity.java
@@ -1,11 +1,15 @@
package org.sufficientlysecure.keychain.pgp.linked;
import org.spongycastle.util.Strings;
+import org.sufficientlysecure.keychain.R;
import org.sufficientlysecure.keychain.pgp.WrappedUserAttribute;
import java.net.URI;
import java.nio.ByteBuffer;
+import android.content.Context;
+import android.support.annotation.DrawableRes;
+
/** The RawLinkedIdentity contains raw parsed data from a Linked Identity subpacket. */
public class RawLinkedIdentity {
@@ -42,4 +46,16 @@ public class RawLinkedIdentity {
return 1234567;
}
+ public @DrawableRes int getDisplayIcon() {
+ return R.drawable.ic_warning_grey_24dp;
+ }
+
+ public String getDisplayTitle(Context context) {
+ return "unknown";
+ }
+
+ public String getDisplayComment(Context context) {
+ return null;
+ }
+
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/DnsResource.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/DnsResource.java
index d5b8a0345..8f16aa24d 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/DnsResource.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/DnsResource.java
@@ -1,7 +1,9 @@
package org.sufficientlysecure.keychain.pgp.linked.resources;
import android.content.Context;
+import android.support.annotation.DrawableRes;
+import org.sufficientlysecure.keychain.R;
import org.sufficientlysecure.keychain.operations.results.OperationResult.OperationLog;
import org.sufficientlysecure.keychain.pgp.linked.LinkedCookieResource;
import org.sufficientlysecure.keychain.ui.util.KeyFormattingUtils;
@@ -100,4 +102,19 @@ public class DnsResource extends LinkedCookieResource {
protected Matcher matchResource(OperationLog log, int indent, String res) {
return magicPattern.matcher(res);
}
+
+ @Override
+ public @DrawableRes int getDisplayIcon() {
+ return R.drawable.dns;
+ }
+
+ @Override
+ public String getDisplayTitle(Context context) {
+ return "dns";
+ }
+
+ @Override
+ public String getDisplayComment(Context context) {
+ return null;
+ }
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/GenericHttpsResource.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/GenericHttpsResource.java
index ba94bae75..7d4a38fe4 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/GenericHttpsResource.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/GenericHttpsResource.java
@@ -1,6 +1,7 @@
package org.sufficientlysecure.keychain.pgp.linked.resources;
import android.content.Context;
+import android.support.annotation.DrawableRes;
import com.textuality.keybase.lib.Search;
@@ -100,4 +101,20 @@ public class GenericHttpsResource extends LinkedCookieResource {
return new GenericHttpsResource(flags, params, uri);
}
+ @Override
+ public @DrawableRes
+ int getDisplayIcon() {
+ return R.drawable.ssl_lock;
+ }
+
+ @Override
+ public String getDisplayTitle(Context context) {
+ return "https";
+ }
+
+ @Override
+ public String getDisplayComment(Context context) {
+ return null;
+ }
+
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/TwitterResource.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/TwitterResource.java
index f6ec4f97a..3553ce740 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/TwitterResource.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/TwitterResource.java
@@ -1,6 +1,7 @@
package org.sufficientlysecure.keychain.pgp.linked.resources;
import android.content.Context;
+import android.support.annotation.DrawableRes;
import android.util.Base64;
import com.textuality.keybase.lib.JWalk;
@@ -16,6 +17,7 @@ import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.json.JSONException;
import org.json.JSONObject;
+import org.sufficientlysecure.keychain.R;
import org.sufficientlysecure.keychain.operations.results.OperationResult.OperationLog;
import org.sufficientlysecure.keychain.pgp.linked.LinkedCookieResource;
@@ -121,4 +123,22 @@ public class TwitterResource extends LinkedCookieResource {
return getTwitterStream("Valodim");
}
+ @Override
+ public @DrawableRes int getDisplayIcon() {
+ return R.drawable.twitter;
+ }
+
+ @Override
+ public String getDisplayTitle(Context context) {
+ return "twitter";
+ }
+
+ @Override
+ public String getDisplayComment(Context context) {
+ return null;
+ }
+
+ public static LinkedCookieResource create(Set<String> flags, HashMap<String, String> params, URI subUri) {
+ return null;
+ }
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/UnknownResource.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/UnknownResource.java
deleted file mode 100644
index f29ab5b39..000000000
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/linked/resources/UnknownResource.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.sufficientlysecure.keychain.pgp.linked.resources;
-
-import org.sufficientlysecure.keychain.operations.results.OperationResult.OperationLog;
-import org.sufficientlysecure.keychain.pgp.linked.LinkedCookieResource;
-
-import java.net.URI;
-import java.util.HashMap;
-import java.util.Set;
-
-public class UnknownResource extends LinkedCookieResource {
-
- public UnknownResource(Set<String> flags, HashMap<String,String> params, URI uri) {
- super(flags, params, uri);
- }
-
- @Override
- protected String fetchResource(OperationLog log, int indent) {
- return null;
- }
-
-}