You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by be...@apache.org on 2010/08/27 20:28:25 UTC
svn commit: r990221 - in /mina/vysper/trunk/server:
core/src/main/java/org/apache/vysper/xmpp/addressing/
core/src/main/java/org/apache/vysper/xmpp/delivery/
core/src/main/java/org/apache/vysper/xmpp/delivery/inbound/
extensions/xep0045-muc/src/main/ja...
Author: berndf
Date: Fri Aug 27 18:28:25 2010
New Revision: 990221
URL: http://svn.apache.org/viewvc?rev=990221&view=rev
Log:
VYSPER-246: introduce EntityUtils
Added:
mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/addressing/EntityUtils.java
Modified:
mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/StanzaRelayBroker.java
mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/inbound/DeliveringInboundStanzaRelay.java
mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/MUCModule.java
mina/vysper/trunk/server/extensions/xep0060-pubsub/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java
Added: mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/addressing/EntityUtils.java
URL: http://svn.apache.org/viewvc/mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/addressing/EntityUtils.java?rev=990221&view=auto
==============================================================================
--- mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/addressing/EntityUtils.java (added)
+++ mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/addressing/EntityUtils.java Fri Aug 27 18:28:25 2010
@@ -0,0 +1,26 @@
+package org.apache.vysper.xmpp.addressing;
+
+import org.apache.vysper.xmpp.server.ServerRuntimeContext;
+
+/**
+ * provides utility methods for {@link org.apache.vysper.xmpp.addressing.Entity}
+ */
+public class EntityUtils {
+
+ public static boolean isAddressingServer(Entity toVerify, Entity serverJID) {
+ return toVerify.getDomain().equals(serverJID.getDomain());
+ }
+
+ public static boolean isAddressingServerComponent(Entity toVerify, Entity serverJID) {
+ return toVerify.getDomain().endsWith("." + serverJID.getDomain());
+ }
+
+ public static Entity createComponentDomain(String subdomain, ServerRuntimeContext serverRuntimeContext) {
+ try {
+ return EntityImpl.parse(subdomain + "." + serverRuntimeContext.getServerEnitity().getDomain());
+ } catch (EntityFormatException e) {
+ // only happens when server entity is bad.
+ throw new RuntimeException("could not create component domain", e);
+ }
+ }
+}
Modified: mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/StanzaRelayBroker.java
URL: http://svn.apache.org/viewvc/mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/StanzaRelayBroker.java?rev=990221&r1=990220&r2=990221&view=diff
==============================================================================
--- mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/StanzaRelayBroker.java (original)
+++ mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/StanzaRelayBroker.java Fri Aug 27 18:28:25 2010
@@ -20,6 +20,7 @@
package org.apache.vysper.xmpp.delivery;
import org.apache.vysper.xmpp.addressing.Entity;
+import org.apache.vysper.xmpp.addressing.EntityUtils;
import org.apache.vysper.xmpp.delivery.failure.DeliveryException;
import org.apache.vysper.xmpp.delivery.failure.DeliveryFailureStrategy;
import org.apache.vysper.xmpp.server.ServerRuntimeContext;
@@ -62,8 +63,7 @@ public class StanzaRelayBroker implement
throws DeliveryException {
boolean toServerTLD = receiver == null
- || (!receiver.isNodeSet() && serverRuntimeContext.getServerEnitity().getDomain().equals(
- receiver.getDomain()));
+ || (!receiver.isNodeSet() && EntityUtils.isAddressingServer(receiver, serverRuntimeContext.getServerEnitity()));
boolean toComponent = !toServerTLD && !receiver.isNodeSet();
if (toServerTLD) {
// TODO handle by server
Modified: mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/inbound/DeliveringInboundStanzaRelay.java
URL: http://svn.apache.org/viewvc/mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/inbound/DeliveringInboundStanzaRelay.java?rev=990221&r1=990220&r2=990221&view=diff
==============================================================================
--- mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/inbound/DeliveringInboundStanzaRelay.java (original)
+++ mina/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/delivery/inbound/DeliveringInboundStanzaRelay.java Fri Aug 27 18:28:25 2010
@@ -33,6 +33,7 @@ import java.util.concurrent.atomic.Atomi
import org.apache.vysper.compliance.SpecCompliant;
import org.apache.vysper.storage.StorageProviderRegistry;
import org.apache.vysper.xmpp.addressing.Entity;
+import org.apache.vysper.xmpp.addressing.EntityUtils;
import org.apache.vysper.xmpp.authorization.AccountManagement;
import org.apache.vysper.xmpp.delivery.OfflineStanzaReceiver;
import org.apache.vysper.xmpp.delivery.StanzaRelay;
@@ -169,12 +170,12 @@ public class DeliveringInboundStanzaRela
protected RelayResult deliver() {
try {
String receiverDomain = receiver.getDomain();
- if (receiverDomain != null && !receiverDomain.equals(serverEntity.getDomain())) {
+ if (receiverDomain != null && !EntityUtils.isAddressingServer(receiver, serverEntity)) {
if (serverRuntimeContext == null) {
return new RelayResult(new ServiceNotAvailableException(
"cannot retrieve component from server context"));
}
- if (!receiverDomain.endsWith("." + serverEntity.getDomain())) {
+ if (!EntityUtils.isAddressingServerComponent(receiver, serverEntity)) {
return new RelayResult(new ServiceNotAvailableException("unsupported domain " + receiverDomain));
}
Modified: mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/MUCModule.java
URL: http://svn.apache.org/viewvc/mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/MUCModule.java?rev=990221&r1=990220&r2=990221&view=diff
==============================================================================
--- mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/MUCModule.java (original)
+++ mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/MUCModule.java Fri Aug 27 18:28:25 2010
@@ -25,6 +25,7 @@ import java.util.List;
import org.apache.vysper.xmpp.addressing.Entity;
import org.apache.vysper.xmpp.addressing.EntityFormatException;
import org.apache.vysper.xmpp.addressing.EntityImpl;
+import org.apache.vysper.xmpp.addressing.EntityUtils;
import org.apache.vysper.xmpp.delivery.failure.DeliveryException;
import org.apache.vysper.xmpp.delivery.failure.IgnoreFailureStrategy;
import org.apache.vysper.xmpp.modules.DefaultDiscoAwareModule;
@@ -94,11 +95,7 @@ public class MUCModule extends DefaultDi
this.serverRuntimeContext = serverRuntimeContext;
- try {
- fullDomain = EntityImpl.parse(subdomain + "." + serverRuntimeContext.getServerEnitity().getDomain());
- } catch (EntityFormatException e) {
- throw new RuntimeException("failed to initialize MUC domain", e);
- }
+ fullDomain = EntityUtils.createComponentDomain(subdomain, serverRuntimeContext);
ComponentStanzaProcessor processor = new ComponentStanzaProcessor(serverRuntimeContext);
processor.addHandler(new MUCPresenceHandler(conference));
Modified: mina/vysper/trunk/server/extensions/xep0060-pubsub/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java
URL: http://svn.apache.org/viewvc/mina/vysper/trunk/server/extensions/xep0060-pubsub/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java?rev=990221&r1=990220&r2=990221&view=diff
==============================================================================
--- mina/vysper/trunk/server/extensions/xep0060-pubsub/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java (original)
+++ mina/vysper/trunk/server/extensions/xep0060-pubsub/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java Fri Aug 27 18:28:25 2010
@@ -26,6 +26,7 @@ import org.apache.vysper.compliance.Spec
import org.apache.vysper.xmpp.addressing.Entity;
import org.apache.vysper.xmpp.addressing.EntityFormatException;
import org.apache.vysper.xmpp.addressing.EntityImpl;
+import org.apache.vysper.xmpp.addressing.EntityUtils;
import org.apache.vysper.xmpp.modules.DefaultDiscoAwareModule;
import org.apache.vysper.xmpp.modules.core.base.handler.MessageHandler;
import org.apache.vysper.xmpp.modules.extension.xep0060_pubsub.handler.PubSubCreateNodeHandler;
@@ -111,11 +112,7 @@ public class PublishSubscribeModule exte
this.serverRuntimeContext = serverRuntimeContext;
- try {
- fullDomain = EntityImpl.parse(subdomain + "." + serverRuntimeContext.getServerEnitity().getDomain());
- } catch (EntityFormatException e) {
- throw new RuntimeException("failed to initialize PubSub domain", e);
- }
+ fullDomain = EntityUtils.createComponentDomain(subdomain, serverRuntimeContext);
CollectionNodeStorageProvider collectionNodeStorageProvider = (CollectionNodeStorageProvider) serverRuntimeContext
.getStorageProvider(CollectionNodeStorageProvider.class);