org.starhope.appius.game
Class Room

java.lang.Object
  extended by org.starhope.appius.sql.SQLPeerDatum
      extended by org.starhope.appius.game.Room
All Implemented Interfaces:
Serializable, Comparable<AbstractRoom>, AbstractRoom, HasVariables

public class Room
extends SQLPeerDatum
implements Comparable<AbstractRoom>, HasVariables, AbstractRoom

WRITEME: The documentation for this type (Room) is incomplete. (brpocock, Aug 18, 2009)

Author:
brpocock
See Also:
Serialized Form

Field Summary
private static String fairgroundsImage
          WRITEME
private static String fairgroundsLabel
          WRITEME
private static String fairgroundsWarp
          WRITEME
private  String filename
          The base name of the room's SWF file.
private  GameEvent gameEvent
          The Game Event in this room, or (usually) null
private  AbstractUser homeOwner
           The owner of a room; usually null for public rooms, or non-null for users' houses.
private  boolean iAmInLimbo
          Determine whether this room is a limbo room
private  String moniker
          The moniker / unique identifier for this room.
private  int movieTime
          in seconds
private  String movieURL
          TODO: document this field (brpocock, Nov 13, 2009) movieURL (Room)
private  String music
          The background music for the room
private  int myID
          TODO: document this field (brpocock, Nov 13, 2009) myID (Room)
private  String nowPlaying
          TODO: document this field (brpocock, Nov 13, 2009) nowPlaying (Room)
private  ConcurrentSkipListSet<RoomListener> observers
          Non-Users who are present to pay attention to things happening in the room
private  String overlay
          The SWF file to be displayed as a weather overlay.
private  int roomIndex
          WRITEME: document this field (brpocock, Jan 14, 2010) roomIndex (Room)
private  ConcurrentHashMap<String,String> roomVariables
          WRITEME
private static int safeRoomNum
          TODO: document this field (brpocock, Nov 13, 2009) safeRoomNum (Room)
private static long serialVersionUID
          TODO: document this field (brpocock, Oct 5, 2009) serialVersionUID (long)
private  String sky
          The SWF file to be displayed as a sky background.
private  boolean skyVisible
          Whether the sky is visible in this room.
private  String title
          WRITEME
private  ConcurrentSkipListSet<Integer> userList
          The list of user ID's of all users in this room.
private  AbstractZone zone
          The zone in which this room exists
 
Constructor Summary
  Room(AbstractZone homeZone)
           
private Room(ResultSet rs, AbstractZone newZone)
          Instantiate a room based upon the theoretical room dataset from the database and the Zone into which it should be instantiated.
  Room(String newRoomMoniker, AbstractZone newRoomZone)
           
 
Method Summary
 void add(GameEvent game)
          This is an overriding method.
 int compareTo(AbstractRoom other)
           
 boolean contains(AbstractUser thing)
          This is an overriding method.
static Room create(String roomName, AbstractZone zone)
          TODO: document this method (brpocock, Oct 19, 2009)
static Room create(String roomName, AbstractZone abstractZone, boolean mustExist)
           
 void deleteVariable(String string)
          This is an overriding method.
 void destroySelf()
          This is an overriding method.
 boolean equals(AbstractRoom other)
          This is an overriding method.
 boolean equals(Object other)
          This is an overriding method.
 void flush()
          This is an overriding method.
 void fromJSON(org.json.JSONObject jso)
          This is an overriding method.
 Set<RoomListener> getAllListeners()
          This is an overriding method.
static AbstractRoom[] getAllRooms()
           
 Collection<AbstractUser> getAllUsers()
          This is an overriding method.
private  HashMap<String,String> getArbitraryVars()
          Load arbitrary room variable values from the database
static Room getByMoniker(String moniker, Zone zone)
           
protected  String getCacheUniqueID()
          This is an overriding method.
 String getDebugName()
          This is an overriding method.
private  Set<AbstractUser> getEverythingInRoom()
          TODO: document this method (brpocock, Nov 24, 2009)
