Package net.sf.freecol.common.networking
Class WrapperMessage
- java.lang.Object
-
- net.sf.freecol.common.networking.Message
-
- net.sf.freecol.common.networking.TrivialMessage
-
- net.sf.freecol.common.networking.AttributeMessage
-
- net.sf.freecol.common.networking.WrapperMessage
-
- Direct Known Subclasses:
QuestionMessage
,ReplyMessage
public abstract class WrapperMessage extends AttributeMessage
A wrapper message. That is a message with just a reply identifier attribute to be matched, and the underlying real message.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.sf.freecol.common.networking.Message
Message.MessagePriority
-
-
Field Summary
Fields Modifier and Type Field Description private Message
message
The encapsulated message.static java.lang.String
REPLY_ID_TAG
-
Fields inherited from class net.sf.freecol.common.networking.AttributeMessage
attributes, TAG
-
Fields inherited from class net.sf.freecol.common.networking.TrivialMessage
continueMessage, disconnectMessage, endTurnMessage, enterRevengeModeMessage, reconnectMessage, requestLaunchMessage, retireMessage, startGameMessage
-
Fields inherited from class net.sf.freecol.common.networking.Message
logger, messagePriorityComparator
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
WrapperMessage(java.lang.String tag, int replyId, Message message)
Create a newWrapperMessage
of a given type.protected
WrapperMessage(java.lang.String tag, Game game, FreeColXMLReader xr)
Create a newWrapperMessage
from a stream.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clientHandler(FreeColClient freeColClient)
Client-side handler for this message.Message
getMessage()
Get the wrapped message.java.lang.String
getSubType()
boolean
isEmpty()
Is this message vacuous?ChangeSet
serverHandler(FreeColServer freeColServer, ServerPlayer serverPlayer)
Server-side handler for this message.java.lang.String
toString()
void
writeChildren(FreeColXMLWriter xw)
Write any children of this message.-
Methods inherited from class net.sf.freecol.common.networking.AttributeMessage
canMerge, getPriority, getStringAttribute, getStringAttributeMap, hasAttribute, setMergeable, setStringAttribute
-
Methods inherited from class net.sf.freecol.common.networking.TrivialMessage
aiHandler, appendChild, appendChildren, currentPlayerMessage, getChildCount, getChildren, getType, setChildren, setType
-
Methods inherited from class net.sf.freecol.common.networking.Message
clientGeneric, expected, getArrayAttributes, getBooleanAttribute, getChild, getChildren, getEnumAttribute, getIntegerAttribute, getPriorityLevel, igc, igc, invokeAndWait, invokeLater, isType, merge, pgc, pgc, pretty, read, setArrayAttributes, setArrayAttributes, setBooleanAttribute, setEnumAttribute, setIntegerAttribute, setStringAttributeMap, setStringAttributes, setStringAttributes, toXML, writeAttributes
-
-
-
-
Field Detail
-
REPLY_ID_TAG
public static final java.lang.String REPLY_ID_TAG
- See Also:
- Constant Field Values
-
message
private Message message
The encapsulated message.
-
-
Constructor Detail
-
WrapperMessage
protected WrapperMessage(java.lang.String tag, int replyId, Message message)
Create a newWrapperMessage
of a given type.- Parameters:
tag
- The actual message tag.replyId
- The reply id.message
- TheMessage
to encapsulate.
-
WrapperMessage
protected WrapperMessage(java.lang.String tag, Game game, FreeColXMLReader xr) throws javax.xml.stream.XMLStreamException, FreeColException
Create a newWrapperMessage
from a stream.- Parameters:
tag
- The actual message tag.game
- TheGame
to read within.xr
- TheFreeColXMLReader
to read from.- Throws:
javax.xml.stream.XMLStreamException
- if the stream is corrupt.FreeColException
- if the internal message can not be read.
-
-
Method Detail
-
isEmpty
public boolean isEmpty()
Is this message vacuous?
-
clientHandler
public void clientHandler(FreeColClient freeColClient) throws FreeColException
Client-side handler for this message. Client handlers always return null.- Overrides:
clientHandler
in classTrivialMessage
- Parameters:
freeColClient
- TheFreeColClient
to handle this message.- Throws:
FreeColException
- if there is a problem building the message.
-
serverHandler
public ChangeSet serverHandler(FreeColServer freeColServer, ServerPlayer serverPlayer)
Server-side handler for this message.- Overrides:
serverHandler
in classTrivialMessage
- Parameters:
freeColServer
- TheFreeColServer
handling the request.serverPlayer
- TheServerPlayer
that sent the request.- Returns:
- A
ChangeSet
defining the response.
-
writeChildren
public void writeChildren(FreeColXMLWriter xw) throws javax.xml.stream.XMLStreamException
Write any children of this message.- Overrides:
writeChildren
in classMessage
- Parameters:
xw
- TheFreeColXMLWriter
to write to.- Throws:
javax.xml.stream.XMLStreamException
- if there is a problem writing the stream.
-
getMessage
public Message getMessage()
Get the wrapped message.- Returns:
- The
Message
.
-
getSubType
public java.lang.String getSubType()
-
-