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 {