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);
}