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