sfs2x.client.requests
Class BanUserRequest

java.lang.Object
  extended by sfs2x.client.requests.BaseRequest
      extended by sfs2x.client.requests.BanUserRequest
All Implemented Interfaces:
sfs2x.client.requests.IRequest

public class BanUserRequest
extends sfs2x.client.requests.BaseRequest

Banishes a user from the server.

The current user must have administration or moderation privileges in order to be able to ban another user (see the User.privilegeId property). The user can be banned by name or by IP address (see the BanMode class). Also, the request allows sending a message to the banned user (to make clear the reason of the following disconnection) which is delivered by means of the moderatorMessage event.

Differently from the user being kicked (see the KickUserRequest request), a banned user won't be able to connect to the SmartFoxServer instance until the banishment expires (after 24 hours for client-side banning) or an administrator removes his name/IP address from the list of banned users by means of the SmartFoxServer 2X Administration Tool.

Example
The following example bans the user Jack from the system:

private void someMethod() { User userToBan = sfs.getUserManager().getUserByName("Jack"); sfs.send(new BanUserRequest(userToBan.getId())); }

See Also:
SFSEvent.MODERATOR_MESSAGE, User.getPrivilegeId(), BanMode, KickUserRequest

Field Summary
static java.lang.String KEY_BAN_DURATION_HOURS
          *Private*
static java.lang.String KEY_BAN_MODE
          *Private*
static java.lang.String KEY_DELAY
          *Private*
static java.lang.String KEY_MESSAGE
          *Private*
static java.lang.String KEY_USER_ID
          *Private*
 
Fields inherited from class sfs2x.client.requests.BaseRequest
AddBuddy, AdminMessage, AutoJoin, BanUser, BlockBuddy, CallExtension, ChangeRoomCapacity, ChangeRoomName, ChangeRoomPassword, CreateRoom, CreateSFSGame, FindRooms, FindUsers, GenericMessage, GetRoomList, GoOnline, Handshake, InitBuddyList, InvitationReply, InviteUser, JoinRoom, KEY_ERROR_CODE, KEY_ERROR_PARAMS, KickUser, LeaveRoom, Login, Logout, ManualDisconnection, ModeratorMessage, ObjectMessage, PingPong, PlayerToSpectator, PrivateMessage, PublicMessage, QuickJoinGame, RemoveBuddy, SetBuddyVariables, SetRoomVariables, SetUserVariables, SpectatorToPlayer, SubscribeRoomGroup, UnsubscribeRoomGroup
 
Constructor Summary
BanUserRequest(int userId)
           
BanUserRequest(int userId, java.lang.String message)
           
BanUserRequest(int userId, java.lang.String message, int banMode)
           
BanUserRequest(int userId, java.lang.String message, int banMode, int delaySeconds)
           
BanUserRequest(int userId, java.lang.String message, int banMode, int delaySeconds, int durationHours)
          Creates a new BanUserRequest instance.
 
Method Summary
 void execute(SmartFox sfs)
          *Private*
 void validate(SmartFox sfs)
          *Private*
 
Methods inherited from class sfs2x.client.requests.BaseRequest
getId, getMessage, getTargetController, isEncrypted, setEncrypted, setId, setTargetController
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

KEY_USER_ID

public static final java.lang.String KEY_USER_ID
*Private*

See Also:
Constant Field Values

KEY_MESSAGE

public static final java.lang.String KEY_MESSAGE
*Private*

See Also:
Constant Field Values

KEY_DELAY

public static final java.lang.String KEY_DELAY
*Private*

See Also:
Constant Field Values

KEY_BAN_MODE

public static final java.lang.String KEY_BAN_MODE
*Private*

See Also:
Constant Field Values

KEY_BAN_DURATION_HOURS

public static final java.lang.String KEY_BAN_DURATION_HOURS
*Private*

See Also:
Constant Field Values
Constructor Detail

BanUserRequest

public BanUserRequest(int userId,
                      java.lang.String message,
                      int banMode,
                      int delaySeconds,
                      int durationHours)
Creates a new BanUserRequest instance. The instance must be passed to the SmartFox.send() method for the request to be performed.

Parameters:
userId - The id of the user to be banned.
message - A custom message to be delivered to the user before banning him; if null, the default message configured in the SmartFoxServer 2X Administration Tool is used.
banMode - One of the ban modes defined in the BanMode class.
delaySeconds - The number of seconds after which the user is banned after receiving the ban message.
durationHours - The duration of the banishment, expressed in hours.
See Also:
SmartFox.send(sfs2x.client.requests.IRequest), BanMode

BanUserRequest

public BanUserRequest(int userId,
                      java.lang.String message,
                      int banMode,
                      int delaySeconds)

BanUserRequest

public BanUserRequest(int userId,
                      java.lang.String message,
                      int banMode)

BanUserRequest

public BanUserRequest(int userId,
                      java.lang.String message)

BanUserRequest

public BanUserRequest(int userId)
Method Detail

validate

public void validate(SmartFox sfs)
              throws sfs2x.client.exceptions.SFSValidationException
*Private*

Throws:
sfs2x.client.exceptions.SFSValidationException

execute

public void execute(SmartFox sfs)
*Private*