You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by be...@apache.org on 2008/04/23 08:48:42 UTC
svn commit: r650762 - in /labs/vysper/src/main/java/org/apache/vysper/xmpp:
addressing/Entity.java addressing/EntityImpl.java
delivery/MasterStanzaRelay.java modules/core/base/handler/MessageHandler.java
Author: berndf
Date: Tue Apr 22 23:48:35 2008
New Revision: 650762
URL: http://svn.apache.org/viewvc?rev=650762&view=rev
Log:
[vysper] more details for relaying stanzas (LABS-124)
Modified:
labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/Entity.java
labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/EntityImpl.java
labs/vysper/src/main/java/org/apache/vysper/xmpp/delivery/MasterStanzaRelay.java
labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/MessageHandler.java
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/Entity.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/Entity.java?rev=650762&r1=650761&r2=650762&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/Entity.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/Entity.java Tue Apr 22 23:48:35 2008
@@ -55,5 +55,8 @@
String getBareJID();
String getCanonicalizedName();
+
+ boolean isNodeSet();
+ boolean isResourceSet();
}
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/EntityImpl.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/EntityImpl.java?rev=650762&r1=650761&r2=650762&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/EntityImpl.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/addressing/EntityImpl.java Tue Apr 22 23:48:35 2008
@@ -79,23 +79,32 @@
public String getFullQualifiedName() {
StringBuffer buffer = new StringBuffer();
- if (node != null && !"".equals(node))
+ if (isNodeSet())
buffer.append(node).append("@");
buffer.append(domain);
- if (resource != null && !"".equals(resource))
+ if (isResourceSet())
buffer.append("/").append(resource);
return buffer.toString();
}
- public String getBareJID() {
+ public String getBareJID() {
return null;
}
- public String getCanonicalizedName() {
+ public String getCanonicalizedName() {
return null;
}
- public boolean equals(Object o) {
+ public boolean isNodeSet() {
+ return node != null && !"".equals(node);
+ }
+
+ public boolean isResourceSet() {
+ return resource != null && !"".equals(resource);
+ }
+
+
+ public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || !(o instanceof Entity))
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/delivery/MasterStanzaRelay.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/delivery/MasterStanzaRelay.java?rev=650762&r1=650761&r2=650762&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/delivery/MasterStanzaRelay.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/delivery/MasterStanzaRelay.java Tue Apr 22 23:48:35 2008
@@ -21,7 +21,7 @@
import org.apache.vysper.xmpp.stanza.Stanza;
/**
- * relays stanzas to internal or external servers
+ * relays stanzas. handles message itself, routes to another server/domain or delivers locally.
*/
public class MasterStanzaRelay implements StanzaRelay {
@@ -42,6 +42,17 @@
}
public void relay(Entity receiver, Stanza stanza) throws DeliveryException {
+ if (receiver == null || !receiver.isNodeSet()) {
+ // TODO handle by server
+
+ // TODO if received <message/> from another server to MUST be set
+ // TODO if received <presence/> from another server with no to, broadcast to subscribed entities
+ // TODO if received <iq/>/get/set with no to, see 3920bis#11.1.4
+
+ throw new RuntimeException("not yet implemented");
+ //return;
+ }
+
String domain = receiver.getDomain();
boolean relayToExternal = serverRuntimeContext.getServerFeatures().isRelayingToFederationServers();
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/MessageHandler.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/MessageHandler.java?rev=650762&r1=650761&r2=650762&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/MessageHandler.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/MessageHandler.java Tue Apr 22 23:48:35 2008
@@ -76,10 +76,6 @@
Entity to = stanza.getTo();
- // TODO check if to is empty.
-
- // TODO check if the user should be on this server. relay if not.
-
StanzaRelay stanzaRelay = sessionContext.getServerRuntimeContext().getStanzaRelay();
try {
stanzaRelay.relay(to, stanza);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org