|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object soc.message.SOCMessage soc.message.SOCMessageTemplate3s
public abstract class SOCMessageTemplate3s
Template for per-game message types with 3 string parameters. The second and third parameters can be optional. Your class javadoc should explain the meaning of param1, param2, and param3, so that you won't need to write getters for those.
You will have to write parseDataStr, because of its return type and because it's static.
Sample implementation:
// format of s: REJECTCARDID sep game sep2 cardid sep2 cardname sep2 cardname2
public static SOCRejectCardID parseDataStr(final String s)
{
String ga; // the game name
String cid; // the card id
String cname; // the card name, or null for unknown
String cname2; // the duplicate card name, if any
StringTokenizer st = new StringTokenizer(s, sep2);
try
{
ga = st.nextToken();
cid = st.nextToken();
cname = st.nextToken();
cname2 = st.nextToken();
}
catch (Exception e)
{
return null;
}
return new SOCRejectCardID(ga, cid, cname, cname2);
}
Field Summary | |
---|---|
protected java.lang.String |
game
Name of the game. |
protected java.lang.String |
p1
First string parameter. |
protected java.lang.String |
p2
Second, optional string parameter; null if missing. |
protected java.lang.String |
p3
Third, optional string parameter; null if missing. |
private static long |
serialVersionUID
|
Constructor Summary | |
---|---|
protected |
SOCMessageTemplate3s(int id,
java.lang.String ga,
java.lang.String p1,
java.lang.String p2,
java.lang.String p3)
Create a new message. |
Method Summary | |
---|---|
java.lang.String |
getGame()
Name of game this message is for. |
java.lang.String |
getParam1()
|
java.lang.String |
getParam2()
|
java.lang.String |
getParam3()
|
java.lang.String |
toCmd()
MESSAGETYPE sep game sep2 param1 sep2 param2 sep2 param3 |
protected static java.lang.String |
toCmd(int messageType,
java.lang.String ga,
java.lang.String param1,
java.lang.String param2,
java.lang.String param3)
MESSAGETYPE sep game sep2 param1 sep2 param2 sep2 param3 |
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
protected java.lang.String p1
protected java.lang.String p2
protected java.lang.String p3
Constructor Detail |
---|
protected SOCMessageTemplate3s(int id, java.lang.String ga, java.lang.String p1, java.lang.String p2, java.lang.String p3)
id
- Message type IDga
- Name of game this message is forp1
- First parameterp2
- Second parameter, or nullp3
- Third parameter, or nullMethod Detail |
---|
public java.lang.String getGame()
SOCMessageForGame
null
if message is in per-game structures or code.
At the server, the message treater dispatches incoming SOCMessageForGame
s
based on their getGame()
:
null
: Message is ignored
SOCMessage.GAME_NONE
: Message is handled by SOCServer
itself
GameHandler
for that game's type. If no game with that name is found,
the message is ignored.
getGame
in interface SOCMessageForGame
SOCMessage.GAME_NONE
public java.lang.String getParam1()
public java.lang.String getParam2()
public java.lang.String getParam3()
public java.lang.String toCmd()
toCmd
in class SOCMessage
protected static java.lang.String toCmd(int messageType, java.lang.String ga, java.lang.String param1, java.lang.String param2, java.lang.String param3)
messageType
- The message type idga
- the game nameparam1
- The first parameterparam2
- The second parameter, or nullparam3
- The third parameter, or 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 |