diff options
author | Christian Schneppe <christian@pix-art.de> | 2018-04-12 21:45:17 +0200 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2018-04-12 21:45:17 +0200 |
commit | 9094e8839d8d9790fb4ec18d961891492606033e (patch) | |
tree | 412ce518d59983c44e61c3e2bb5bcfe66d52107f /src/main/java/de/pixart/messenger/crypto/axolotl/XmppAxolotlMessage.java | |
parent | fbd3083d4a39c56fa7bea5f01bede2ad1d2536eb (diff) |
figure out fallbacks with omemo source id
Diffstat (limited to '')
-rw-r--r-- | src/main/java/de/pixart/messenger/crypto/axolotl/XmppAxolotlMessage.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/main/java/de/pixart/messenger/crypto/axolotl/XmppAxolotlMessage.java b/src/main/java/de/pixart/messenger/crypto/axolotl/XmppAxolotlMessage.java index 603eedde8..f5a41e6b3 100644 --- a/src/main/java/de/pixart/messenger/crypto/axolotl/XmppAxolotlMessage.java +++ b/src/main/java/de/pixart/messenger/crypto/axolotl/XmppAxolotlMessage.java @@ -88,6 +88,18 @@ public class XmppAxolotlMessage { } } + public static int parseSourceId(final Element axolotlMessage) throws IllegalArgumentException { + final Element header = axolotlMessage.findChild(HEADER); + if (header == null) { + throw new IllegalArgumentException("No header found"); + } + try { + return Integer.parseInt(header.getAttribute(SOURCEID)); + } catch (NumberFormatException e) { + throw new IllegalArgumentException("invalid source id"); + } + } + private XmppAxolotlMessage(final Element axolotlMessage, final Jid from) throws IllegalArgumentException { this.from = from; Element header = axolotlMessage.findChild(HEADER); |