You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by az...@apache.org on 2008/10/06 10:41:24 UTC

svn commit: r702006 - /synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartzJob.java

Author: azeez
Date: Mon Oct  6 01:41:24 2008
New Revision: 702006

URL: http://svn.apache.org/viewvc?rev=702006&view=rev
Log:
1. Call destroy
2. Code improvements

Modified:
    synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartzJob.java

Modified: synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartzJob.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartzJob.java?rev=702006&r1=702005&r2=702006&view=diff
==============================================================================
--- synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartzJob.java (original)
+++ synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartzJob.java Mon Oct  6 01:41:24 2008
@@ -1,30 +1,32 @@
 package org.apache.synapse.startup.quartz;
 
-import java.util.Iterator;
-import java.util.Set;
-
 import org.apache.axiom.om.OMElement;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.synapse.ManagedLifecycle;
-import org.apache.synapse.startup.Task;
 import org.apache.synapse.config.xml.PropertyHelper;
 import org.apache.synapse.core.SynapseEnvironment;
+import org.apache.synapse.startup.Task;
 import org.quartz.Job;
 import org.quartz.JobDataMap;
 import org.quartz.JobExecutionContext;
 import org.quartz.JobExecutionException;
 
+import java.util.Set;
+
 public class SimpleQuartzJob implements Job {
-    public static final String
-        SYNAPSE_ENVIRONMENT = "SynapseEnvironment",
-        CLASSNAME = "ClassName",
-        PROPERTIES = "Properties";
+    public static final String SYNAPSE_ENVIRONMENT = "SynapseEnvironment";
+    public static final String CLASSNAME = "ClassName";
+    public static final String PROPERTIES = "Properties";
+
     private static final Log log = LogFactory.getLog(SimpleQuartzJob.class);
 
     public void execute(JobExecutionContext ctx) throws JobExecutionException {
 
-        log.debug("Executing task : " + ctx.getJobDetail().getFullName());
+        String jobName = ctx.getJobDetail().getFullName();
+        if (log.isDebugEnabled()) {
+            log.debug("Executing task : " + jobName);
+        }
         JobDataMap jdm = ctx.getMergedJobDataMap();
         String jobClassName = (String) jdm.get(CLASSNAME);
         if (jobClassName == null) {
@@ -39,23 +41,27 @@
         }
 
         Set properties = (Set) jdm.get(PROPERTIES);
-        Iterator it = properties.iterator();
-        while (it.hasNext()) {
-            OMElement prop = (OMElement) it.next();
+        for (Object property : properties) {
+            OMElement prop = (OMElement) property;
             log.debug("Found Property : " + prop.toString());
             PropertyHelper.setStaticProperty(prop, task);
         }
 
+        // 1. Initialize
         SynapseEnvironment se = (SynapseEnvironment) jdm.get("SynapseEnvironment");
-        if (task instanceof ManagedLifecycle) {
-            if (se != null) {
-                ((ManagedLifecycle) task).init(se);
-            }
+        if (task instanceof ManagedLifecycle && se != null) {
+            ((ManagedLifecycle) task).init(se);
         }
 
-        if (se.isInitialized()) {
+        // 2. Execute
+        if (se != null && task != null && se.isInitialized()) {
             task.execute();
         }
+
+        // 3. Destroy
+        if (task instanceof ManagedLifecycle && se != null) {
+            ((ManagedLifecycle) task).destroy();
+        }
     }
 
     private void handleException(String msg) throws JobExecutionException {