net.sf.freecol.server.ai.mission
Class WorkInsideColonyMission

java.lang.Object
  extended by net.sf.freecol.common.model.FreeColObject
      extended by net.sf.freecol.server.ai.AIObject
          extended by net.sf.freecol.server.ai.mission.Mission
              extended by net.sf.freecol.server.ai.mission.WorkInsideColonyMission

public class WorkInsideColonyMission
extends Mission

Mission for working inside a Colony.


Field Summary
private  AIColony aiColony
           
private static java.util.logging.Logger logger
           
 
Fields inherited from class net.sf.freecol.server.ai.mission.Mission
MINIMUM_TRANSPORT_PRIORITY, NO_MORE_MOVES_LEFT, NO_PATH_TO_TARGET, NORMAL_TRANSPORT_PRIORITY
 
Fields inherited from class net.sf.freecol.server.ai.AIObject
uninitialized
 
Fields inherited from class net.sf.freecol.common.model.FreeColObject
ARRAY_SIZE, ID_ATTRIBUTE, ID_ATTRIBUTE_TAG, INFINITY, NO_ID, PARTIAL_ATTRIBUTE, UNDEFINED, VALUE_TAG
 
Constructor Summary
WorkInsideColonyMission(AIMain aiMain, AIUnit aiUnit, AIColony aiColony)
          Creates a mission for the given AIUnit.
WorkInsideColonyMission(AIMain aiMain, org.w3c.dom.Element element)
          Loads a mission from the given element.
WorkInsideColonyMission(AIMain aiMain, javax.xml.stream.XMLStreamReader in)
          Creates a new WorkInsideColonyMission and reads the given element.
 
Method Summary
 void dispose()
          Disposes of this Mission.
 void doMission(Connection connection)
          Performs this mission.
 Tile getTransportDestination()
          Gets the destination for units with this mission.
static java.lang.String getXMLElementTagName()
          Gets the tag name of the root element representing this object.
 boolean isValid()
          Checks if this mission is still valid to perform.
protected  void readAttributes(javax.xml.stream.XMLStreamReader in)
          
protected  void toXMLImpl(javax.xml.stream.XMLStreamWriter out)
          Writes all of the AIObjects and other AI-related information to an XML-stream.
protected  void writeAttributes(javax.xml.stream.XMLStreamWriter out)
          
 
Methods inherited from class net.sf.freecol.server.ai.mission.Mission
findNearestOtherSettlement, findTarget, getAIRandom, getAIUnit, getDebuggingInfo, getEuropeanAIPlayer, getPathStartTile, getTransportPriority, getUnit, isOneTime, isValid, moveButDontAttack, moveRandomly, moveTowards, moveTowards, moveUnitToAmerica, moveUnitToEurope, sellCargoInEurope, setAIUnit, shouldTakeTransportToTile, travelToTarget, unitLeavesShip, unloadCargoInColony
 
Methods inherited from class net.sf.freecol.server.ai.AIObject
getAIMain, getGame, getSpecification, isUninitialized, readFromXML
 
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, hasAbility, hasAttribute, hasListeners, readAttributes, readChild, readChild, readChildren, readChildren, readFromArrayElement, readFromArrayElement, readFromListElement, readFromXMLElement, readFromXMLImpl, 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

logger

private static final java.util.logging.Logger logger

aiColony

private AIColony aiColony
Constructor Detail

WorkInsideColonyMission

public WorkInsideColonyMission(AIMain aiMain,
                               AIUnit aiUnit,
                               AIColony aiColony)
Creates a mission for the given AIUnit.

Parameters:
aiMain - The main AI-object.
aiUnit - The AIUnit this mission is created for.
aiColony - The AIColony the unit should be working in.

WorkInsideColonyMission

public WorkInsideColonyMission(AIMain aiMain,
                               org.w3c.dom.Element element)
Loads a mission from the given element.

Parameters:
aiMain - The main AI-object.
element - An Element containing an XML-representation of this object.

WorkInsideColonyMission

public WorkInsideColonyMission(AIMain aiMain,
                               javax.xml.stream.XMLStreamReader in)
                        throws javax.xml.stream.XMLStreamException
Creates a new WorkInsideColonyMission and reads the given element.

Parameters:
aiMain - The main AI-object.
in - The input stream containing the XML.
Throws:
javax.xml.stream.XMLStreamException - if a problem was encountered during parsing.
See Also:
AIObject.readFromXML(javax.xml.stream.XMLStreamReader)
Method Detail

dispose

public void dispose()
Disposes of this Mission.

Overrides:
dispose in class Mission

isValid

public boolean isValid()
Checks if this mission is still valid to perform.

Overrides:
isValid in class Mission
Returns:
True if this mission is still valid to perform.

getTransportDestination

public Tile getTransportDestination()
Gets the destination for units with this mission.

Overrides:
getTransportDestination in class Mission
Returns:
Usually the colony tile unless the unit is there already or can get there itself.

doMission

public void doMission(Connection connection)
Performs this mission.

Specified by:
doMission in class Mission
Parameters:
connection - The Connection to the server.

toXMLImpl

protected void toXMLImpl(javax.xml.stream.XMLStreamWriter out)
                  throws javax.xml.stream.XMLStreamException
Writes all of the AIObjects and other AI-related information to an XML-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

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

readAttributes

protected void readAttributes(javax.xml.stream.XMLStreamReader in)
                       throws javax.xml.stream.XMLStreamException

Overrides:
readAttributes in class Mission
Parameters:
in - The XML input stream.
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:
"workInsideColonyMission".