From 787e2ad15a91ba208df71f15f8c964af04ecd2b8 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Wed, 2 May 2018 20:52:10 +0200 Subject: convert empty resources in messages to bare jid --- src/main/java/de/pixart/messenger/xmpp/InvalidJid.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/main/java/de/pixart/messenger/xmpp') diff --git a/src/main/java/de/pixart/messenger/xmpp/InvalidJid.java b/src/main/java/de/pixart/messenger/xmpp/InvalidJid.java index fd4ca4b90..a22bd6cef 100644 --- a/src/main/java/de/pixart/messenger/xmpp/InvalidJid.java +++ b/src/main/java/de/pixart/messenger/xmpp/InvalidJid.java @@ -37,10 +37,20 @@ public class InvalidJid implements Jid { private final String value; - public InvalidJid(String jid) { + private InvalidJid(String jid) { this.value = jid; } + public static Jid of(String jid, boolean fallback) { + final int pos = jid.indexOf('/'); + if (fallback && pos >= 0 && jid.length() >= pos + 1) { + if (jid.substring(pos + 1).trim().isEmpty()) { + return Jid.ofEscaped(jid.substring(0, pos)); + } + } + return new InvalidJid(jid); + } + @Override @NonNull public String toString() { -- cgit v1.2.3