private  void getFairground()
          WRITEME: document this method (brpocock, Aug 31, 2009)
 String getFilename()
          This is an overriding method.
 GameEvent getGameEvent()
          This is an overriding method.
 int getId()
          Deprecated. 
 int getID()
          This is an overriding method.
 Collection<RoomListener> getListeners()
          This is an overriding method.
 int getMaxUsers()
          This is an overriding method.
 String getMoniker()
          This is an overriding method.
private  void getMovie()
          WRITEME: document this method (brpocock, Aug 31, 2009)
 String getMusic()
          This is an overriding method.
 String getName()
          This is an overriding method.
private static int getNextID()
          TODO: document this method (brpocock, Oct 19, 2009)
 String getOverlay()
          This is an overriding method.
 AbstractUser getOwner()
           
 int getRoomIndex()
           Get the index of this room within the set of rooms to which it belongs.
private  String getRoomJoinSFSXML(User user)
          TODO: document this method (brpocock, Dec 29, 2009)
 String getSky()
          This is an overriding method.
private  org.json.JSONObject getSuperTootBots_JSON()
          Deprecated. Needs to be moved someplace more appropriate ... not yet determined ...
 org.json.JSONObject getSuperTootBots(int padding)
          Deprecated. Does not belong in Room ... but will be removed when NPC's work and Super Toot Bots can be removed from the codebase ... don't count on this being around forever, but it won't disappear as long as Super Toot Bots exist.
 String getTitle()
          This is an overriding method.
 int getUserCount()
          This is an overriding method.
 String getVariable(String string)
          This is an overriding method.
 HashMap<String,String> getVariables()
          This is an overriding method.
 AbstractZone getZone()
          This is an overriding method.
 int hashCode()
          This is an overriding method.
 boolean isLimbo()
          This is an overriding method.
 boolean isSkyVisible()
          This is an overriding method.
 void join(RoomListener thing)
          This is an overriding method.
 void part(RoomListener thing)
          This is an overriding method.
 void sendGameAction(User from, org.json.JSONObject data)
          This is an overriding method.
 void sendPublicMessage(AbstractUser from, String speech)
          This is an overriding method.
protected  void set(ResultSet rs)
          This is an overriding method.
 void setFilename(String filename1)
          This is an overriding method.
 void setLimbo(boolean b)
          This is an overriding method.
 void setMoniker(String moniker1)
          This is an overriding method.
 void setMusic(String music1)
          This is an overriding method.
 void setOverlay(String overlay1)
          This is an overriding method.
 void setOwner(AbstractUser newHomeOwner)
          TODO: document this method (brpocock, Jan 13, 2010)
 void setRoomIndex(int newRoomIndex)
           
 void setRoomVars()
          This is an overriding method.
 void setSky(String sky1)
          This is an overriding method.
 void setSkyVisible(boolean skyVisible1)
          This is an overriding method.
 void setTitle(String newTitle)
          This is an overriding method.
 void setVariable(Map.Entry<String,String> var)
          This is an overriding method.
 void setVariable(String varName, String varValue)
          This is an overriding method.
 void setVariables(Map<String,String> map)
          This is an overriding method.
private  void superbot_fetchBasicInfo(ResultSet rs, ResultSet botGot, org.json.JSONObject bot, org.json.JSONObject speech, org.json.JSONObject avatar)
          TODO: document this method (brpocock, Dec 29, 2009)
private  void superbot_fetchClothing(ResultSet rs, org.json.JSONObject clothes)
          TODO: document this method (brpocock, Dec 29, 2009)
private  void superbot_fetchPattern(ResultSet rs, org.json.JSONObject clothes)
          TODO: document this method (brpocock, Dec 29, 2009)
private  org.json.JSONObject superbot_fetchSpeech(PreparedStatement getSpeech, ResultSet rs)
          TODO: document this method (brpocock, Dec 29, 2009)
 org.json.JSONObject toJSON()
          This is an overriding method.
private  void validateUserList()
          TODO: document this method (brpocock, Oct 23, 2009)
 
Methods inherited from class org.starhope.appius.sql.SQLPeerDatum
changed, findInCache, get, saveInCache, set
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fairgroundsImage

private static String fairgroundsImage
WRITEME


fairgroundsLabel

private static String fairgroundsLabel
WRITEME


fairgroundsWarp

private static String fairgroundsWarp
WRITEME


