sfs2x.client.entities.managers
Interface IRoomManager

All Known Implementing Classes:
SFSRoomManager

public interface IRoomManager

The IRoomManager interface defines all the methods and properties exposed by the client-side manager of the SmartFoxServer Room entities.

In the SmartFoxServer 2X client API this interface is implemented by the SFSRoomManager class. Read the class description for additional informations.

See Also:
SFSRoomManager

Method Summary
 void addGroup(java.lang.String groupId)
          * API internal usage only *
 void addRoom(Room room)
          * API internal usage only *
 void addRoom(Room room, boolean addGroupIfMissing)
          * API internal usage only *
 void changeRoomCapacity(Room room, int maxUsers, int maxSpect)
          * API internal usage only *
 void changeRoomName(Room room, java.lang.String newName)
          * API internal usage only *
 void changeRoomPasswordState(Room room, boolean isPassProtected)
          * API internal usage only *
 boolean containsGroup(java.lang.String groupId)
          Indicates whether the specified Group has been subscribed by the client or not.
 boolean containsRoom(int id)
          Indicates whether a Room exists in the Rooms list or not.
 boolean containsRoom(java.lang.String name)
          Indicates whether a Room exists in the Rooms list or not.
 boolean containsRoomInGroup(int roomId, java.lang.String groupId)
          Indicates whether the Rooms list contains a Room belonging to the specified Group or not.
 boolean containsRoomInGroup(java.lang.String roomName, java.lang.String groupId)
          Indicates whether the Rooms list contains a Room belonging to the specified Group or not.
 java.util.List<Room> getJoinedRooms()
          Returns a list of Rooms currently joined by the client.
 java.lang.String getOwnerZone()
          * API internal usage only *
 Room getRoomById(int id)
          Retrieves a Room object from its id.
 Room getRoomByName(java.lang.String name)
          Retrieves a Room object from its name.
 int getRoomCount()
          Returns the current number of Rooms in the Rooms list.
 java.util.List<java.lang.String> getRoomGroups()
          Returns the names of Room Groups currently subscribed by the client.
 java.util.List<Room> getRoomList()
          Returns a list of Rooms currently "known" by the client.
 java.util.List<Room> getRoomListFromGroup(java.lang.String groupId)
          Retrieves the list of Rooms which are part of the specified Room Group.
 ISmartFox getSmartFox()
          * API internal usage only *
 java.util.List<Room> getUserRooms(User user)
          Retrieves a list of Rooms joined by the specified user.
 void removeGroup(java.lang.String groupId)
          * API internal usage only *
 void removeRoom(Room room)
          * API internal usage only *
 void removeRoomById(int id)
          * API internal usage only *
 void removeRoomByName(java.lang.String name)
          * API internal usage only *
 void removeUser(User user)
          * API internal usage only *
 Room replaceRoom(Room room)
          * API internal usage only *
 Room replaceRoom(Room room, boolean addToGroupIfMissing)
          * API internal usage only *
 

Method Detail

getOwnerZone

java.lang.String getOwnerZone()
* API internal usage only *


addRoom

void addRoom(Room room)
* API internal usage only *


addRoom

void addRoom(Room room,
             boolean addGroupIfMissing)
* API internal usage only *


addGroup

void addGroup(java.lang.String groupId)
* API internal usage only *


replaceRoom

Room replaceRoom(Room room)
* API internal usage only *


replaceRoom

Room replaceRoom(Room room,
                 boolean addToGroupIfMissing)
* API internal usage only *


removeGroup

void removeGroup(java.lang.String groupId)
* API internal usage only *


containsGroup

boolean containsGroup(java.lang.String groupId)
Indicates whether the specified Group has been subscribed by the client or not.

Parameters:
groupId - The name of the Group.
Returns:
true if the client subscribed the passed Group.

containsRoom

boolean containsRoom(int id)
Indicates whether a Room exists in the Rooms list or not.

Parameters:
id - The id of the Room object whose presence in the Rooms list is to be tested.
Returns:
true if the passed Room exists in the Rooms list.
See Also:
Room.getId()

containsRoom

boolean containsRoom(java.lang.String name)
Indicates whether a Room exists in the Rooms list or not.

Parameters:
name - The name of the Room object whose presence in the Rooms list is to be tested.
Returns:
true if the passed Room exists in the Rooms list.
See Also:
Room.getName()

containsRoomInGroup

boolean containsRoomInGroup(int roomId,
                            java.lang.String groupId)
