Package net.sf.freecol.common.networking
Class ChooseFoundingFatherMessage
- 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.ChooseFoundingFatherMessage
-
public class ChooseFoundingFatherMessage extends AttributeMessage
The message sent to choose a founding father.
-
-
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 static java.util.List<java.lang.String>
fatherKeys
private static java.lang.String
FOUNDING_FATHER_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 ChooseFoundingFatherMessage(java.util.List<FoundingFather> fathers, FoundingFather ff)
Create a newChooseFoundingFatherMessage
with the specified fathers.ChooseFoundingFatherMessage(Game game, FreeColXMLReader xr)
Create a newChooseFoundingFatherMessage
from a stream.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
aiHandler(FreeColServer freeColServer, AIPlayer aiPlayer)
AI-side handler for this message.void
clientHandler(FreeColClient freeColClient)
Client-side handler for this message.boolean
currentPlayerMessage()
Should this message only be sent to a server by the current player?private static java.util.Map<java.lang.String,java.lang.String>
getAttributeMap(FreeColXMLReader xr)
Get a map of attributes from the reader.FoundingFather
getFather(Game game)
Get the chosen father.java.util.List<FoundingFather>
getFathers(Game game)
Get the list of offered fathers.Message.MessagePriority
getPriority()
Get the priority of this type of message.ChangeSet
serverHandler(FreeColServer freeColServer, ServerPlayer serverPlayer)
Server-side handler for this message.ChooseFoundingFatherMessage
setFather(FoundingFather ff)
Sets the chosen father.private void
setFatherAttributes(java.util.List<FoundingFather> fathers)
Set the attributes arising from a list of founding fathers.-
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
appendChild, appendChildren, 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, isEmpty, 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
-
FOUNDING_FATHER_TAG
private static final java.lang.String FOUNDING_FATHER_TAG
- See Also:
- Constant Field Values
-
fatherKeys
private static final java.util.List<java.lang.String> fatherKeys
-
-
Constructor Detail
-
ChooseFoundingFatherMessage
public ChooseFoundingFatherMessage(java.util.List<FoundingFather> fathers, FoundingFather ff)
Create a newChooseFoundingFatherMessage
with the specified fathers.- Parameters:
fathers
- TheFoundingFather
s to choose from.ff
- TheFoundingFather
to select.
-
ChooseFoundingFatherMessage
public ChooseFoundingFatherMessage(Game game, FreeColXMLReader xr) throws javax.xml.stream.XMLStreamException
Create a newChooseFoundingFatherMessage
from a stream.- Parameters:
game
- TheGame
this message belongs to.xr
- TheFreeColXMLReader
to read from.- Throws:
javax.xml.stream.XMLStreamException
- if the stream is corrupt.
-
-
Method Detail
-
setFatherAttributes
private void setFatherAttributes(java.util.List<FoundingFather> fathers)
Set the attributes arising from a list of founding fathers.- Parameters:
fathers
- A list ofFoundingFather
.
-
getAttributeMap
private static java.util.Map<java.lang.String,java.lang.String> getAttributeMap(FreeColXMLReader xr)
Get a map of attributes from the reader.- Parameters:
xr
- TheFreeColXMLReader
to query.- Returns:
- A map of attributes.
-
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.
-
aiHandler
public void aiHandler(FreeColServer freeColServer, AIPlayer aiPlayer)
AI-side handler for this message. AI handlers always return null. FIXME: One day the FreeColServer should devolve to AIMain.- Overrides:
aiHandler
in classTrivialMessage
- Parameters:
freeColServer
- TheFreeColServer
handling the request.aiPlayer
- TheAIPlayer
the message was sent to.
-
clientHandler
public void clientHandler(FreeColClient freeColClient)
Client-side handler for this message. Client handlers always return null.- Overrides:
clientHandler
in classTrivialMessage
- Parameters:
freeColClient
- TheFreeColClient
to handle this 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.
-
getFather
public final FoundingFather getFather(Game game)
Get the chosen father.- Parameters:
game
- TheGame
to lookup the father in.- Returns:
- The chosen
FoundingFather
, or null if none set.
-
setFather
public final ChooseFoundingFatherMessage setFather(FoundingFather ff)
Sets the chosen father.- Parameters:
ff
- TheFoundingFather
to choose.- Returns:
- This message.
-
getFathers
public final java.util.List<FoundingFather> getFathers(Game game)
Get the list of offered fathers.- Parameters:
game
- The FreeCol game being played.- Returns:
- The offered
FoundingFather
s.
-
-