safeRoomNum

private static int safeRoomNum
TODO: document this field (brpocock, Nov 13, 2009) safeRoomNum (Room)


serialVersionUID

private static final long serialVersionUID
TODO: document this field (brpocock, Oct 5, 2009) serialVersionUID (long)

See Also:
Constant Field Values

filename

private String filename
The base name of the room's SWF file. This is going to be in a given resource folder for rooms.


gameEvent

private GameEvent gameEvent
The Game Event in this room, or (usually) null


homeOwner

private AbstractUser homeOwner

The owner of a room; usually null for public rooms, or non-null for users' houses.

The special room variable homeOwner reflects this.


iAmInLimbo

private transient boolean iAmInLimbo
Determine whether this room is a limbo room

See Also:
discussion of Limbo on AbstractRoom.isLimbo ()

moniker

private String moniker
The moniker / unique identifier for this room.


movieTime

private int movieTime
in seconds


movieURL

private String movieURL
TODO: document this field (brpocock, Nov 13, 2009) movieURL (Room)


music

private String music
The background music for the room


myID

private int myID
TODO: document this field (brpocock, Nov 13, 2009) myID (Room)


nowPlaying

private String nowPlaying
TODO: document this field (brpocock, Nov 13, 2009) nowPlaying (Room)


observers

private final ConcurrentSkipListSet<RoomListener> observers
Non-Users who are present to pay attention to things happening in the room


overlay

private String overlay
The SWF file to be displayed as a weather overlay.


roomIndex

private int roomIndex
WRITEME: document this field (brpocock, Jan 14, 2010) roomIndex (Room)


roomVariables

private final ConcurrentHashMap<String,String> roomVariables
WRITEME


sky

private String sky
The SWF file to be displayed as a sky background.


skyVisible

private boolean skyVisible
Whether the sky is visible in this room.


title

private String title
WRITEME


userList

private final ConcurrentSkipListSet<Integer> userList
The list of user ID's of all users in this room. Using user ID's instead of user objects saves from having fallow references.


zone

private transient AbstractZone zone
The zone in which this room exists

Constructor Detail

Room

public Room(AbstractZone homeZone)
Parameters:
homeZone - WRITEME

Room

private Room(ResultSet rs,
             AbstractZone newZone)
      throws SQLException
Instantiate a room based upon the theoretical room dataset from the database and the Zone into which it should be instantiated.

Parameters:
rs - The theoretical room dataset
newZone - The zone into which the room should be instantiated
Throws:
SQLException - if the room dataset can't be interpreted

Room

public Room(String newRoomMoniker,
            AbstractZone newRoomZone)
     throws NotFoundException
Parameters:
newRoomMoniker - The moniker of the room to be instantiated
newRoomZone - WRITEME
Throws:
NotFoundException - if there is no room in the database with the given moniker
Method Detail

create

public static Room create(String roomName,
                          AbstractZone zone)
TODO: document this method (brpocock, Oct 19, 2009)

Creates only temporary/anonymous rooms without referring to the database.

Parameters:
roomName - the moniker of the room
zone - the zone in which the room is to be created
Returns:
WRITEME
See Also:
create(String, AbstractZone, boolean)

create

public static Room create(String roomName,
                          AbstractZone abstractZone,
                          boolean mustExist)
                   throws NotFoundException
Parameters:
roomName - WRITEME
abstractZone - WRITEME
mustExist - If true, a named room from the database. If false, an anonymous/temporary room.
Returns:
WRITEME
Throws:
NotFoundException - Room moniker not found

getAllRooms

public static AbstractRoom[] getAllRooms()
Returns:
an array of all rooms in the game

getByMoniker

public static Room getByMoniker(String moniker,
                                Zone zone)
Parameters:
moniker - the moniker value for this room
zone - the zone containing this room
Returns:
the room object

getNextID

private static int getNextID()
TODO: document this method (brpocock, Oct 19, 2009)

Returns:
WRITEME

add

public void add(GameEvent game)
This is an overriding method.

Specified by:
add in interface AbstractRoom
Parameters:
game - WRITEME
See Also:
AbstractRoom.add(org.starhope.appius.game.GameEvent)

compareTo

