diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java @ 1970:368040e5c400

Improved the Scheduler to be able to cancel running WSPLGEN jobs. flys-artifacts/trunk@3384 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 12 Dec 2011 08:15:12 +0000
parents ccf2235035d6
children cbeeaaad1056
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java	Fri Dec 09 16:39:08 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java	Mon Dec 12 08:15:12 2011 +0000
@@ -23,6 +23,7 @@
 
 import de.intevation.artifacts.Artifact;
 import de.intevation.artifacts.CallContext;
+import de.intevation.artifacts.GlobalContext;
 
 import de.intevation.artifacts.common.utils.FileTools;
 
@@ -34,6 +35,7 @@
 import de.intevation.flys.model.RiverAxis;
 
 import de.intevation.flys.artifacts.FLYSArtifact;
+import de.intevation.flys.artifacts.context.FLYSContext;
 import de.intevation.flys.artifacts.model.CalculationMessage;
 import de.intevation.flys.artifacts.model.CalculationResult;
 import de.intevation.flys.artifacts.model.FacetTypes;
@@ -141,7 +143,8 @@
                 "wsplgen.job.queued")
         ));
 
-        Scheduler scheduler = Scheduler.getInstance();
+        GlobalContext gc    = (GlobalContext) context.globalContext();
+        Scheduler scheduler = (Scheduler) gc.get(FLYSContext.SCHEDULER);
         scheduler.addJob(job);
 
         return null;
@@ -194,6 +197,9 @@
         FLYSArtifact flys = (FLYSArtifact) artifact;
         removeDirectory(flys);
 
+        Scheduler scheduler = Scheduler.getInstance();
+        scheduler.cancelJob(flys.identifier());
+
         MapfileGenerator.getInstance().update();
     }
 

http://dive4elements.wald.intevation.org