diff options
Diffstat (limited to 'src/main/java/eu/siacs/conversations/entities/Account.java')
-rw-r--r-- | src/main/java/eu/siacs/conversations/entities/Account.java | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/src/main/java/eu/siacs/conversations/entities/Account.java b/src/main/java/eu/siacs/conversations/entities/Account.java index bb89cf17..024f5889 100644 --- a/src/main/java/eu/siacs/conversations/entities/Account.java +++ b/src/main/java/eu/siacs/conversations/entities/Account.java @@ -610,23 +610,17 @@ public class Account extends AbstractEntity { List<XmppUri.Fingerprint> fingerprints = this.getFingerprints(); String uri = "xmpp:"+this.getJid().toBareJid().toString(); if (fingerprints.size() > 0) { - StringBuilder builder = new StringBuilder(uri); - builder.append('?'); - for(int i = 0; i < fingerprints.size(); ++i) { - XmppUri.FingerprintType type = fingerprints.get(i).type; - if (type == XmppUri.FingerprintType.OMEMO) { - builder.append(XmppUri.OMEMO_URI_PARAM); - builder.append(fingerprints.get(i).deviceId); - } else if (type == XmppUri.FingerprintType.OTR) { - builder.append(XmppUri.OTR_URI_PARAM); - } - builder.append('='); - builder.append(fingerprints.get(i).fingerprint); - if (i != fingerprints.size() -1) { - builder.append(';'); - } - } - return builder.toString(); + return XmppUri.getFingerprintUri(uri,fingerprints,';'); + } else { + return uri; + } + } + + public String getShareableLink() { + List<XmppUri.Fingerprint> fingerprints = this.getFingerprints(); + String uri = "https://conversations.im/i/"+this.getJid().toBareJid().toString(); + if (fingerprints.size() > 0) { + return XmppUri.getFingerprintUri(uri,fingerprints,'&'); } else { return uri; } |