public int compareTo(AbstractRoom other)
Specified by:
compareTo in interface Comparable<AbstractRoom>
See Also:
Comparable.compareTo(Object)

contains

public boolean contains(AbstractUser thing)
This is an overriding method.

Specified by:
contains in interface AbstractRoom
Parameters:
thing - who
Returns:
true if they are in this room
See Also:
AbstractRoom.contains(org.starhope.appius.user.AbstractUser)

deleteVariable

public void deleteVariable(String string)
This is an overriding method.

Specified by:
deleteVariable in interface AbstractRoom
Specified by:
deleteVariable in interface HasVariables
Parameters:
string - WRITEME
See Also:
AbstractRoom.deleteVariable(java.lang.String)

destroySelf

public void destroySelf()
This is an overriding method.

Specified by:
destroySelf in interface AbstractRoom
See Also:
AbstractRoom.destroySelf()

equals

public boolean equals(AbstractRoom other)
This is an overriding method.

Parameters:
other - the other room to which this one will be compared
Returns:
true, if the two objects represent the same room instance (in the same Zone, &c.)
See Also:
Object.equals(Object)

equals

public boolean equals(Object other)
This is an overriding method.

Overrides:
equals in class Object
See Also:
org.starhope.appius.game.AbstractRoom#equals(java.lang.Object)

flush

public void flush()
This is an overriding method.

Specified by:
flush in interface AbstractRoom
Specified by:
flush in class SQLPeerDatum
See Also:
AbstractRoom.flush()

fromJSON

public void fromJSON(org.json.JSONObject jso)
              throws org.json.JSONException
This is an overriding method.

Specified by:
fromJSON in interface AbstractRoom
Parameters:
jso - Serialized form
Throws:
org.json.JSONException - if the incoming data isn't in the right form
See Also:
AbstractRoom.fromJSON(org.json.JSONObject)

getAllListeners

public Set<RoomListener> getAllListeners()
This is an overriding method.

Specified by:
getAllListeners in interface AbstractRoom
Returns:
WRITEME
See Also:
AbstractRoom.getAllListeners()

getAllUsers

public Collection<AbstractUser> getAllUsers()
This is an overriding method.

Specified by:
getAllUsers in interface AbstractRoom
Returns:
WRITEME
See Also:
AbstractRoom.getAllUsers()

getArbitraryVars

private HashMap<String,String> getArbitraryVars()
Load arbitrary room variable values from the database

Returns:
the set of variables for this room

getCacheUniqueID

protected String getCacheUniqueID()
This is an overriding method.

Specified by:
getCacheUniqueID in class SQLPeerDatum
Returns:
The local (Stringified) version of an unique ID; usually the database ID column
See Also:
SQLPeerDatum.getCacheUniqueID()

getDebugName

public String getDebugName()
This is an overriding method.

Specified by:
getDebugName in interface AbstractRoom
Returns:
A string uniquely identifying this room for debugging purposes.
See Also:
AbstractRoom.getDebugName()

getEverythingInRoom

private Set<AbstractUser> getEverythingInRoom()
TODO: document this method (brpocock, Nov 24, 2009)

Returns:
All things in the room

getFairground

private void getFairground()
                    throws SQLException
WRITEME: document this method (brpocock, Aug 31, 2009)

Throws:
SQLException - WRITEME

getFilename

public String getFilename()
This is an overriding method.

Specified by:
getFilename in interface AbstractRoom
Returns:
the filename
See Also:
AbstractRoom.getFilename()

getGameEvent

public GameEvent getGameEvent()
This is an overriding method.

Specified by:
getGameEvent in interface AbstractRoom
Returns:
The Game Event in this room, or (usually) null
See Also:
AbstractRoom.getGameEvent()

getId

@Deprecated
public int getId()
Deprecated. 

This is an overriding method.

Specified by:
getId in interface AbstractRoom
Returns:
the room's ID number
See Also:
AbstractRoom.getId()

getID

public int getID()
This is an overriding method.

Specified by:
getID in interface AbstractRoom
Returns:
the room's ID number
See Also:
AbstractRoom.getID()

getListeners

public Collection<RoomListener> getListeners()
This is an overriding method.