Indicates whether the Rooms list contains a Room belonging to the specified Group or not.

Parameters:
roomId - The id of the Room object whose presence in the Rooms list is to be tested.
groupId - The name of the Group to which the specified Room must belong.
Returns:
true if the Rooms list contains the passed Room and it belongs to the specified Group.
See Also:
Room.getId(), Room.getGroupId()

containsRoomInGroup

boolean containsRoomInGroup(java.lang.String roomName,
                            java.lang.String groupId)
Indicates whether the Rooms list contains a Room belonging to the specified Group or not.

Parameters:
roomName - The name of the Room object whose presence in the Rooms list is to be tested.
groupId - The name of the Group to which the specified Room must belong.
Returns:
true if the Rooms list contains the passed Room and it belongs to the specified Group.
See Also:
Room.getName(), Room.getGroupId()

changeRoomName

void changeRoomName(Room room,
                    java.lang.String newName)
* API internal usage only *


changeRoomPasswordState

void changeRoomPasswordState(Room room,
                             boolean isPassProtected)
* API internal usage only *


changeRoomCapacity

void changeRoomCapacity(Room room,
                        int maxUsers,
                        int maxSpect)
* API internal usage only *


getRoomById

Room getRoomById(int id)
Retrieves a Room object from its id.

Parameters:
id - The id of the Room.
Returns:
An object representing the requested Room; null if no Room object with the passed id exists in the Rooms list.

Example
The following example retrieves a Room object and traces its name:

 int roomId = 3;
 Room room = sfs.getRoomById(roomId);
 System.out.println("The name of Room " + roomId + " is " + room.getName());
 
See Also:
getRoomByName(String)

getRoomByName

Room getRoomByName(java.lang.String name)
Retrieves a Room object from its name.

Parameters:
name - The name of the Room.
Returns:
An object representing the requested Room; null if no Room object with the passed name exists in the Rooms list.

Example
The following example retrieves a Room object and traces its id:

 String roomName = "The Lobby";
 Room room = sfs.getRoomByName(roomName);
 System.out.println("The ID of Room '" + roomName + "' is " + room.getId());
 
See Also:
getRoomById(int)

getRoomList

java.util.List<Room> getRoomList()
Returns a list of Rooms currently "known" by the client. The list contains all the Rooms that are currently joined and all the Rooms belonging to the Room Groups that have been subscribed.

NOTE: at login time, the client automatically subscribes all the Room Groups specified in the Zone's Default Room Groups setting.

Returns:
The list of the available Room objects.
See Also:
Room, JoinRoomRequest, SubscribeRoomGroupRequest, UnsubscribeRoomGroupRequest

getRoomCount

int getRoomCount()
Returns the current number of Rooms in the Rooms list.

Returns:
The number of Rooms in the Rooms list.

getRoomGroups

java.util.List<java.lang.String> getRoomGroups()
Returns the names of Room Groups currently subscribed by the client.

NOTE: at login time, the client automatically subscribes all the Room Groups specified in the Zone's Default Room Groups setting.

Returns:
A list of Room Group names.
See Also:
Room.getGroupId(), SubscribeRoomGroupRequest, UnsubscribeRoomGroupRequest

getRoomListFromGroup

java.util.List<Room> getRoomListFromGroup(java.lang.String groupId)
Retrieves the list of Rooms which are part of the specified Room Group.

Parameters:
groupId - The name of the Group.
Returns:
The list of Room objects belonging to the passed Room Group.
See Also:
Room

getJoinedRooms

java.util.List<Room> getJoinedRooms()
Returns a list of Rooms currently joined by the client.

Returns:
The list of Room objects representing the Rooms currently joined by the client.
See Also:
Room, JoinRoomRequest

getUserRooms

java.util.List<Room> getUserRooms(User user)
Retrieves a list of Rooms joined by the specified user. The list contains only those Rooms "known" by the Room Manager; the user might have joined others the client is not aware of.

Parameters:
user - A User object representing the user to look for in the current Rooms list.
Returns:
The list of Rooms joined by the passed user.

removeRoom

void removeRoom(Room room)
* API internal usage only *


removeRoomById

void removeRoomById(int id)
* API internal usage only *


removeRoomByName

void removeRoomByName(java.lang.String name)
* API internal usage only *


removeUser

void removeUser(User user)
* API internal usage only *


getSmartFox

ISmartFox getSmartFox()
* API internal usage only *