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
Nested ClassesModifier and TypeClassDescriptionprotected classThis thread is responsible to synchronized SimulationControl used locally with remote simulation control for remote simulation. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static org.apache.commons.logging.LogClass logger (protected for inner classes) -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintRetourne 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.intRetourne le nombre maximal de thread de simulations simultanées supporté.protected voidmessage(SimulationControl control, String message) Display both message on UI (listeners and log).voidsimulate(SimulationService simulationService, SimulationItem simulationItem) Execute une simulation.voidCalled if a started simulation has been ask to stop.subProcessSimulate(SimulationControl control, File simulationZip, String simulationPrescript) toString()voidupdateControl(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:SimulatorLauncherExecute une simulation.- Specified by:
simulatein interfaceSimulatorLauncher- Parameters:
simulationService- leSimulationServicequi 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:SimulatorLauncherRetourne le nombre maximal de thread de simulations simultanées supporté.- Specified by:
maxSimulationThreadin interfaceSimulatorLauncher- Returns:
- un nombre superieur a 0
-
getCheckProgressionInterval
public int getCheckProgressionInterval()Description copied from interface:SimulatorLauncherRetourne l'intervalle de temps a utiliser entre deux verification de progresssion.- Specified by:
getCheckProgressionIntervalin 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:SimulatorLauncherRetourne le storage où est stockée la simulation.- Specified by:
getSimulationStoragein interfaceSimulatorLauncher- Parameters:
simulationService- leSimulationServicequi 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:SimulatorLauncherMet à jour la progression.- Specified by:
updateControlin interfaceSimulatorLauncher- Parameters:
simulationService- leSimulationServicequi 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:
simulationStopRequestin interfaceSimulatorLauncher- Parameters:
job- job to stop
-