soc.message
Class SOCSitDown

java.lang.Object
  extended by soc.message.SOCMessage
      extended by soc.message.SOCSitDown
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, SOCMessageForGame

public class SOCSitDown
extends SOCMessage
implements SOCMessageForGame

This message means that a player wants to sit down to play. Although it's a game-specific message, it's handled by SOCServer instead of a GameHandler.

Author:
Robert S. Thomas
See Also:
Serialized Form

Field Summary
private  java.lang.String game
          Name of game
private  java.lang.String nickname
          Nickname of player
private  int playerNumber
          The seat number
private  boolean robotFlag
          True if this player is a robot
private static long serialVersionUID
           
 
Fields inherited from class soc.message.SOCMessage
ACCEPTOFFER, ADMINPING, ADMINRESET, AUTHREQUEST, BANKTRADE, BCASTTEXTMSG, BOARDLAYOUT, BOARDLAYOUT2, BOARDSPECIALEDGE, BUILDREQUEST, BUYCARDREQUEST, CANCELBUILDREQUEST, CHANGEFACE, CHANNELS, CHOOSEPLAYER, CHOOSEPLAYERREQUEST, CLEAROFFER, CLEARTRADEMSG, CREATEACCOUNT, DEBUGFREEPLACE, DELETECHANNEL, DELETEGAME, DEVCARDACTION, DEVCARDCOUNT, DICERESULT, DICERESULTRESOURCES, DISCARD, DISCARDREQUEST, DISCOVERYPICK, ENDTURN, FIRSTPLAYER, GAME_NONE, GAMEMEMBERS, GAMEOPTIONGETDEFAULTS, GAMEOPTIONGETINFOS, GAMEOPTIONINFO, GAMES, GAMESERVERTEXT, GAMESTATE, GAMESTATS, GAMESWITHOPTIONS, GAMETEXTMSG, IMAROBOT, INVENTORYITEMACTION, JOIN, JOINAUTH, JOINGAME, JOINGAMEAUTH, LARGESTARMY, LASTSETTLEMENT, LEAVE, LEAVEALL, LEAVEGAME, LEGALEDGES, LOCALIZEDSTRINGS, LONGESTROAD, MAKEOFFER, MEMBERS, messageType, MONOPOLYPICK, MOVEPIECE, MOVEPIECEREQUEST, MOVEROBBER, NEWCHANNEL, NEWGAME, NEWGAMEWITHOPTIONS, NEWGAMEWITHOPTIONSREQUEST, NULLMESSAGE, PICKRESOURCES, PICKRESOURCESREQUEST, PIECEVALUE, PLAYDEVCARDREQUEST, PLAYERELEMENT, PLAYERELEMENTS, PLAYERSTATS, POTENTIALSETTLEMENTS, PUTPIECE, REJECTCONNECTION, REJECTOFFER, REMOVEPIECE, RESETBOARDAUTH, RESETBOARDREJECT, RESETBOARDREQUEST, RESETBOARDVOTE, RESETBOARDVOTEREQUEST, RESOURCECOUNT, REVEALFOGHEX, ROBOTDISMISS, ROBOTJOINGAMEREQUEST, ROLLDICE, ROLLDICEPROMPT, ROLLDICEREQUEST, SCENARIOINFO, sep, sep_char, sep2, sep2_char, SERVERPING, SETPLAYEDDEVCARD, SETSEATLOCK, SETSPECIALITEM, SETTURN, SETUPDONE, SIMPLEACTION, SIMPLEREQUEST, SITDOWN, STARTGAME, STATUSMESSAGE, SVPTEXTMSG, TEXTMSG, TIMINGPING, TURN, UPDATEROBOTPARAMS, VERSION
 
Constructor Summary
SOCSitDown(java.lang.String ga, java.lang.String nk, int pn, boolean rf)
          Create a SitDown message.
 
Method Summary
 java.lang.String getGame()
          Name of game this message is for.
 java.lang.String getNickname()
           
 int getPlayerNumber()
           
 boolean isRobot()
           
static SOCSitDown parseDataStr(java.lang.String s)
          Parse the command String into a SitDown message
 java.lang.String toCmd()
          SITDOWN sep game sep2 nickname sep2 playerNumber sep2 robotFlag
static java.lang.String toCmd(java.lang.String ga, java.lang.String nk, int pn, boolean rf)
          SITDOWN sep game sep2 nickname sep2 playerNumber sep2 robotFlag
 java.lang.String toString()
          Simple human-readable representation, used for debug purposes.
 
Methods inherited from class soc.message.SOCMessage
arrayIntoStringBuf, enumIntoStringBuf, getClassNameShort, getMaximumVersion, getMinimumVersion, getType, isSingleLineAndSafe, isSingleLineAndSafe, toMsg
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface soc.message.SOCMessageForGame
getType
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

game

private java.lang.String game
Name of game


nickname

private java.lang.String nickname
Nickname of player


playerNumber

private int playerNumber
The seat number


robotFlag

private boolean robotFlag
True if this player is a robot

Constructor Detail

SOCSitDown

public SOCSitDown(java.lang.String ga,
                  java.lang.String nk,
                  int pn,
                  boolean rf)
Create a SitDown message.

Parameters:
ga - the name of the game
nk - nickname of the player
pn - the seat number
rf - true if this is a robot
Method Detail

getGame

public java.lang.String getGame()
Description copied from interface: SOCMessageForGame
Name of game this message is for. Must not be null if message is in per-game structures or code.

At the server, the message treater dispatches incoming SOCMessageForGames based on their getGame():

Specified by:
getGame in interface SOCMessageForGame
Returns:
the name of the game
See Also:
SOCMessage.GAME_NONE

getNickname

public java.lang.String getNickname()
Returns:
the nickname of the player

getPlayerNumber

public int getPlayerNumber()
Returns:
the seat number

isRobot

public boolean isRobot()
Returns:
the value of the robot flag

toCmd

public java.lang.String toCmd()
SITDOWN sep game sep2 nickname sep2 playerNumber sep2 robotFlag

Specified by:
toCmd in class SOCMessage
Returns:
the command string

toCmd

public static java.lang.String toCmd(java.lang.String ga,
                                     java.lang.String nk,
                                     int pn,
                                     boolean rf)
SITDOWN sep game sep2 nickname sep2 playerNumber sep2 robotFlag

Parameters:
ga - the name of the game
nk - nickname of the player
pn - the seat number
rf - the value of the robot flag
Returns:
the command string

parseDataStr

public static SOCSitDown parseDataStr(java.lang.String s)
Parse the command String into a SitDown message

Parameters:
s - the String to parse
Returns:
a SitDown message, or null of the data is garbled

toString

public java.lang.String toString()
Description copied from class: SOCMessage
Simple human-readable representation, used for debug purposes.

Specified by:
toString in class SOCMessage
Returns:
a human readable form of the message