Author: mjakl
Date: Sun Jun 28 17:13:52 2009
New Revision: 789128

URL: http://svn.apache.org/viewvc?rev=789128&view=rev
Log:
Added <feature var='http://jabber.org/protocol/pubsub'/> to disco#info for 
LeafNodes

Modified:
    
mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/model/LeafNode.java
    
mina/sandbox/vysper/trunk/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/disco/PubSubDiscoInfoTestCase.java

Modified: 
mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/model/LeafNode.java
URL: 
http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/model/LeafNode.java?rev=789128&r1=789127&r2=789128&view=diff
==============================================================================
--- 
mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/model/LeafNode.java
 (original)
+++ 
mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/model/LeafNode.java
 Sun Jun 28 17:13:52 2009
@@ -28,9 +28,11 @@
 import 
org.apache.vysper.xmpp.modules.extension.xep0060_pubsub.SubscriberNotificationVisitor;
 import 
org.apache.vysper.xmpp.modules.extension.xep0060_pubsub.storageprovider.LeafNodeInMemoryStorageProvider;
 import 
org.apache.vysper.xmpp.modules.extension.xep0060_pubsub.storageprovider.LeafNodeStorageProvider;
+import org.apache.vysper.xmpp.modules.servicediscovery.management.Feature;
 import org.apache.vysper.xmpp.modules.servicediscovery.management.Identity;
 import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoElement;
 import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoRequest;
+import org.apache.vysper.xmpp.protocol.NamespaceURIs;
 import org.apache.vysper.xmpp.xmlfragment.XMLElement;
 
 /**
@@ -198,6 +200,7 @@
     public List<InfoElement> getNodeInfosFor(InfoRequest request) {
         List<InfoElement> infoElements = new ArrayList<InfoElement>();
         infoElements.add(new Identity("pubsub", "leaf"));
+        infoElements.add(new Feature(NamespaceURIs.XEP0060_PUBSUB));
         return infoElements;
     }
 }

Modified: 
mina/sandbox/vysper/trunk/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/disco/PubSubDiscoInfoTestCase.java
URL: 
http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/disco/PubSubDiscoInfoTestCase.java?rev=789128&r1=789127&r2=789128&view=diff
==============================================================================
--- 
mina/sandbox/vysper/trunk/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/disco/PubSubDiscoInfoTestCase.java
 (original)
+++ 
mina/sandbox/vysper/trunk/src/test/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/disco/PubSubDiscoInfoTestCase.java
 Sun Jun 28 17:13:52 2009
@@ -59,7 +59,9 @@
                     && el.getAttributeValue("category").equals("pubsub")
                     && el.getAttributeValue("type").equals("service")) {
                 identity = el;
-            } else if(el.getName().equals("feature") /*&& 
el.getNamespace().equals(NamespaceURIs.XEP0060_PUBSUB)*/) { // TODO enable when 
the parser is fixed
+            } else if(el.getName().equals("feature")
+                    /*&& 
el.getNamespace().equals(NamespaceURIs.XEP0030_SERVICE_DISCOVERY_INFO)*/
+                    && 
el.getAttributeValue("var").equals(NamespaceURIs.XEP0060_PUBSUB)) { // TODO 
enable when the parser is fixed
                 feature = el;
             }
         }
@@ -94,17 +96,23 @@
         
         // ordering etc. is unknown; step through all subelements and pick the 
ones we need
         XMLElement identity = null;
+        XMLElement feature = null;
         for(XMLElement el : inner) {
             if(el.getName().equals("identity")
                     //&& 
el.getNamespace().equals(NamespaceURIs.XEP0030_SERVICE_DISCOVERY_INFO) // TODO 
enable when the parser is fixed
                     && el.getAttributeValue("category").equals("pubsub")
                     && el.getAttributeValue("type").equals("leaf")) {
                 identity = el;
+            } else if(el.getName().equals("feature")
+                    /*&& 
el.getNamespace().equals(NamespaceURIs.XEP0030_SERVICE_DISCOVERY_INFO)*/
+                    && 
el.getAttributeValue("var").equals(NamespaceURIs.XEP0060_PUBSUB)) { // TODO 
enable when the parser is fixed
+                feature = el;
             }
         }
         
         // make sure they were there (booleans would have sufficed)
         assertNotNull(identity);
+        assertNotNull(feature);
     }
     
     class DefaultDiscoInfoStanzaGenerator extends AbstractStanzaGenerator {


Reply via email to