[jboss-svn-commits] JBL Code SVN: r20057 - labs/jbossesb/trunk/product/tools/console/management/src/main/java/org/jboss/soa/esb/monitoring/server.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon May 19 14:18:12 EDT 2008


Author: kevin.conner at jboss.com
Date: 2008-05-19 14:18:12 -0400 (Mon, 19 May 2008)
New Revision: 20057

Modified:
   labs/jbossesb/trunk/product/tools/console/management/src/main/java/org/jboss/soa/esb/monitoring/server/DataFilerScheduler.java
   labs/jbossesb/trunk/product/tools/console/management/src/main/java/org/jboss/soa/esb/monitoring/server/DataFilerSchedulerMBean.java
Log:
Defer scheduling until start: JBESB-1724

Modified: labs/jbossesb/trunk/product/tools/console/management/src/main/java/org/jboss/soa/esb/monitoring/server/DataFilerScheduler.java
===================================================================
--- labs/jbossesb/trunk/product/tools/console/management/src/main/java/org/jboss/soa/esb/monitoring/server/DataFilerScheduler.java	2008-05-19 18:18:00 UTC (rev 20056)
+++ labs/jbossesb/trunk/product/tools/console/management/src/main/java/org/jboss/soa/esb/monitoring/server/DataFilerScheduler.java	2008-05-19 18:18:12 UTC (rev 20057)
@@ -24,6 +24,7 @@
 import java.util.Date;
 
 import org.apache.log4j.Logger;
+import org.jboss.system.ServiceMBeanSupport;
 import org.quartz.JobDataMap;
 import org.quartz.JobDetail;
 import org.quartz.Scheduler;
@@ -40,7 +41,7 @@
  * @author <a href="mailto:tcunning at redhat.com">Tom Cunningham</a>
  * @since Version 4.2
  */
-public class DataFilerScheduler implements DataFilerSchedulerMBean {
+public class DataFilerScheduler extends ServiceMBeanSupport implements DataFilerSchedulerMBean {
 	private static final Logger logger = Logger.getLogger(DataFilerScheduler.class);
 	private static final int DEFAULT_POLL_MINUTE_FREQ = 2;
 	
@@ -52,31 +53,32 @@
 		return pollMinuteFrequency;
 	}
 
-	public void create() throws SchedulerException {
+	public void start() throws Exception {
+		super.start();
 		SchedulerFactory schedulerFactory = new StdSchedulerFactory();
 		scheduler = schedulerFactory.getScheduler();
+		schedule() ;
 	}
 	
-	public void destroy() {
+	public void stop() {
 		try {
 			scheduler.shutdown();
 			scheduler.deleteJob(DataFilerJob.JOB_GROUP, DataFilerJob.JOB_NAME);
 		} catch (SchedulerException e) {
 			logger.error("", e);
 		}
+		super.stop();
 	}
 	
 	public void setPollMinuteFrequency(int f_pollMinuteFrequency) {
-		if (scheduler == null) {
-			try {
-				create();
-			} catch (SchedulerException e) {
-				logger.error("", e);
-			}
-		}
-		
 		pollMinuteFrequency = f_pollMinuteFrequency;
 		
+		if (scheduler != null) {
+			schedule() ;
+		}
+	}
+
+	private void schedule() {
 		long ctime = System.currentTimeMillis();
 		
 		try {
@@ -85,7 +87,7 @@
 			JobDetail jobDetail = new JobDetail(DataFilerJob.JOB_GROUP, DataFilerJob.JOB_NAME, DataFilerJob.class);
 
 			final JobDataMap datamap = new JobDataMap() ;
-            datamap.put(ClassLoader.class.getName(), Thread.currentThread().getContextClassLoader()) ;
+			datamap.put(ClassLoader.class.getName(), Thread.currentThread().getContextClassLoader()) ;
 			jobDetail.setJobDataMap(datamap) ;
 			
 			SimpleTrigger simpleTrigger = new SimpleTrigger(DataFilerJob.JOB_GROUP, DataFilerJob.JOB_NAME);
@@ -101,7 +103,4 @@
 			logger.error("", e);
 		}
 	}
-	
-	
-	
 }

Modified: labs/jbossesb/trunk/product/tools/console/management/src/main/java/org/jboss/soa/esb/monitoring/server/DataFilerSchedulerMBean.java
===================================================================
--- labs/jbossesb/trunk/product/tools/console/management/src/main/java/org/jboss/soa/esb/monitoring/server/DataFilerSchedulerMBean.java	2008-05-19 18:18:00 UTC (rev 20056)
+++ labs/jbossesb/trunk/product/tools/console/management/src/main/java/org/jboss/soa/esb/monitoring/server/DataFilerSchedulerMBean.java	2008-05-19 18:18:12 UTC (rev 20057)
@@ -31,7 +31,7 @@
  * @author <a href="mailto:tcunning at redhat.com">Tom Cunningham</a>
  * @since Version 4.2
  */
-public interface DataFilerSchedulerMBean {
+public interface DataFilerSchedulerMBean extends ServiceMBean {
 	public int getPollMinuteFrequency();
 	public void setPollMinuteFrequency(int f_pollMinuteFrequency);
 }




More information about the jboss-svn-commits mailing list