|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object soc.message.SOCMessage soc.message.SOCMessageMulti soc.message.SOCMessageTemplateMs
public abstract class SOCMessageTemplateMs
Template for message types with variable number of string parameters. You will have to write parseDataStr, because of its subclass return type and because it's static.
Sample implementation:
// format of s: POTENTIALSETTLEMENTS sep game sep2 settlement {sep2 settlement}*...
// Must have at least game + 1 settlement param.
public static SOCPotentialSettlements parseDataStr(String[] s)
{
String ga; // the game name
String[] sett; // the settlements
if ((s == null) || (s.length < 2))
return null; // must have at least game + 1 settlement param
ga = s[0];
sett = new String[s.length - 1];
for (int i = 1; i < s.length; ++i)
sett[i-1] = s[i];
return new SOCPotentialSettlements(ga, sett);
}
For notes on the section you must add to SOCMessage.toMsg(String)
,
see SOCMessageMulti
.
Field Summary | |
---|---|
protected java.lang.String |
game
Name of the game, or null if none. |
protected java.util.List<java.lang.String> |
pa
List of string parameters, or null if none. |
private static long |
serialVersionUID
|
Constructor Summary | |
---|---|
protected |
SOCMessageTemplateMs(int id,
java.lang.String ga,
java.util.List<java.lang.String> pal)
Create a new multi-message with string parameters. |
Method Summary | |
---|---|
java.lang.String |
getGame()
Get the game name; see SOCMessageForGame.getGame() for details. |
java.util.List<java.lang.String> |
getParams()
|
java.lang.String |
toCmd()
MESSAGETYPE [sep game] sep param1 sep param2 sep ... |
protected static java.lang.String |
toCmd(int messageType,
java.lang.String gaName,
java.util.List<java.lang.String> pal)
MESSAGETYPE [sep game] sep param1 sep param2 sep ... |
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 |
---|
private static final long serialVersionUID
protected java.lang.String game
getGame()
for incoming messages
from clients; see SOCMessageForGame.getGame()
for details.
protected java.util.List<java.lang.String> pa
Before v2.0.00, this was an array of Strings.
Constructor Detail |
---|
protected SOCMessageTemplateMs(int id, java.lang.String ga, java.util.List<java.lang.String> pal)
id
- Message type IDga
- Name of game this message is for, or null if none. See getGame()
for details.
The server's message treater requires a non-null getGame()
for incoming messages from clients; see SOCMessageForGame.getGame()
for details.pal
- List of parameters, or null if noneMethod Detail |
---|
public java.lang.String getGame()
SOCMessageForGame.getGame()
for details.
If not null, toCmd()
sends the game name before getParams()
contents, and
at the receiver parseDataStr(params)
will see that game name as the first parameter.
getGame
in interface SOCMessageForGame
SOCMessage.GAME_NONE
public java.util.List<java.lang.String> getParams()
public java.lang.String toCmd()
toCmd
in class SOCMessage
protected static java.lang.String toCmd(int messageType, java.lang.String gaName, java.util.List<java.lang.String> pal)
messageType
- The message type idgaName
- the game name, or nullpal
- The parameter list, or null if no additional parameters;
elements of pal
can be null.
public java.lang.String toString()
SOCMessage
toString
in class SOCMessage
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |