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/05/07 07:47:30 UTC

svn commit: r653995 - in /labs/vysper/src/main/java/org/apache/vysper/xmpp/modules: core/base/handler/PresenceHandler.java roster/handler/IQRosterHandler.java

Author: berndf
Date: Tue May  6 22:47:29 2008
New Revision: 653995

URL: http://svn.apache.org/viewvc?rev=653995&view=rev
Log:
[vysper] set resource state to 'INTERESTED' on roster get

Modified:
    labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/PresenceHandler.java
    labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/roster/handler/IQRosterHandler.java

Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/PresenceHandler.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/PresenceHandler.java?rev=653995&r1=653994&r2=653995&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/PresenceHandler.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/core/base/handler/PresenceHandler.java Tue May  6 22:47:29 2008
@@ -72,6 +72,7 @@
             if (resourceState != null && resourceState == ResourceState.AVAILABLE) {
                 handleOutboundPresenceUpdate(presenceStanza, sessionContext, registry, initiatingEntity);
             } else {
+                // TODO check for resourceState != ResourceState.INTERESTED ? 
                 // RFC3921bis-04#4.2.2 Initial Presence
                 handleOutboundInitialPresence(presenceStanza, sessionContext, registry, initiatingEntity);
             }

Modified: labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/roster/handler/IQRosterHandler.java
URL: http://svn.apache.org/viewvc/labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/roster/handler/IQRosterHandler.java?rev=653995&r1=653994&r2=653995&view=diff
==============================================================================
--- labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/roster/handler/IQRosterHandler.java (original)
+++ labs/vysper/src/main/java/org/apache/vysper/xmpp/modules/roster/handler/IQRosterHandler.java Tue May  6 22:47:29 2008
@@ -24,6 +24,8 @@
 import org.apache.vysper.xmpp.stanza.IQStanzaType;
 import org.apache.vysper.xmpp.stanza.Stanza;
 import org.apache.vysper.xmpp.stanza.StanzaBuilder;
+import org.apache.vysper.xmpp.resourcebinding.ResourceState;
+import org.apache.vysper.xmpp.resourcebinding.ResourceRegistry;
 
 /**
  * handles bind requests
@@ -36,6 +38,8 @@
 
     protected Stanza executeIQLogic(IQStanza stanza, SessionContext sessionContext) {
 
+        // TODO check the session for resource state
+        
         switch (stanza.getIQType()) {
 
             case ERROR:
@@ -56,11 +60,24 @@
     }
 
     private Stanza retrieveRoster(IQStanza stanza, SessionContext sessionContext) {
+
+        ResourceRegistry registry = sessionContext.getServerRuntimeContext().getResourceRegistry();
+        String resourceId = registry.getFirstResourceForSession(sessionContext);
+        ResourceState currentState = registry.getResourceState(resourceId);
+        if (currentState != null && currentState == ResourceState.CONNECTED) {
+            registry.setResourceState(resourceId, ResourceState.INTERESTED);
+        }
         
         StanzaBuilder stanzaBuilder =
             StanzaBuilder.createIQStanza(IQStanzaType.RESULT, stanza.getID()).
             startInnerElement("query", NamespaceURIs.JABBER_IQ_ROSTER);
             // TODO add roster items
+        
+        
+            stanzaBuilder.startInnerElement("item").addAttribute("jid", "user2@vysper.org").addAttribute("name", "u2");
+            stanzaBuilder.endInnerElement();
+        
+        
             stanzaBuilder.endInnerElement();
 
         return stanzaBuilder.getFinalStanza();



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org