aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/crypto/axolotl/XmppAxolotlMessage.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2018-04-12 21:45:17 +0200
committerChristian Schneppe <christian@pix-art.de>2018-04-12 21:45:17 +0200
commit9094e8839d8d9790fb4ec18d961891492606033e (patch)
tree412ce518d59983c44e61c3e2bb5bcfe66d52107f /src/main/java/de/pixart/messenger/crypto/axolotl/XmppAxolotlMessage.java
parentfbd3083d4a39c56fa7bea5f01bede2ad1d2536eb (diff)
figure out fallbacks with omemo source id
Diffstat (limited to '')
-rw-r--r--src/main/java/de/pixart/messenger/crypto/axolotl/XmppAxolotlMessage.java12
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);