You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by ng...@apache.org on 2010/08/26 23:17:16 UTC

svn commit: r989928 - in /mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler: MUCIqAdminHandler.java MUCPresenceHandler.java

Author: ngn
Date: Thu Aug 26 21:17:12 2010
New Revision: 989928

URL: http://svn.apache.org/viewvc?rev=989928&view=rev
Log:
Creator of room should also become owner
Adding some debug logging

Modified:
    mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCIqAdminHandler.java
    mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCPresenceHandler.java

Modified: mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCIqAdminHandler.java
URL: http://svn.apache.org/viewvc/mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCIqAdminHandler.java?rev=989928&r1=989927&r2=989928&view=diff
==============================================================================
--- mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCIqAdminHandler.java (original)
+++ mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCIqAdminHandler.java Thu Aug 26 21:17:12 2010
@@ -79,6 +79,8 @@ public class MUCIqAdminHandler extends D
 
     @Override
     protected Stanza handleSet(IQStanza stanza, ServerRuntimeContext serverRuntimeContext, SessionContext sessionContext) {
+        logger.debug("Received MUC admin stanza");
+        
         Room room = conference.findRoom(stanza.getTo());
 
         Occupant moderator = room.findOccupantByJID(stanza.getFrom());
@@ -86,6 +88,8 @@ public class MUCIqAdminHandler extends D
         // check if moderator
         if (moderator.getRole() != Role.Moderator) {
             // only moderators are allowed to continue
+            logger.debug("Only moderators are allowed to issue admin stanzas");
+            
             return MUCHandlerHelper.createErrorReply(stanza, StanzaErrorType.AUTH, StanzaErrorCondition.FORBIDDEN);
         }
         try {
@@ -101,15 +105,18 @@ public class MUCIqAdminHandler extends D
             }
 
             if (item.getRole() != null) {
+                logger.debug("Changing role");
                 return changeRole(stanza, serverRuntimeContext, sessionContext, item, room, moderator);
             } else if(item.getAffiliation() != null) {
+                logger.debug("Changing affiliation");
                 return changeAffiliation(stanza, serverRuntimeContext, sessionContext, item, room, moderator);
             } else {
+                logger.debug("Invalid MUC admin stanza");
                 return createBadRequestError(stanza, serverRuntimeContext, sessionContext, "Unknown IQ stanza");
             }
 
         } catch (XMLSemanticError e) {
-            e.printStackTrace();
+            logger.debug("Invalid MUC admin stanza", e);
             return createBadRequestError(stanza, serverRuntimeContext, sessionContext,
                     "Invalid IQ stanza");
         }
@@ -244,7 +251,6 @@ public class MUCIqAdminHandler extends D
         }
         
         Role newRole = item.getRole();
-
         // you can not change yourself
         if (moderator.getJid().equals(target.getJid())) {
             return MUCHandlerHelper.createErrorReply(stanza, StanzaErrorType.CANCEL, StanzaErrorCondition.CONFLICT);
@@ -283,7 +289,6 @@ public class MUCIqAdminHandler extends D
                         StanzaErrorCondition.NOT_ALLOWED);
             }
         }
-
         target.setRole(newRole);
         if (newRole == Role.None) {
             // remove user from room
@@ -317,7 +322,6 @@ public class MUCIqAdminHandler extends D
 
             relayStanza(occupant.getJid(), presenceToRemaining, serverRuntimeContext);
         }
-
         return StanzaBuilder.createIQStanza(stanza.getTo(), stanza.getFrom(), IQStanzaType.RESULT, stanza.getID())
                 .build();
     }

Modified: mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCPresenceHandler.java
URL: http://svn.apache.org/viewvc/mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCPresenceHandler.java?rev=989928&r1=989927&r2=989928&view=diff
==============================================================================
--- mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCPresenceHandler.java (original)
+++ mina/vysper/trunk/server/extensions/xep0045-muc/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0045_muc/handler/MUCPresenceHandler.java Thu Aug 26 21:17:12 2010
@@ -33,6 +33,7 @@ import org.apache.vysper.xmpp.delivery.f
 import org.apache.vysper.xmpp.delivery.failure.IgnoreFailureStrategy;
 import org.apache.vysper.xmpp.modules.core.base.handler.DefaultPresenceHandler;
 import org.apache.vysper.xmpp.modules.extension.xep0045_muc.MUCStanzaBuilder;
+import org.apache.vysper.xmpp.modules.extension.xep0045_muc.model.Affiliation;
 import org.apache.vysper.xmpp.modules.extension.xep0045_muc.model.Conference;
 import org.apache.vysper.xmpp.modules.extension.xep0045_muc.model.Occupant;
 import org.apache.vysper.xmpp.modules.extension.xep0045_muc.model.Role;
@@ -199,6 +200,7 @@ public class MUCPresenceHandler extends 
             }
             
             if(newRoom) {
+                room.getAffiliations().add(newOccupantJid, Affiliation.Owner);
                 newOccupant.setRole(Role.Moderator);
             }