Package net.sf.freecol.common.networking
Class RearrangeColonyMessage
- 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.RearrangeColonyMessage
-
public class RearrangeColonyMessage extends AttributeMessage
The message sent when the client requests rearrangeing of a colony.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
RearrangeColonyMessage.Arrangement
Container for the unit change information.-
Nested classes/interfaces inherited from class net.sf.freecol.common.networking.Message
Message.MessagePriority
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
COLONY_TAG
static java.lang.String
TAG
-
Fields inherited from class net.sf.freecol.common.networking.AttributeMessage
attributes
-
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 Constructor Description RearrangeColonyMessage(Colony colony, java.util.List<Unit> workers, Colony scratch)
Create a newRearrangeColonyMessage
with the supplied colony.RearrangeColonyMessage(Game game, FreeColXMLReader xr)
Create a newRearrangeColonyMessage
from a stream.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
currentPlayerMessage()
Should this message only be sent to a server by the current player?java.util.List<RearrangeColonyMessage.Arrangement>
getArrangements(Game game)
Get arrangements from the attributes.private static java.util.Map<java.lang.String,java.lang.String>
getAttributeMap(FreeColXMLReader xr)
Read the attributes from the stream.Message.MessagePriority
getPriority()
Get the priority of this type of message.boolean
isEmpty()
Check if the are no arrangements present.ChangeSet
serverHandler(FreeColServer freeColServer, ServerPlayer serverPlayer)
Server-side handler for this message.private void
setArrangementAttributes(java.util.List<RearrangeColonyMessage.Arrangement> arrangements)
Set the attributes consequent to a list of arrangements.-
Methods inherited from class net.sf.freecol.common.networking.AttributeMessage
canMerge, getStringAttribute, getStringAttributeMap, hasAttribute, setMergeable, setStringAttribute
-
Methods inherited from class net.sf.freecol.common.networking.TrivialMessage
aiHandler, appendChild, appendChildren, clientHandler, 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, toString, toXML, writeAttributes, writeChildren
-
-
-
-
Field Detail
-
TAG
public static final java.lang.String TAG
- See Also:
- Constant Field Values
-
COLONY_TAG
private static final java.lang.String COLONY_TAG
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
RearrangeColonyMessage
public RearrangeColonyMessage(Colony colony, java.util.List<Unit> workers, Colony scratch)
Create a newRearrangeColonyMessage
with the supplied colony. Add changes with addChange().- Parameters:
colony
- TheColony
that is rearranging.workers
- A list of workerUnit
s to rearrange.scratch
- A scratchColony
laid out as required.
-
RearrangeColonyMessage
public RearrangeColonyMessage(Game game, FreeColXMLReader xr)
Create a newRearrangeColonyMessage
from a stream.- Parameters:
game
- TheGame
to read within.xr
- TheFreeColXMLReader
to read from.
-
-
Method Detail
-
getAttributeMap
private static java.util.Map<java.lang.String,java.lang.String> getAttributeMap(FreeColXMLReader xr)
Read the attributes from the stream.- Parameters:
xr
- TheFreeColXMLReader
to read from.- Returns:
- An attribute map.
-
setArrangementAttributes
private void setArrangementAttributes(java.util.List<RearrangeColonyMessage.Arrangement> arrangements)
Set the attributes consequent to a list of arrangements.- Parameters:
arrangements
- The list ofArrangement
.
-
currentPlayerMessage
public boolean currentPlayerMessage()
Should this message only be sent to a server by the current player?- Overrides:
currentPlayerMessage
in classTrivialMessage
- Returns:
- True if this is a current-player-only message.
-
getPriority
public Message.MessagePriority getPriority()
Get the priority of this type of message.- Overrides:
getPriority
in classAttributeMessage
- Returns:
- The message priority.
-
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.
-
isEmpty
public boolean isEmpty()
Check if the are no arrangements present.
-
getArrangements
public java.util.List<RearrangeColonyMessage.Arrangement> getArrangements(Game game)
Get arrangements from the attributes.- Parameters:
game
- TheGame
to create arrangements in.- Returns:
- A list of
Arrangement
s.
-
-