Specified by:
getListeners in interface AbstractRoom
Returns:
all RoomListeners, including all users and observers
See Also:
AbstractRoom.getListeners()

getMaxUsers

public int getMaxUsers()
This is an overriding method.

Specified by:
getMaxUsers in interface AbstractRoom
Returns:
WRITEME
See Also:
AbstractRoom.getMaxUsers()

getMoniker

public String getMoniker()
This is an overriding method.

Specified by:
getMoniker in interface AbstractRoom
Returns:
the moniker
See Also:
AbstractRoom.getMoniker()

getMovie

private void getMovie()
               throws SQLException
WRITEME: document this method (brpocock, Aug 31, 2009)

Throws:
SQLException - WRITEME

getMusic

public String getMusic()
This is an overriding method.

Specified by:
getMusic in interface AbstractRoom
Returns:
WRITEME
See Also:
AbstractRoom.getMusic()

getName

public String getName()
This is an overriding method.

Specified by:
getName in interface AbstractRoom
Returns:
WRITEME
See Also:
AbstractRoom.getName()

getOverlay

public String getOverlay()
This is an overriding method.

Specified by:
getOverlay in interface AbstractRoom
Returns:
the overlay
See Also:
AbstractRoom.getOverlay()

getOwner

public AbstractUser getOwner()
Specified by:
getOwner in interface AbstractRoom
Returns:
the owner of this room, if this is a private (user-created) room; else, null.
See Also:
AbstractRoom.getOwner()

getRoomIndex

public int getRoomIndex()
Description copied from interface: AbstractRoom

Get the index of this room within the set of rooms to which it belongs.

For user-created rooms, this is the index of the room number within the user's “house,” typically 0 for the first room, 1 for the yard, and 2 or more for additional rooms.

The meaning of this index varies depending upon context; presently, it is only meaningful for user houses.

Specified by:
getRoomIndex in interface AbstractRoom
Returns:
the index of this room
See Also:
AbstractRoom.getRoomIndex()

getRoomJoinSFSXML

private String getRoomJoinSFSXML(User user)
TODO: document this method (brpocock, Dec 29, 2009)

Parameters:
user - WRITEME
Returns:
WRITEME

getSky

public String getSky()
This is an overriding method.

Specified by:
getSky in interface AbstractRoom
Returns:
the file to load for the sky of this room
See Also:
AbstractRoom.getSky()

getSuperTootBots

@Deprecated
public org.json.JSONObject getSuperTootBots(int padding)
                                     throws SQLException,
                                            org.json.JSONException
Deprecated. Does not belong in Room ... but will be removed when NPC's work and Super Toot Bots can be removed from the codebase ... don't count on this being around forever, but it won't disappear as long as Super Toot Bots exist.

Obtain Super Toot Bots for a room. FIXME: This doesn't belong here.

Parameters:
padding - WRITEME
Returns:
{ from: bots, status: true, bots: { "botname": name, avatar: { avatar: "toot.swf", clothes: { 0: { color: patcol, id: patitem }, 1: { id: clothes }, ... }, colors: { 0: base, 1: extra } }, speech : { 0: "blah" ,... } , x: startx, y: starty, walkFreq: NN, talkFreq: NNN, facing: S} }
Throws:
SQLException - WRITEME
org.json.JSONException - WRITEME

getSuperTootBots_JSON

@Deprecated
private org.json.JSONObject getSuperTootBots_JSON()
Deprecated. Needs to be moved someplace more appropriate ... not yet determined ...

Returns:
the JSON structure describing any SuperTootBoys presently in the room

getTitle

public String getTitle()
This is an overriding method.

Specified by:
getTitle in interface AbstractRoom
Returns:
the user-visible title of the room
See Also:
AbstractRoom.getTitle()

getUserCount

public int getUserCount()
This is an overriding method.

Specified by:
getUserCount in interface AbstractRoom
Returns:
the number of users in the room
See Also:
AbstractRoom.getUserCount()

getVariable

public String getVariable(String string)
This is an overriding method.

Specified by:
getVariable in interface AbstractRoom
Specified by:
getVariable in interface HasVariables
Parameters:
string - WRITEME
Returns:
WRITEME
See Also:
AbstractRoom.getVariable(java.lang.String)

