Package net.sf.freecol.common.model
Class StanceTradeItem
- java.lang.Object
-
- net.sf.freecol.common.model.FreeColObject
-
- net.sf.freecol.common.model.FreeColGameObject
-
- net.sf.freecol.common.model.TradeItem
-
- net.sf.freecol.common.model.StanceTradeItem
-
- All Implemented Interfaces:
java.lang.Comparable<FreeColObject>,ObjectWithId
public class StanceTradeItem extends TradeItem
A trade item consisting of a change of stance.
-
-
Field Summary
Fields Modifier and Type Field Description private StancestanceThe stance between source and destination.private static java.lang.StringSTANCE_TAGstatic java.lang.StringTAG-
Fields inherited from class net.sf.freecol.common.model.TradeItem
INVALID_TRADE_ITEM
-
Fields inherited from class net.sf.freecol.common.model.FreeColGameObject
initialized
-
Fields inherited from class net.sf.freecol.common.model.FreeColObject
ARRAY_SIZE_TAG, DEFAULT_CLASS_INDEX, fcoComparator, ID_ATTRIBUTE_TAG, PARTIAL_ATTRIBUTE_TAG, VALUE_TAG
-
-
Constructor Summary
Constructors Constructor Description StanceTradeItem(Game game, FreeColXMLReader xr)Creates a newStanceTradeIteminstance.StanceTradeItem(Game game, Player source, Player destination, Stance stance)Creates a newStanceTradeIteminstance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends FreeColObject>
booleancopyIn(T other)Copy another FreeColObject into this one if it is compatible.booleanequals(java.lang.Object o)intevaluateFor(Player player)Evaluate this trade item for a given player.StringTemplategetLabel()Get a label for this item.StancegetStance()Get the stance to trade.java.lang.StringgetXMLTagName()Get the serialization tag for this object.inthashCode()booleanisUnique()Is this trade item unique? This is true for the StanceTradeItem and the GoldTradeItem, and false for all others.booleanisValid()Is this trade item valid? That is, is the request well formed.protected voidreadAttributes(FreeColXMLReader xr)Reads the attributes of this object from an XML stream.voidsetStance(Stance stance)Set the stance to trade.java.lang.StringtoString()protected voidwriteAttributes(FreeColXMLWriter xw)Write the attributes of this object to a stream.-
Methods inherited from class net.sf.freecol.common.model.TradeItem
getColony, getDestination, getGold, getGoods, getOther, getSource, getUnit, getVictim, isInternable, setDestination, setGold, setGoods, setSource, setUnit
-
Methods inherited from class net.sf.freecol.common.model.FreeColGameObject
checkIntegrity, dispose, disposeResources, fundamentalDispose, getClassIndex, getDisposables, getGame, getLinkTarget, getSpecification, intern, internId, isDisposed, isInitialized, readFromXML, setGame, setSpecification
-
Methods inherited from class net.sf.freecol.common.model.FreeColObject
addAbility, addFeatures, addModifier, addPropertyChangeListener, addPropertyChangeListener, apply, apply, applyModifiers, applyModifiers, arrayKey, compareIds, compareTo, containsAbilityKey, containsModifierKey, copy, copy, copy, copy, copyInCast, dumpObject, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAbilities, getAbilities, getAbilities, getAbilities, getDefenceModifiers, getDisplayObject, getFeatureContainer, getFreeColObjectClass, getFreeColObjectClassByName, getId, getIdNumber, getIdType, getIdTypeByName, getModifiers, getModifiers, getModifiers, getModifiers, getObjectClassIndex, getPropertyChangeListeners, getPropertyChangeListeners, getPropertyChangeSupport, getSortedAbilities, getSortedModifiers, getSuffix, getSuffix, hasAbility, hasAbility, hasAbility, hasListeners, hasModifier, hasModifier, hasModifier, idEquals, invokeMethod, logFreeColObjects, readChild, readChildren, readFromXMLPartial, removeAbilities, removeAbility, removeFeatures, removeModifier, removeModifiers, removePropertyChangeListener, removePropertyChangeListener, save, save, save, save, serialize, serialize, serialize, serialize, setId, toXML, toXML, toXMLPartial, toXMLPartial, writeChildren
-
-
-
-
Field Detail
-
TAG
public static final java.lang.String TAG
- See Also:
- Constant Field Values
-
stance
private Stance stance
The stance between source and destination.
-
STANCE_TAG
private static final java.lang.String STANCE_TAG
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
StanceTradeItem
public StanceTradeItem(Game game, Player source, Player destination, Stance stance)
Creates a newStanceTradeIteminstance.- Parameters:
game- The enclosingGame.source- The sourcePlayer.destination- The destinationPlayer.stance- TheStanceto trade.
-
StanceTradeItem
public StanceTradeItem(Game game, FreeColXMLReader xr) throws javax.xml.stream.XMLStreamException
Creates a newStanceTradeIteminstance.- Parameters:
game- The enclosingGame.xr- AFreeColXMLReaderto read from.- Throws:
javax.xml.stream.XMLStreamException- if there is an error reading the stream.
-
-
Method Detail
-
isValid
public boolean isValid()
Is this trade item valid? That is, is the request well formed.
-
isUnique
public boolean isUnique()
Is this trade item unique? This is true for the StanceTradeItem and the GoldTradeItem, and false for all others.
-
getLabel
public StringTemplate getLabel()
Get a label for this item.
-
getStance
public Stance getStance()
Get the stance to trade.
-
setStance
public void setStance(Stance stance)
Set the stance to trade.
-
evaluateFor
public int evaluateFor(Player player)
Evaluate this trade item for a given player.- Specified by:
evaluateForin classTradeItem- Parameters:
player- ThePlayerto evaluate for.- Returns:
- A value for the player, INVALID_TRADE_ITEM for invalid.
-
copyIn
public <T extends FreeColObject> boolean copyIn(T other)
Copy another FreeColObject into this one if it is compatible.
-
writeAttributes
protected void writeAttributes(FreeColXMLWriter xw) throws javax.xml.stream.XMLStreamException
Write the attributes of this object to a stream. To be overridden if required by any object that has attributes and uses the toXML(FreeColXMLWriter, String) call.- Overrides:
writeAttributesin classTradeItem- Parameters:
xw- TheFreeColXMLWriterto write to.- Throws:
javax.xml.stream.XMLStreamException- if there are any problems writing to the stream.
-
readAttributes
protected void readAttributes(FreeColXMLReader xr) throws javax.xml.stream.XMLStreamException
Reads the attributes of this object from an XML stream.- Overrides:
readAttributesin classTradeItem- Parameters:
xr- TheFreeColXMLReaderto read from.- Throws:
javax.xml.stream.XMLStreamException- if there is a problem reading the stream.
-
getXMLTagName
public java.lang.String getXMLTagName()
Get the serialization tag for this object.- Specified by:
getXMLTagNamein classFreeColObject- Returns:
- The tag.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classFreeColObject
-
-