Author: michiel
Date: 2009-08-13 11:10:50 +0200 (Thu, 13 Aug 2009)
New Revision: 37762

Modified:
   
mmbase/trunk/applications/crontab/src/main/java/org/mmbase/applications/crontab/TestCronJob.java
Log:
added some configuration options to the TestCronJob, to make it possible to 
test some other situations too

Modified: 
mmbase/trunk/applications/crontab/src/main/java/org/mmbase/applications/crontab/TestCronJob.java
===================================================================
--- 
mmbase/trunk/applications/crontab/src/main/java/org/mmbase/applications/crontab/TestCronJob.java
    2009-08-13 08:50:34 UTC (rev 37761)
+++ 
mmbase/trunk/applications/crontab/src/main/java/org/mmbase/applications/crontab/TestCronJob.java
    2009-08-13 09:10:50 UTC (rev 37762)
@@ -7,6 +7,7 @@
  */
 package org.mmbase.applications.crontab;
 
+import java.util.*;
 import org.mmbase.bridge.*;
 import org.mmbase.util.logging.*;
 
@@ -19,13 +20,30 @@
 
     private static final Logger log = 
Logging.getLoggerInstance(TestCronJob.class);
 
+
+    Map<String, String> properties;
+
+    @Override
+    protected void init() {
+        properties = 
org.mmbase.util.StringSplitter.map(cronEntry.getConfiguration());
+    }
+
+
     public void run() {
         Cloud cloud = 
ContextProvider.getDefaultCloudContext().getCloud("mmbase", "class", null); // 
testing Class Security
         //Cloud cloud = 
ContextProvider.getDefaultCloudContext().getCloud("mmbase", "anonymous", null);
         log.info("found cloud " + cloud.getUser().getIdentifier() + "/" + 
cloud.getUser().getRank());
+        int duration = properties.containsKey("duration") ? 
Integer.valueOf(properties.get("duration")) : 128 * 1000;
         try {
             log.info("sleeping");
-            Thread.sleep(130 * 1000);
+            if ("true".equals(properties.get("exceptions")) && 
cronEntry.getCount() % 2 == 0) {
+                Thread.sleep(duration / 8);
+                log.info("Will throw an exception now");
+                throw new RuntimeException("This job throws sometimes an 
exception");
+                //Thread.sleep(7 * duration / 8);
+            } else {
+                Thread.sleep(duration);
+            }
             log.info("sleeped");
         } catch (InterruptedException e) {
             log.info("Interrupted");

_______________________________________________
Cvs mailing list
Cvs@lists.mmbase.org
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to