make linked identity list homogeneous
This commit is contained in:
@@ -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 {
|
||||
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user