Class SubProcessSimulationLauncher
java.lang.Object
fr.ifremer.isisfish.simulator.launcher.SubProcessSimulationLauncher
- All Implemented Interfaces:
SimulatorLauncher
Lanceur de simulation dans un sous processus.
Usefull article about sub process management :
http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html?page=4
- Version:
- $Revision$ Last update : $Date$ By : $Author$
- Author:
- poussin
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected class
This thread is responsible to synchronized SimulationControl used locally with remote simulation control for remote simulation. -
Field Summary
Modifier and TypeFieldDescriptionprotected static org.apache.commons.logging.Log
Class logger (protected for inner classes) -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
Retourne l'intervalle de temps a utiliser entre deux verification de progresssion.getSimulationStorage
(SimulationService simulationService, SimulationControl control) Retourne le storage où est stockée la simulation.int
Retourne le nombre maximal de thread de simulations simultanées supporté.protected void
message
(SimulationControl control, String message) Display both message on UI (listeners and log).void
simulate
(SimulationService simulationService, SimulationItem simulationItem) Execute une simulation.void
Called if a started simulation has been ask to stop.subProcessSimulate
(SimulationControl control, File simulationZip, String simulationPrescript) toString()
void
updateControl
(SimulationService simulationService, SimulationControl control) Met à jour la progression.
-
Field Details
-
log
protected static org.apache.commons.logging.Log logClass logger (protected for inner classes)
-
-
Constructor Details
-
SubProcessSimulationLauncher
public SubProcessSimulationLauncher()
-
-
Method Details
-
toString
-
simulate
public void simulate(SimulationService simulationService, SimulationItem simulationItem) throws RemoteException Description copied from interface:SimulatorLauncher
Execute une simulation.- Specified by:
simulate
in interfaceSimulatorLauncher
- Parameters:
simulationService
- leSimulationService
qui a initie la simulationsimulationItem
- l'item contenant toutes les infos nécessaire au lancement de la simulation IMPORTANT Quoi qu'il arrive- Throws:
RemoteException
- Si pour l'execution de la simulation on utilise des resources distantes (serveurs) et que ceux si non pas pu etre contacte. Dans ce cas la simulation n'a pas ete faite et cette exception est levee.
-
maxSimulationThread
public int maxSimulationThread()Description copied from interface:SimulatorLauncher
Retourne le nombre maximal de thread de simulations simultanées supporté.- Specified by:
maxSimulationThread
in interfaceSimulatorLauncher
- Returns:
- un nombre superieur a 0
-
getCheckProgressionInterval
public int getCheckProgressionInterval()Description copied from interface:SimulatorLauncher
Retourne l'intervalle de temps a utiliser entre deux verification de progresssion.- Specified by:
getCheckProgressionInterval
in interfaceSimulatorLauncher
- Returns:
- intervalle (en secondes);
-
message
Display both message on UI (listeners and log).- Parameters:
control
-message
-
-
subProcessSimulate
public SimulationStorage subProcessSimulate(SimulationControl control, File simulationZip, String simulationPrescript) throws Exception - Throws:
Exception
-
getSimulationStorage
public SimulationStorage getSimulationStorage(SimulationService simulationService, SimulationControl control) throws RemoteException Description copied from interface:SimulatorLauncher
Retourne le storage où est stockée la simulation.- Specified by:
getSimulationStorage
in interfaceSimulatorLauncher
- Parameters:
simulationService
- leSimulationService
qui a initie la simulationcontrol
- le control de la simulation- Returns:
- le storage contenant la simulation qui vient d'etre faite ou null en fait au lieu de faire une seul simulation, plusieurs ou ete faite par exemple tout un plan de simulation Cette classe est tout de meme responsable du stockage de chaque simulation dans des storages.
- Throws:
RemoteException
- Si pour l'execution de la simulation on utilise des resources distantes (serveurs) et que ceux si non pas pu etre contacte.
-
updateControl
public void updateControl(SimulationService simulationService, SimulationControl control) throws RemoteException Description copied from interface:SimulatorLauncher
Met à jour la progression.- Specified by:
updateControl
in interfaceSimulatorLauncher
- Parameters:
simulationService
- leSimulationService
qui a initie la simulationcontrol
- le control de la simulation- Throws:
RemoteException
- Si pour l'execution de la simulation on utilise des resources distantes (serveurs) et que ceux si non pas pu etre contacte.
-
simulationStopRequest
Called if a started simulation has been ask to stop. Tell launcher to stop simulation if possible. Do nothing (no restriction on subprocess launcher).- Specified by:
simulationStopRequest
in interfaceSimulatorLauncher
- Parameters:
job
- job to stop
-