org.jbrain.qlink.chat
Class AbstractRoomDelegate

java.lang.Object
  |
  +--org.jbrain.qlink.chat.AbstractRoomDelegate
All Implemented Interfaces:
QRoom
Direct Known Subclasses:
RoomDelegate

public abstract class AbstractRoomDelegate
extends java.lang.Object
implements QRoom


Field Summary
protected  java.util.ArrayList _alGames
           
protected  java.util.Hashtable _htUsers
           
protected  java.util.ArrayList _listeners
           
protected static java.lang.String SYS_NAME
           
 
Constructor Summary
AbstractRoomDelegate(java.lang.String name, boolean bPublic, boolean bLocked)
           
 
Method Summary
 void addEventListener(RoomEventListener listener)
           
 QSeat changeUserName(QSeat user, org.jbrain.qlink.user.QHandle handle, ChatProfile profile)
           
abstract  int getCapacity()
           
 GameInfo[] getGameInfoList()
           
 java.lang.String getInfo()
           
 java.lang.String getName()
           
protected  int getNumber(java.lang.String string)
           
 int getPopulation()
           
 QSeat getSeatInfo(org.jbrain.qlink.user.QHandle handle)
           
 boolean isFull()
           
protected  boolean isInRoom(QSeat user)
           
 boolean isLocked()
           
 boolean isPublicRoom()
           
protected  void leaveSeat(QSeat user)
           
protected  void processChatEvent(ChatEvent event)
           
protected  void processCommand(SeatInfo info, java.lang.String text)
           
protected  void processEvent(RoomEvent event)
           
protected  void processJoinEvent(JoinEvent event)
           
protected  void processQuestionStateEvent(QuestionStateEvent event)
           
protected  void processSystemMessageEvent(SystemMessageEvent event)
           
 void removeEventListener(RoomEventListener listener)
           
 void removeUser(QSeat user)
           
 void say(QSeat info, java.lang.String text)
           
protected abstract  void send(RoomEvent event)
           
protected  void sendSystemMessage(QSeat seat, java.util.List l)
           
protected  void takeSeat(QSeat user)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jbrain.qlink.chat.QRoom
addUser, addUserToGame, createGame, destroyGame, getExtSeatInfoList, getGame, getSeatInfoList, isManagedRoom, observeGame, removeUserFromGame
 

Field Detail

SYS_NAME

protected static final java.lang.String SYS_NAME
See Also:
Constant Field Values

_htUsers

protected java.util.Hashtable _htUsers

_listeners

protected java.util.ArrayList _listeners

_alGames

protected java.util.ArrayList _alGames
Constructor Detail

AbstractRoomDelegate

public AbstractRoomDelegate(java.lang.String name,
                            boolean bPublic,
                            boolean bLocked)
Method Detail

getName

public java.lang.String getName()
Specified by:
getName in interface QRoom
Returns:

getPopulation

public int getPopulation()
Specified by:
getPopulation in interface QRoom
Returns:

isLocked

public boolean isLocked()
Specified by:
isLocked in interface QRoom
Returns:

isPublicRoom

public boolean isPublicRoom()
Specified by:
isPublicRoom in interface QRoom
Returns:

isFull

public boolean isFull()
Specified by:
isFull in interface QRoom
Returns:

getCapacity

public abstract int getCapacity()
Returns:

removeEventListener

public void removeEventListener(RoomEventListener listener)
Specified by:
removeEventListener in interface QRoom

addEventListener

public void addEventListener(RoomEventListener listener)
Specified by:
addEventListener in interface QRoom

getInfo

public java.lang.String getInfo()
Specified by:
getInfo in interface QRoom

say

public void say(QSeat info,
                java.lang.String text)
Specified by:
say in interface QRoom

getGameInfoList

public GameInfo[] getGameInfoList()
Specified by:
getGameInfoList in interface QRoom
Returns:

getSeatInfo

public QSeat getSeatInfo(org.jbrain.qlink.user.QHandle handle)
Specified by:
getSeatInfo in interface QRoom

removeUser

public void removeUser(QSeat user)
Specified by:
removeUser in interface QRoom

changeUserName

public QSeat changeUserName(QSeat user,
                            org.jbrain.qlink.user.QHandle handle,
                            ChatProfile profile)
Specified by:
changeUserName in interface QRoom

send

protected abstract void send(RoomEvent event)
Parameters:
event -

sendSystemMessage

protected void sendSystemMessage(QSeat seat,
                                 java.util.List l)
Parameters:
seat -

getNumber

protected int getNumber(java.lang.String string)

processEvent

protected void processEvent(RoomEvent event)

processJoinEvent

protected void processJoinEvent(JoinEvent event)

processQuestionStateEvent

protected void processQuestionStateEvent(QuestionStateEvent event)

processSystemMessageEvent

protected void processSystemMessageEvent(SystemMessageEvent event)

processChatEvent

protected void processChatEvent(ChatEvent event)

processCommand

protected void processCommand(SeatInfo info,
                              java.lang.String text)

isInRoom

protected boolean isInRoom(QSeat user)
Parameters:
user -
Returns:

takeSeat

protected void takeSeat(QSeat user)
Parameters:
user -

leaveSeat

protected void leaveSeat(QSeat user)
Parameters:
user -