|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object soc.message.SOCMessage soc.message.SOCMessageTemplate2s
public abstract class SOCMessageTemplate2s
Template for per-game message types with 2 string parameters. The second parameter can be optional. Your class javadoc should explain the meaning of param1 and param2, 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: REJECTCARDNAME sep game sep2 cardid sep2 cardname
public static SOCRejectCardName parseDataStr(final String s)
{
String ga; // the game name
String cid; // the card id
String cname; // the card name, or null for unknown
StringTokenizer st = new StringTokenizer(s, sep2);
try
{
ga = st.nextToken();
cid = st.nextToken();
cname = st.nextToken();
}
catch (Exception e)
{
return null;
}
return new SOCRejectCardName(ga, cid, cname);
}
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. |
private static long |
serialVersionUID
|
Constructor Summary | |
---|---|
protected |
SOCMessageTemplate2s(int id,
java.lang.String ga,
java.lang.String p1,
java.lang.String p2)
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 |
toCmd()
MESSAGETYPE sep game sep2 param1 sep2 param2 |
protected static java.lang.String |
toCmd(int messageType,
java.lang.String ga,
java.lang.String param1,
java.lang.String param2)
MESSAGETYPE sep game sep2 param1 sep2 param2 |
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
Constructor Detail |
---|
protected SOCMessageTemplate2s(int id, java.lang.String ga, java.lang.String p1, java.lang.String p2)
id
- Message type IDga
- Name of game this message is forp1
- First parameterp2
- Second 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 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)
messageType
- The message type idga
- the game nameparam1
- The first parameterparam2
- The second 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 |