Class SimulationPlanPrepareJob
java.lang.Object
fr.ifremer.isisfish.simulator.launcher.SimulationPlanPrepareJob
- All Implemented Interfaces:
SimulationJob.PostAction
,Runnable
,Iterator<SimulationJob>
public class SimulationPlanPrepareJob
extends Object
implements Runnable, Iterator<SimulationJob>, SimulationJob.PostAction
Permet de genere les sous simulations d'un plan de simulation. Pour les
plan independant, on l'utilise en Runnable pour genere tous les plans
possible et les soumettre a la queue. Pour les plans dependant
on l'utilise seulement comme iterator. La methode afterSimulation des plans
est appelee automatiquement a la fin de la simulation grace au mecanisme
de PostAction sur les
SimulationJob
.-
Field Summary
Modifier and TypeFieldDescriptionprotected SimulationControl
protected int
protected boolean
protected String
protected SimulationJob
protected SimulationJob
protected SimulationParameter
protected SimulationPlanContextInternal
protected List<SimulationPlan>
protected SimulationService
-
Constructor Summary
ConstructorDescriptionSimulationPlanPrepareJob
(SimulationService simulationService, SimulationJob job) -
Method Summary
Modifier and TypeMethodDescriptionvoid
exception
(SimulationJob job, Throwable eee) Appeler lorsque la simulation a echoué.void
finished
(SimulationJob job, SimulationStorage sim) Appelé lorsque la simulation s'arrete normalement.boolean
hasNext()
Indique s'il y a encore des simulations dans le plan.next()
void
remove()
void
run()
Genere toutes les sous simulations et les places dans la queue.void
runJob()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Iterator
forEachRemaining
-
Field Details
-
simulationService
-
planContext
-
job
-
nextJob
-
doNext
protected boolean doNext -
id
-
control
-
param
-
done
protected int done -
simulationPlan
-
-
Constructor Details
-
SimulationPlanPrepareJob
-
-
Method Details
-
run
public void run()Genere toutes les sous simulations et les places dans la queue. Cette methoderun()
est appelée seulement dans le cas de la génération de plans indépendants. -
runJob
public void runJob() -
hasNext
public boolean hasNext()Indique s'il y a encore des simulations dans le plan. Par defaut pour Eviter les plans sans fin, le nombre de plan genere par simulation est limite aSimulationService.MAX_PLAN_SIMULATION
- Specified by:
hasNext
in interfaceIterator<SimulationJob>
- Returns:
true
if has next
-
next
- Specified by:
next
in interfaceIterator<SimulationJob>
-
remove
public void remove()- Specified by:
remove
in interfaceIterator<SimulationJob>
-
finished
Description copied from interface:SimulationJob.PostAction
Appelé lorsque la simulation s'arrete normalement.- Specified by:
finished
in interfaceSimulationJob.PostAction
- Parameters:
job
- le job qui a fait la simulationsim
- la simulation qui vient d'etre faite
-
exception
Description copied from interface:SimulationJob.PostAction
Appeler lorsque la simulation a echoué.- Specified by:
exception
in interfaceSimulationJob.PostAction
- Parameters:
job
- le job qui a fait la simulationeee
- l'exception qui a ete levee
-