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/11/14 21:20:30 UTC
svn commit: r714124 - in
/labs/vysper/src/main/java/org/apache/vysper/xmpp/modules:
core/im/handler/PresenceAvailabilityHandler.java
servicediscovery/collection/ServiceCollector.java
servicediscovery/handler/DiscoInfoIQHandler.java
Author: berndf
Date: Fri Nov 14 12:20:30 2008
New Revision: 714124
URL: http://svn.apache.org/viewvc?rev=714124&view=rev
Log:
[vysper] LABS-228 fix disco info handling
Modified:
labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailabilityHandler.java
labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/collection/ServiceCollector.java
labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailabilityHandler.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailabilityHandler.java?rev=714124&r1=714123&r2=714124&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailabilityHandler.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailabilityHandler.java Fri Nov 14 12:20:30 2008
@@ -189,10 +189,6 @@
// return error stanza
}
-// testing
- registry.getResourcesForSession(sessionContext);
- ResourceState state = registry.getResourceState(resourceID);
-
registry.setResourceState(resourceID, ResourceState.UNAVAILABLE);
sessionContext.getServerRuntimeContext().getPresenceCache().remove(user);
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/collection/ServiceCollector.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/collection/ServiceCollector.java?rev=714124&r1=714123&r2=714124&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/collection/ServiceCollector.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/collection/ServiceCollector.java Fri Nov 14 12:20:30 2008
@@ -49,9 +49,9 @@
/**
* collect all server feature and identity info from the listeners
*/
- public Set<InfoElement> processServerInfoRequest(InfoRequest infoRequest) {
+ public List<InfoElement> processServerInfoRequest(InfoRequest infoRequest) {
// sorted structure, to place all <feature/> after <identity/>
- Set<InfoElement> elements = new TreeSet<InfoElement>(new ElementPartitioningComparator());
+ List<InfoElement> elements = new ArrayList<InfoElement>();
elements.add(DEFAULT_FEATURE);
for (ServerInfoRequestListener serverInfoRequestListener : serverInfoRequestListeners) {
List<InfoElement> elementList = null;
@@ -60,17 +60,18 @@
} catch (Throwable e) {
continue;
}
- if (elements != null) elements.addAll(elementList);
+ if (elementList != null) elements.addAll(elementList);
}
+ Collections.sort(elements, new ElementPartitioningComparator());
return elements;
}
/**
* collect all non-server feature and identity info from the listeners
*/
- public Set<InfoElement> processInfoRequest(InfoRequest infoRequest) {
+ public List<InfoElement> processInfoRequest(InfoRequest infoRequest) {
// sorted structure, to place all <feature/> after <identity/>
- Set<InfoElement> elements = new TreeSet<InfoElement>(new ElementPartitioningComparator());
+ List<InfoElement> elements = new ArrayList<InfoElement>();
elements.add(DEFAULT_FEATURE);
for (InfoRequestListener infoRequestListener : infoRequestListeners) {
List<InfoElement> elementList = null;
@@ -81,14 +82,15 @@
}
if (elementList != null) elements.addAll(elementList);
}
+ Collections.sort(elements, new ElementPartitioningComparator());
return elements;
}
/**
* collect all item info from the listeners
*/
- public Set<Item> processItemRequest(InfoRequest infoRequest) {
- Set<Item> elements = new HashSet<Item>();
+ public List<Item> processItemRequest(InfoRequest infoRequest) {
+ List<Item> elements = new ArrayList<Item>();
for (ItemRequestListener itemRequestListener : itemRequestListeners) {
List<Item> elementList = null;
try {
@@ -96,7 +98,7 @@
} catch (Throwable e) {
continue;
}
- if (elements != null) elements.addAll(elementList);
+ if (elementList != null) elements.addAll(elementList);
}
return elements;
}
Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java?rev=714124&r1=714123&r2=714124&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java Fri Nov 14 12:20:30 2008
@@ -22,7 +22,6 @@
import org.apache.vysper.xmpp.modules.servicediscovery.collection.ServiceDiscoveryRequestListenerRegistry;
import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoElement;
import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoRequest;
-import org.apache.vysper.xmpp.modules.roster.RosterItem;
import org.apache.vysper.xmpp.protocol.NamespaceURIs;
import org.apache.vysper.xmpp.server.ServerRuntimeContext;
import org.apache.vysper.xmpp.server.SessionContext;
@@ -31,7 +30,7 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.util.Set;
+import java.util.List;
/**
* handles roster get, set, push & result requests
@@ -66,11 +65,11 @@
boolean isServerInfoRequest = serverRuntimeContext.getServerEnitity().equals(stanza.getTo());
// collect all the info response elements
- Set<InfoElement> elementSet = null;
+ List<InfoElement> elements = null;
if (isServerInfoRequest) {
- elementSet = serviceCollector.processServerInfoRequest(new InfoRequest(stanza.getFrom(), stanza.getTo()));
+ elements = serviceCollector.processServerInfoRequest(new InfoRequest(stanza.getFrom(), stanza.getTo()));
} else {
- elementSet = serviceCollector.processInfoRequest(new InfoRequest(stanza.getFrom(), stanza.getTo()));
+ elements = serviceCollector.processInfoRequest(new InfoRequest(stanza.getFrom(), stanza.getTo()));
}
//TODO check that elementSet contains at least one identity element and on feature element!
@@ -80,7 +79,7 @@
startInnerElement("query").
addNamespaceAttribute(NamespaceURIs.XEP0030_SERVICE_DISCOVERY_INFO);
- for (InfoElement infoElement : elementSet) {
+ for (InfoElement infoElement : elements) {
infoElement.insertElement(stanzaBuilder);
}
@@ -88,4 +87,4 @@
return stanzaBuilder.getFinalStanza();
}
-}
\ No newline at end of file
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org