[jboss-svn-commits] JBL Code SVN: r23775 - in labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta: tests/src/org/jboss/soa/esb/schedule and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Nov 7 06:35:21 EST 2008


Author: kevin.conner at jboss.com
Date: 2008-11-07 06:35:20 -0500 (Fri, 07 Nov 2008)
New Revision: 23775

Added:
   labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/
   labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_ScheduledEventMessageComposer.java
   labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_UnitTest.java
   labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/config-01.xml
Removed:
   labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_ScheduledEventMessageComposer.java
   labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/config-01.xml
Modified:
   labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/schedule/SchedulerJob.java
Log:
Handle crom timer misfires: JBESB-2167

Modified: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/schedule/SchedulerJob.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/schedule/SchedulerJob.java	2008-11-07 10:59:43 UTC (rev 23774)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/schedule/SchedulerJob.java	2008-11-07 11:35:20 UTC (rev 23775)
@@ -239,7 +239,7 @@
         throws ParseException
     {
         final CronTrigger trigger = new CronTrigger(getJobName(), JOB_GROUP, cronExpression) ;
-        trigger.setMisfireInstruction(CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING) ;
+        trigger.setMisfireInstruction(CronTrigger.MISFIRE_INSTRUCTION_FIRE_ONCE_NOW) ;
         if (startDate != null)
         {
             trigger.setStartTime(startDate) ;

Copied: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146 (from rev 23621, labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146)

Deleted: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_ScheduledEventMessageComposer.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_ScheduledEventMessageComposer.java	2008-10-29 17:08:46 UTC (rev 23621)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_ScheduledEventMessageComposer.java	2008-11-07 11:35:20 UTC (rev 23775)
@@ -1,67 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.schedule.JBESB_2146;
-
-import org.jboss.soa.esb.listeners.ScheduledEventMessageComposer;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.schedule.SchedulingException;
-import org.jboss.soa.esb.schedule.MockScheduledEventMessageComposer;
-
-import java.util.*;
-
-/**
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class JBESB_2146_ScheduledEventMessageComposer implements ScheduledEventMessageComposer {
-
-    public ConfigTree config;
-    public List<Message> composedMessages = Collections.synchronizedList(new ArrayList<Message>());
-    public List<Message> completedMessage = Collections.synchronizedList(new ArrayList<Message>());
-    private static Map<String, JBESB_2146_ScheduledEventMessageComposer> composers = new HashMap<String, JBESB_2146_ScheduledEventMessageComposer>();
-
-    public void reset() {
-        composedMessages.clear();
-        completedMessage.clear();
-    }
-
-    public void initialize(ConfigTree config) {
-        this.config = config;
-        composers.put(config.getAttribute("name"), this);
-    }
-
-    public static JBESB_2146_ScheduledEventMessageComposer getComposer(String name) {
-        return composers.get(name);
-    }
-
-    public void uninitialize() {
-    }
-
-    public Message composeMessage() throws SchedulingException {
-        Message message = org.jboss.soa.esb.message.format.MessageFactory.getInstance().getMessage();
-        composedMessages.add(message);
-        return message;
-    }
-
-    public Message onProcessingComplete(Message message) throws SchedulingException {
-        completedMessage.add(message);
-        return message;
-    }
-}
\ No newline at end of file

Copied: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_ScheduledEventMessageComposer.java (from rev 23621, labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_ScheduledEventMessageComposer.java)
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_ScheduledEventMessageComposer.java	                        (rev 0)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_ScheduledEventMessageComposer.java	2008-11-07 11:35:20 UTC (rev 23775)
@@ -0,0 +1,67 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.schedule.JBESB_2146;
+
+import org.jboss.soa.esb.listeners.ScheduledEventMessageComposer;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.schedule.SchedulingException;
+import org.jboss.soa.esb.schedule.MockScheduledEventMessageComposer;
+
+import java.util.*;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class JBESB_2146_ScheduledEventMessageComposer implements ScheduledEventMessageComposer {
+
+    public ConfigTree config;
+    public List<Message> composedMessages = Collections.synchronizedList(new ArrayList<Message>());
+    public List<Message> completedMessage = Collections.synchronizedList(new ArrayList<Message>());
+    private static Map<String, JBESB_2146_ScheduledEventMessageComposer> composers = new HashMap<String, JBESB_2146_ScheduledEventMessageComposer>();
+
+    public void reset() {
+        composedMessages.clear();
+        completedMessage.clear();
+    }
+
+    public void initialize(ConfigTree config) {
+        this.config = config;
+        composers.put(config.getAttribute("name"), this);
+    }
+
+    public static JBESB_2146_ScheduledEventMessageComposer getComposer(String name) {
+        return composers.get(name);
+    }
+
+    public void uninitialize() {
+    }
+
+    public Message composeMessage() throws SchedulingException {
+        Message message = org.jboss.soa.esb.message.format.MessageFactory.getInstance().getMessage();
+        composedMessages.add(message);
+        return message;
+    }
+
+    public Message onProcessingComplete(Message message) throws SchedulingException {
+        completedMessage.add(message);
+        return message;
+    }
+}
\ No newline at end of file

Copied: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_UnitTest.java (from rev 23680, labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_UnitTest.java)
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_UnitTest.java	                        (rev 0)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/JBESB_2146_UnitTest.java	2008-11-07 11:35:20 UTC (rev 23775)
@@ -0,0 +1,58 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.schedule.JBESB_2146;
+
+import junit.framework.TestCase;
+
+import org.jboss.soa.esb.mock.MockAction;
+import org.jboss.soa.esb.schedule.MockScheduledEventListener;
+import org.jboss.soa.esb.schedule.MockScheduledEventMessageComposer;
+import org.jboss.soa.esb.testutils.ESBConfigUtil;
+
+/**
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class JBESB_2146_UnitTest extends TestCase {
+
+    protected void setUp() throws Exception {
+        MockScheduledEventMessageComposer.reset();
+        MockScheduledEventListener.reset();
+        MockAction.message = null;
+    }
+
+    public void test_simple_schedule_01() throws Exception {
+        runTestConfig("config-01.xml", 10000);
+
+        JBESB_2146_ScheduledEventMessageComposer composer1 = JBESB_2146_ScheduledEventMessageComposer.getComposer("simple-schedule-listener1");
+        JBESB_2146_ScheduledEventMessageComposer composer2 = JBESB_2146_ScheduledEventMessageComposer.getComposer("simple-schedule-listener2");
+
+        assertTrue("simple-schedule-listener1 fired", composer1.composedMessages.size() > 0);
+        assertTrue("simple-schedule-listener2 fired", composer2.composedMessages.size() > 0);
+    }
+
+    private void runTestConfig(String configName, long upTime) throws Exception {
+        ESBConfigUtil configUtil = new ESBConfigUtil(getClass().getResourceAsStream(configName));
+
+        configUtil.startController();
+        Thread.sleep(upTime);
+        configUtil.stopController();
+    }
+}
\ No newline at end of file

Deleted: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/config-01.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/config-01.xml	2008-10-29 17:08:46 UTC (rev 23621)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/config-01.xml	2008-11-07 11:35:20 UTC (rev 23775)
@@ -1,34 +0,0 @@
-<?xml version = "1.0" encoding = "UTF-8"?>
-<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
-
-    <providers>
-        <schedule-provider name="schedule">
-            <cron-schedule scheduleid="schedule1" cronExpression="0/2 * * * * ?"/>
-            <cron-schedule scheduleid="schedule2" cronExpression="0/1 * * * * ?"/>
-        </schedule-provider>
-    </providers>
-
-    <services>
-        <service category="ServiceCat" name="ServiceName-01" description="Test Service">
-
-            <listeners>
-                <scheduled-listener name="simple-schedule-listener1" scheduleidref="schedule1" event-processor="org.jboss.soa.esb.schedule.JBESB_2146.JBESB_2146_ScheduledEventMessageComposer" />
-            </listeners>
-
-            <actions>
-                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
-            </actions>			
-        </service>
-        <service category="ServiceCat" name="ServiceName-02" description="Test Service">
-
-            <listeners>
-                <scheduled-listener name="simple-schedule-listener2" scheduleidref="schedule2" event-processor="org.jboss.soa.esb.schedule.JBESB_2146.JBESB_2146_ScheduledEventMessageComposer" />
-            </listeners>
-
-            <actions>
-                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
-            </actions>
-        </service>
-    </services>
-
-</jbossesb>
\ No newline at end of file

Copied: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/config-01.xml (from rev 23621, labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/config-01.xml)
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/config-01.xml	                        (rev 0)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/schedule/JBESB_2146/config-01.xml	2008-11-07 11:35:20 UTC (rev 23775)
@@ -0,0 +1,33 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <providers>
+        <schedule-provider name="schedule">
+            <cron-schedule scheduleid="schedule1" cronExpression="0/2 * * * * ?"/>
+        </schedule-provider>
+    </providers>
+
+    <services>
+        <service category="ServiceCat" name="ServiceName-01" description="Test Service">
+
+            <listeners>
+                <scheduled-listener name="simple-schedule-listener1" scheduleidref="schedule1" event-processor="org.jboss.soa.esb.schedule.JBESB_2146.JBESB_2146_ScheduledEventMessageComposer" />
+            </listeners>
+
+            <actions>
+                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
+            </actions>			
+        </service>
+        <service category="ServiceCat" name="ServiceName-02" description="Test Service">
+
+            <listeners>
+                <scheduled-listener name="simple-schedule-listener2" scheduleidref="schedule1" event-processor="org.jboss.soa.esb.schedule.JBESB_2146.JBESB_2146_ScheduledEventMessageComposer" />
+            </listeners>
+
+            <actions>
+                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
+            </actions>
+        </service>
+    </services>
+
+</jbossesb>
\ No newline at end of file




More information about the jboss-svn-commits mailing list