aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/xmpp/stanzas
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractAcknowledgeableStanza.java5
-rw-r--r--src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractStanza.java21
-rw-r--r--src/main/java/de/pixart/messenger/xmpp/stanzas/IqPacket.java6
3 files changed, 23 insertions, 9 deletions
diff --git a/src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractAcknowledgeableStanza.java b/src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractAcknowledgeableStanza.java
index 22d035e6e..e795b40fd 100644
--- a/src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractAcknowledgeableStanza.java
+++ b/src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractAcknowledgeableStanza.java
@@ -1,6 +1,7 @@
package de.pixart.messenger.xmpp.stanzas;
import de.pixart.messenger.xml.Element;
+import de.pixart.messenger.xmpp.InvalidJid;
abstract public class AbstractAcknowledgeableStanza extends AbstractStanza {
@@ -28,4 +29,8 @@ abstract public class AbstractAcknowledgeableStanza extends AbstractStanza {
}
return null;
}
+
+ public boolean valid() {
+ return InvalidJid.isValid(getFrom()) && InvalidJid.isValid(getTo());
+ }
}
diff --git a/src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractStanza.java b/src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractStanza.java
index 58d2a8b68..ee0884aa6 100644
--- a/src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractStanza.java
+++ b/src/main/java/de/pixart/messenger/xmpp/stanzas/AbstractStanza.java
@@ -31,20 +31,23 @@ public class AbstractStanza extends Element {
}
public boolean fromServer(final Account account) {
- return getFrom() == null
- || getFrom().equals(Jid.of(account.getServer()))
- || getFrom().equals(account.getJid().asBareJid())
- || getFrom().equals(account.getJid());
+ final Jid from = getFrom();
+ return from == null
+ || from.equals(Jid.of(account.getServer()))
+ || from.equals(account.getJid().asBareJid())
+ || from.equals(account.getJid());
}
public boolean toServer(final Account account) {
- return getTo() == null
- || getTo().equals(Jid.of(account.getServer()))
- || getTo().equals(account.getJid().asBareJid())
- || getTo().equals(account.getJid());
+ final Jid to = getTo();
+ return to == null
+ || to.equals(Jid.of(account.getServer()))
+ || to.equals(account.getJid().asBareJid())
+ || to.equals(account.getJid());
}
public boolean fromAccount(final Account account) {
- return getFrom() != null && getFrom().asBareJid().equals(account.getJid().asBareJid());
+ final Jid from = getFrom();
+ return from != null && from.asBareJid().equals(account.getJid().asBareJid());
}
}
diff --git a/src/main/java/de/pixart/messenger/xmpp/stanzas/IqPacket.java b/src/main/java/de/pixart/messenger/xmpp/stanzas/IqPacket.java
index 2efc948f4..5f4e39eca 100644
--- a/src/main/java/de/pixart/messenger/xmpp/stanzas/IqPacket.java
+++ b/src/main/java/de/pixart/messenger/xmpp/stanzas/IqPacket.java
@@ -66,4 +66,10 @@ public class IqPacket extends AbstractAcknowledgeableStanza {
return packet;
}
+ @Override
+ public boolean valid() {
+ String id = getId();
+ return id != null && super.valid();
+ }
+
}