diff options
author | Vincent Breitmoser <valodim@mugenguild.com> | 2015-03-05 13:13:43 +0100 |
---|---|---|
committer | Vincent Breitmoser <valodim@mugenguild.com> | 2015-03-05 13:13:43 +0100 |
commit | 5d2c81d715cf1fd9ff23a8d1aa43fcfb58f7d099 (patch) | |
tree | 004c1cb4147e63b5d8096d637e3ab0f1d97c3463 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp | |
parent | 7b3bc4ca98c2be52bec996287c5997c3c52e3603 (diff) | |
download | open-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')
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; - } - -} |