Class IQAdminHandler

java.lang.Object
org.jivesoftware.openfire.muc.spi.IQAdminHandler

public class IQAdminHandler extends Object
A handler for the IQ packet with namespace http://jabber.org/protocol/muc#admin. This kind of packets are usually sent by room admins. So this handler provides the necessary functionality to support administrator requirements such as: managing room members/outcasts/etc., kicking occupants and banning users.
Author:
Gaston Dombiak
  • Constructor Details

    • IQAdminHandler

      public IQAdminHandler(MUCRoom chatroom)
  • Method Details

    • handleIQ

      public void handleIQ(@Nonnull org.xmpp.packet.IQ packet, @Nullable MUCOccupant actorOccupant) throws ForbiddenException, ConflictException, NotAllowedException, CannotBeInvitedException
      Handles the IQ packet sent by an owner or admin of the room. Possible actions are:
      • Return the list of participants
      • Return the list of moderators
      • Return the list of members
      • Return the list of outcasts
      • Change user's affiliation to member
      • Change user's affiliation to outcast
      • Change user's affiliation to none
      • Change occupant's affiliation to moderator
      • Change occupant's affiliation to participant
      • Change occupant's affiliation to visitor
      • Kick occupants from the room
      Parameters:
      packet - the IQ packet sent by an owner or admin of the room.
      actorOccupant - the occupant data of the user that sent the request packet.
      Throws:
      ForbiddenException - If the user is not allowed to perform his request.
      ConflictException - If the desired room nickname is already reserved for the room or if the room was going to lose all of its owners.
      NotAllowedException - Thrown if trying to ban an owner or an administrator.
      CannotBeInvitedException - If the user being invited as a result of being added to a members-only room still does not have permission