getVariables

public HashMap<String,String> getVariables()
This is an overriding method.

Specified by:
getVariables in interface AbstractRoom
Returns:
room variables
See Also:
AbstractRoom.getVariables()

getZone

public AbstractZone getZone()
This is an overriding method.

Specified by:
getZone in interface AbstractRoom
Returns:
The zone in which this Room is found
See Also:
AbstractRoom.getZone()

hashCode

public int hashCode()
This is an overriding method.

Specified by:
hashCode in interface AbstractRoom
Overrides:
hashCode in class Object
See Also:
AbstractRoom.hashCode()

isLimbo

public boolean isLimbo()
This is an overriding method.

Specified by:
isLimbo in interface AbstractRoom
Returns:
true, if this is a limbo room
See Also:
AbstractRoom.isLimbo()

isSkyVisible

public boolean isSkyVisible()
This is an overriding method.

Specified by:
isSkyVisible in interface AbstractRoom
Returns:
true, if the sky is visible in this room; else, false
See Also:
AbstractRoom.isSkyVisible()

join

public void join(RoomListener thing)
This is an overriding method.

Specified by:
join in interface AbstractRoom
Parameters:
thing - the thing that has joined the room
See Also:
AbstractRoom.join(org.starhope.appius.game.RoomListener)

part

public void part(RoomListener thing)
This is an overriding method.

Specified by:
part in interface AbstractRoom
Parameters:
thing - the thing which wants to stop listening to the room
See Also:
AbstractRoom.part(RoomListener)

sendGameAction

public void sendGameAction(User from,
                           org.json.JSONObject data)
                    throws org.json.JSONException
This is an overriding method.

Specified by:
sendGameAction in interface AbstractRoom
Parameters:
from - WRITEME
data - WRITEME
Throws:
org.json.JSONException - if the action can't be represented in JSON
See Also:
AbstractRoom.sendGameAction(org.starhope.appius.user.User, org.json.JSONObject)

sendPublicMessage

public void sendPublicMessage(AbstractUser from,
                              String speech)
This is an overriding method.

Specified by:
sendPublicMessage in interface AbstractRoom
Parameters:
from - WRITEME
speech - WRITEME
See Also:
AbstractRoom.sendPublicMessage(org.starhope.appius.user.AbstractUser, java.lang.String)

set

protected void set(ResultSet rs)
            throws SQLException
This is an overriding method.

Specified by:
set in class SQLPeerDatum
Parameters:
rs - The result of an SQL query, with the cursor already pointed at the row describing this specific instance of the object.
Throws:
SQLException - if the database fails somehow
See Also:
SQLPeerDatum.set(java.sql.ResultSet)

setFilename

public void setFilename(String filename1)
This is an overriding method.

Specified by:
setFilename in interface AbstractRoom
Parameters:
filename1 - the filename to set
See Also:
AbstractRoom.setFilename(java.lang.String)

setLimbo

public void setLimbo(boolean b)
This is an overriding method.

Specified by:
setLimbo in interface AbstractRoom
Parameters:
b - true, if this is a limbo room
See Also:
AbstractRoom.setLimbo(boolean)

setMoniker

public void setMoniker(String moniker1)
This is an overriding method.

Specified by:
setMoniker in interface AbstractRoom
Parameters:
moniker1 - the moniker to set
See Also:
AbstractRoom.setMoniker(java.lang.String)

setMusic

public void setMusic(String music1)
This is an overriding method.

Specified by:
setMusic in interface AbstractRoom
Parameters:
music1 - the new background music
See Also:
AbstractRoom.setMusic(java.lang.String)

setOverlay

public void setOverlay(String overlay1)
This is an overriding method.

Specified by:
setOverlay in interface AbstractRoom
Parameters:
overlay1 - the overlay to set
See Also:
AbstractRoom.setOverlay(java.lang.String)

setOwner

public void setOwner(AbstractUser newHomeOwner)
Description copied from interface: AbstractRoom
TODO: document this method (brpocock, Jan 13, 2010)

Specified by:
setOwner in interface AbstractRoom
Parameters:
newHomeOwner - the new owner of the home containing this room. May be null.

