net.sf.freecol.common.model
Class UnitTradeItem

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.UnitTradeItem

public class UnitTradeItem
extends TradeItem


Field Summary
private  Unit unit
          The unit to change hands.
 
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
UnitTradeItem(Game game, Player source, Player destination, Unit unit)
          Creates a new UnitTradeItem instance.
UnitTradeItem(Game game, javax.xml.stream.XMLStreamReader in)
          Creates a new UnitTradeItem instance.
 
Method Summary
 Unit getUnit()
          Get the unit to trade.
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 setUnit(Unit unit)
          Set the unit 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
getColony, getDestination, getGold, getGoods, getSource, getStance, setColony, setDestination, setGold, setGoods, setSource, setStance
 
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, setSpecification, 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

unit

private Unit unit
The unit to change hands.

Constructor Detail

UnitTradeItem

public UnitTradeItem(Game game,
                     Player source,
                     Player destination,
                     Unit unit)
Creates a new UnitTradeItem instance.

Parameters:
game - a Game value
source - a Player value
destination - a Player value
unit - an Unit value

UnitTradeItem

public UnitTradeItem(Game game,
                     javax.xml.stream.XMLStreamReader in)
              throws javax.xml.stream.XMLStreamException
Creates a new UnitTradeItem 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

getUnit

public Unit getUnit()
Get the unit to trade.

Overrides:
getUnit in class TradeItem
Returns:
The unit to trade.

setUnit

public void setUnit(Unit unit)
Set the unit to trade.

Overrides:
setUnit in class TradeItem
Parameters:
unit - The new Unit 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:
"unitTradeItem".