org.mars_sim.msp.simulation.person.ai.task
Class RepairEVAMalfunction

java.lang.Object
  extended by org.mars_sim.msp.simulation.person.ai.task.Task
      extended by org.mars_sim.msp.simulation.person.ai.task.EVAOperation
          extended by org.mars_sim.msp.simulation.person.ai.task.RepairEVAMalfunction
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable, Repair

public class RepairEVAMalfunction
extends EVAOperation
implements Repair, java.io.Serializable

The RepairEVAMalfunction class is a task to repair a malfunction requiring an EVA.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.mars_sim.msp.simulation.person.ai.task.EVAOperation
BASE_ACCIDENT_CHANCE, containerUnit, ENTER_AIRLOCK, enteredAirlock, EXIT_AIRLOCK, exitedAirlock
 
Fields inherited from class org.mars_sim.msp.simulation.person.ai.task.Task
effortDriven, hasDuration, person, phaseTimeCompleted, phaseTimeRequired, stressModifier, subTask, TASK_DESC_EVENT, TASK_ENDED_EVENT, TASK_NAME_EVENT, TASK_PHASE_EVENT, TASK_SUBTASK_EVENT
 
Constructor Summary
RepairEVAMalfunction(Person person)
          Constructs a RepairEVAMalfunction object.
 
Method Summary
protected  void addExperience(double time)
          Adds experience to the person's skills used in this task.
 java.util.List<java.lang.String> getAssociatedSkills()
          Gets a list of the skills associated with this task.
 int getEffectiveSkillLevel()
          Gets the effective skill level a person has at this task.
 Malfunctionable getEntity()
          Gets the malfunctionable entity the person is currently repairing or null if none.
static double getProbability(Person person)
          Returns the weighted probability that a person might perform this task.
protected  double performMappedPhase(double time)
          Performs the method mapped to the task's current phase.
 
Methods inherited from class org.mars_sim.msp.simulation.person.ai.task.EVAOperation
checkForAccident, endEVA, enterAirlock, exitAirlock, getAvailableAirlock, shouldEndEVAOperation
 
Methods inherited from class org.mars_sim.msp.simulation.person.ai.task.Task
addPhase, compareTo, endTask, getCreateEvents, getCrowdingProbabilityModifier, getDescription, getDuration, getName, getPhase, getRelationshipModifier, getSubTask, getTeacher, getTeachingExperienceModifier, getTimeCompleted, getTopPhase, hasTeacher, isDone, isEffortDriven, setCreateEvents, setDescription, setDuration, setName, setPhase, setStressModifier, setTeacher, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RepairEVAMalfunction

public RepairEVAMalfunction(Person person)
                     throws java.lang.Exception
Constructs a RepairEVAMalfunction object.

Parameters:
person - the person to perform the task
Throws:
java.lang.Exception - if error constructing task
Method Detail

getProbability

public static double getProbability(Person person)
Returns the weighted probability that a person might perform this task.

Parameters:
person - the person to perform the task
Returns:
the weighted probability that a person might perform this task

performMappedPhase

protected double performMappedPhase(double time)
                             throws java.lang.Exception
Performs the method mapped to the task's current phase.

Specified by:
performMappedPhase in class Task
Parameters:
time - the amount of time the phase is to be performed.
Returns:
the remaining time after the phase has been performed.
Throws:
java.lang.Exception - if error in performing phase or if phase cannot be found.

addExperience

protected void addExperience(double time)
Adds experience to the person's skills used in this task.

Specified by:
addExperience in class Task
Parameters:
time - the amount of time (ms) the person performed this task.

getEntity

public Malfunctionable getEntity()
Gets the malfunctionable entity the person is currently repairing or null if none.

Specified by:
getEntity in interface Repair
Returns:
entity

getEffectiveSkillLevel

public int getEffectiveSkillLevel()
Gets the effective skill level a person has at this task.

Specified by:
getEffectiveSkillLevel in class Task
Returns:
effective skill level

getAssociatedSkills

public java.util.List<java.lang.String> getAssociatedSkills()
Gets a list of the skills associated with this task. May be empty list if no associated skills.

Specified by:
getAssociatedSkills in class Task
Returns:
list of skills as strings