net.sf.freecol.common.model
Class ColonyTradeItem

java.lang.Object
  extended by net.sf.freecol.common.model.FreeColObject
      extended by net.sf.freecol.common.model.TradeItem
          extended by net.sf.freecol.common.model.ColonyTradeItem

public class ColonyTradeItem
extends TradeItem


Field Summary
private  Colony colony
          The colony to change hands.
private  java.lang.String colonyID
          The ID of the colony to change hands.
private  java.lang.String colonyName
          The colony name, when the colony is unknown to the offer recipient.
 
Fields inherited from class net.sf.freecol.common.model.TradeItem
game
 
Fields inherited from class net.sf.freecol.common.model.FreeColObject
ARRAY_SIZE, ID_ATTRIBUTE, ID_ATTRIBUTE_TAG, INFINITY, logger, NO_ID, PARTIAL_ATTRIBUTE, UNDEFINED, VALUE_TAG
 
Constructor Summary
ColonyTradeItem(Game game, Player source, Player destination, Colony colony)
          Creates a new ColonyTradeItem instance.
ColonyTradeItem(Game game, javax.xml.stream.XMLStreamReader in)
          Creates a new ColonyTradeItem instance.
 
Method Summary
 Colony getColony()
          Get the colony to trade.
 java.lang.String getColonyName()
          Extract the colony name.
static java.lang.String getXMLElementTagName()
          Gets the tag name of the root element representing this object.
 boolean isUnique()
          Returns whether this TradeItem must be unique.
 boolean isValid()
          Returns whether this TradeItem is valid.
protected  void readFromXMLImpl(javax.xml.stream.XMLStreamReader in)
          Initialize this object from an XML-representation of this object.
 void setColony(Colony colony)
          Set the colony to trade.
protected  void toXMLImpl(javax.xml.stream.XMLStreamWriter out)
          This method writes an XML-representation of this object to the given stream.
protected  void writeAttributes(javax.xml.stream.XMLStreamWriter out)
          Write the attributes of this object to a stream.
 
Methods inherited from class net.sf.freecol.common.model.TradeItem
getDestination, getGold, getGoods, getSource, getStance, getUnit, setDestination, setGold, setGoods, setSource, setStance, setUnit
 
Methods inherited from class net.sf.freecol.common.model.FreeColObject
addPropertyChangeListener, addPropertyChangeListener, dumpObject, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAttribute, getAttribute, getAttribute, getAttribute, getAttribute, getId, getPropertyChangeListeners, getPropertyChangeListeners, getSpecification, hasAbility, hasAttribute, hasListeners, readAttributes, readAttributes, readChild, readChild, readChildren, readChildren, readFromArrayElement, readFromArrayElement, readFromListElement, readFromXML, readFromXMLElement, readFromXMLImpl, readFromXMLPartialImpl, removePropertyChangeListener, removePropertyChangeListener, save, save, setId, toXML, toXML, toXML, toXMLElement, toXMLElement, toXMLElement, toXMLElement, toXMLElementPartial, toXMLPartialImpl, writeAttribute, writeChildren
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

colonyID

private java.lang.String colonyID
The ID of the colony to change hands.


colony

private Colony colony
The colony to change hands.


colonyName

private java.lang.String colonyName
The colony name, when the colony is unknown to the offer recipient.

Constructor Detail

ColonyTradeItem

public ColonyTradeItem(Game game,
                       Player source,
                       Player destination,
                       Colony colony)
Creates a new ColonyTradeItem instance.

Parameters:
game - a Game value
source - a Player value
destination - a Player value
colony - a Colony value

ColonyTradeItem

public ColonyTradeItem(Game game,
                       javax.xml.stream.XMLStreamReader in)
                throws javax.xml.stream.XMLStreamException
Creates a new ColonyTradeItem instance.

Parameters:
game - a Game value
in - a XMLStreamReader value
Throws:
javax.xml.stream.XMLStreamException
Method Detail

isValid

public boolean isValid()
Returns whether this TradeItem is valid.

Specified by:
isValid in class TradeItem
Returns:
a boolean value

isUnique

public boolean isUnique()
Returns whether this TradeItem must be unique. This is true for the StanceTradeItem and the GoldTradeItem, and false for all others.

Specified by:
isUnique in class TradeItem
Returns:
a boolean value

getColonyName

public java.lang.String getColonyName()
Extract the colony name. Necessary as the colony may not actually be known by a recipient of an offer.

Returns:
The colony name.

getColony

public Colony getColony()
Get the colony to trade.

Overrides:
getColony in class TradeItem
Returns:
The colony to trade.

setColony

public void setColony(Colony colony)
Set the colony to trade.

Overrides:
setColony in class TradeItem
Parameters:
colony - The new Colony to trade.

toXMLImpl

protected void toXMLImpl(javax.xml.stream.XMLStreamWriter out)
                  throws javax.xml.stream.XMLStreamException
This method writes an XML-representation of this object to the given stream.

Specified by:
toXMLImpl in class FreeColObject
Parameters:
out - The target stream.
Throws:
javax.xml.stream.XMLStreamException - if there are any problems writing to the stream.

writeAttributes

protected void writeAttributes(javax.xml.stream.XMLStreamWriter out)
                        throws javax.xml.stream.XMLStreamException
Write the attributes of this object to a stream.

Overrides:
writeAttributes in class TradeItem
Parameters:
out - The target stream.
Throws:
javax.xml.stream.XMLStreamException - if there are any problems writing to the stream.

readFromXMLImpl

protected void readFromXMLImpl(javax.xml.stream.XMLStreamReader in)
                        throws javax.xml.stream.XMLStreamException
Initialize this object from an XML-representation of this object.

Overrides:
readFromXMLImpl in class TradeItem
Parameters:
in - The input stream with the XML.
Throws:
javax.xml.stream.XMLStreamException - if a problem was encountered during parsing.

getXMLElementTagName

public static java.lang.String getXMLElementTagName()
Gets the tag name of the root element representing this object.

Returns:
"colonyTradeItem".