setRoomIndex

public void setRoomIndex(int newRoomIndex)
Parameters:
newRoomIndex - the new room index within the user's house

setRoomVars

public void setRoomVars()
This is an overriding method.

Specified by:
setRoomVars in interface AbstractRoom
See Also:
AbstractRoom.setRoomVars()

setSky

public void setSky(String sky1)
This is an overriding method.

Specified by:
setSky in interface AbstractRoom
Parameters:
sky1 - the sky to set
See Also:
AbstractRoom.setSky(java.lang.String)

setSkyVisible

public void setSkyVisible(boolean skyVisible1)
This is an overriding method.

Specified by:
setSkyVisible in interface AbstractRoom
Parameters:
skyVisible1 - the skyVisible to set
See Also:
AbstractRoom.setSkyVisible(boolean)

setTitle

public void setTitle(String newTitle)
This is an overriding method.

Specified by:
setTitle in interface AbstractRoom
Parameters:
newTitle - WRITEME
See Also:
AbstractRoom.setTitle(java.lang.String)

setVariable

public void setVariable(Map.Entry<String,String> var)
This is an overriding method.

Specified by:
setVariable in interface AbstractRoom
Specified by:
setVariable in interface HasVariables
Parameters:
var - A Hash type Entry object containing a key-value pair to be used to set a variable.
See Also:
AbstractRoom.setVariable(java.util.Map.Entry)

setVariable

public void setVariable(String varName,
                        String varValue)
This is an overriding method.

Specified by:
setVariable in interface AbstractRoom
Specified by:
setVariable in interface HasVariables
Parameters:
varName - WRITEME
varValue - WRITEME
See Also:
AbstractRoom.setVariable(java.lang.String, java.lang.String)

setVariables

public void setVariables(Map<String,String> map)
This is an overriding method.

Specified by:
setVariables in interface AbstractRoom
Specified by:
setVariables in interface HasVariables
Parameters:
map - WRITEME
See Also:
AbstractRoom.setVariables(java.util.Map)

superbot_fetchBasicInfo

private void superbot_fetchBasicInfo(ResultSet rs,
                                     ResultSet botGot,
                                     org.json.JSONObject bot,
                                     org.json.JSONObject speech,
                                     org.json.JSONObject avatar)
                              throws org.json.JSONException,
                                     SQLException
TODO: document this method (brpocock, Dec 29, 2009)

Parameters:
rs - WRITEME
botGot - WRITEME
bot - WRITEME
speech - WRITEME
avatar - WRITEME
Throws:
org.json.JSONException - WRITEME
SQLException - WRITEME

superbot_fetchClothing

private void superbot_fetchClothing(ResultSet rs,
                                    org.json.JSONObject clothes)
                             throws org.json.JSONException,
                                    SQLException
TODO: document this method (brpocock, Dec 29, 2009)

Parameters:
rs - WRITEME
clothes - WRITEME
Throws:
org.json.JSONException - WRITEME
SQLException - WRITEME

superbot_fetchPattern

private void superbot_fetchPattern(ResultSet rs,
                                   org.json.JSONObject clothes)
                            throws org.json.JSONException,
                                   SQLException
TODO: document this method (brpocock, Dec 29, 2009)

Parameters:
rs - WRITEME
clothes - WRITEME
Throws:
org.json.JSONException - WRITEME
SQLException - WRITEME

superbot_fetchSpeech

private org.json.JSONObject superbot_fetchSpeech(PreparedStatement getSpeech,
                                                 ResultSet rs)
                                          throws SQLException,
                                                 org.json.JSONException
TODO: document this method (brpocock, Dec 29, 2009)

Parameters:
getSpeech - WRITEME
rs - WRITEME
Returns:
WRITEME
Throws:
SQLException - WRITEME
org.json.JSONException - WRITEME

toJSON

public org.json.JSONObject toJSON()
This is an overriding method.

Specified by:
toJSON in interface AbstractRoom
Overrides:
toJSON in class SQLPeerDatum
Returns:
This object's data, serialized into JSON form.
See Also:
AbstractRoom.toJSON()

validateUserList

private void validateUserList()
TODO: document this method (brpocock, Oct 23, 2009)