[jboss-svn-commits] JBL Code SVN: r14349 - in labs/jbossesb/trunk/product: rosetta/src/org/jboss/soa/esb/actions and 12 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Aug 18 11:50:33 EDT 2007


Author: tfennelly
Date: 2007-08-18 11:50:31 -0400 (Sat, 18 Aug 2007)
New Revision: 14349

Added:
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ScheduledListenerUnitTest.java
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config-configtree.xml
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config.xml
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-04-JBESB-843.xml
Modified:
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsConnectionPoolContainer.java
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/ContentBasedWiretap.java
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/client/MessageMulticaster.java
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/client/ServiceInvoker.java
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/Generator.java
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/ScheduleMapper.java
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/ScheduledListenerMapper.java
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/schedule/SchedulingUnitTest.java
   labs/jbossesb/trunk/product/samples/quickstarts/deadletter/src/org/jboss/soa/esb/samples/quickstart/deadletter/test/SendEsbMessage.java
   labs/jbossesb/trunk/product/samples/quickstarts/helloworld/src/org/jboss/soa/esb/samples/quickstart/helloworld/test/SendEsbMessage.java
   labs/jbossesb/trunk/product/samples/quickstarts/helloworld_file_notifier/src/org/jboss/soa/esb/samples/quickstart/helloworldfilenotifier/test/SendEsbMessage.java
   labs/jbossesb/trunk/product/samples/quickstarts/messagefilter/src/org/jboss/soa/esb/samples/quickstart/messagefilter/test/SendEsbMessage.java
   labs/jbossesb/trunk/product/samples/quickstarts/messagestore/src/org/jboss/soa/esb/samples/quickstart/messagestore/test/SendEsbMessage.java
   labs/jbossesb/trunk/product/tools/esbwizard/template/src/org/jboss/soa/esb/samples/quickstart/helloworld/test/SendEsbMessage.java
Log:
http://jira.jboss.com/jira/browse/JBESB-843
http://jira.jboss.com/jira/browse/JBESB-842
http://jira.jboss.com/jira/browse/JBESB-779
http://jira.jboss.com/jira/browse/JBESB-784

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsConnectionPoolContainer.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsConnectionPoolContainer.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsConnectionPoolContainer.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -31,6 +31,7 @@
 
 import org.jboss.soa.esb.addressing.eprs.JMSEpr;
 import org.jboss.soa.esb.lifecycle.LifecycleIdentity;
+import org.apache.log4j.Logger;
 
 /**
  * This is a temporary pooling class until we start using JCA. It is designed to build
@@ -40,12 +41,31 @@
  * Date: March 13, 2007
  */
 public class JmsConnectionPoolContainer{
+
+    private static Logger logger = Logger.getLogger(JmsConnectionPoolContainer.class);
+
     /**
      * Contextualised container of all the pools in the system.
      */
-    private static Map<String, Map<Map<String, String>, JmsConnectionPool>> poolMaps 
-        = new HashMap<String, Map<Map<String, String>, JmsConnectionPool>>();
-    
+    private static Map<String, Map<Map<String, String>, JmsConnectionPool>> poolMaps;
+
+    static {
+        poolMaps = new HashMap<String, Map<Map<String, String>, JmsConnectionPool>>();
+        logger.info("JMS Connection Pool successfully created.");
+
+        Thread shutdownHook = new Thread() {
+            public void run() {
+                try {
+                    removeAllPools();
+                    logger.info("JMS Connection Pool successfully cleaned up.");
+                } catch (JMSException e) {
+                    logger.error("JMS Connection Pool shutdown failed.", e);
+                }
+            }
+        };
+        Runtime.getRuntime().addShutdownHook(shutdownHook);
+    }
+
     /**
      * Returns the pool given a JMSEpr.
      * 
@@ -62,7 +82,7 @@
     /**
      * Returns the pool given the identifiers for the JMS provider.
      * 
-     * @param poolKey
+     * @param enviroment Comment me.
      * @return
      * @throws ConnectionException
      */
@@ -84,7 +104,6 @@
      * @param environment - the JNDI environment parameters
      * @param connectionFactory
      * @param destinationType
-     * @param destinationName
      * @return
      */
     public static Map<String, String> createPoolKey(Properties  environment, String connectionFactory, String destinationType) 

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/ContentBasedWiretap.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/ContentBasedWiretap.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/ContentBasedWiretap.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -58,6 +58,10 @@
 
     public static final String DEFAULT_CBR_CLASS = "org.jboss.internal.soa.esb.services.routing.cbr.JBossRulesRouter";
 
+    private static final String INTERNAL_SERVICE_CATEGORY = "JBossESB-Internal";
+    private static final String DEAD_LETTER_SERVICE_NAME = "DeadLetterService";
+    ServiceInvoker dlQueueInvoker;
+
     public ContentBasedWiretap(ConfigTree config)
             throws ConfigurationException, RegistryException,
             MessageRouterException {
@@ -66,6 +70,11 @@
         _registry = RegistryFactory.getRegistry();
         _cbr = ContentBasedRouterFactory.getRouter(_cbrClass);
         _mapper = new ObjectMapper();
+        try {
+            dlQueueInvoker = new ServiceInvoker(INTERNAL_SERVICE_CATEGORY, DEAD_LETTER_SERVICE_NAME);
+        } catch (MessageDeliverException e) {
+            new MessageRouterException(e);
+        }
     }
 
     public void initialise() {
@@ -108,7 +117,7 @@
                         + ". Please fix your configuration.");
 
         try {
-            ServiceInvoker.deliverToDeadLetterService(message);
+            dlQueueInvoker.deliverAsync(message);
         } catch (MessageDeliverException e) {
             throw new MessageRouterException("Failed to deliver message to Dead Letter Channel.", e);
         }

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/client/MessageMulticaster.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/client/MessageMulticaster.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/client/MessageMulticaster.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -120,7 +120,7 @@
 
             if(invoker == null) {
                 logger.error("Service '" + recipient + "' is not in recipient list.  Delivering message to Dead Letter Channel.");
-                org.jboss.soa.esb.client.ServiceInvoker.deliverToDeadLetterService(message);
+                ServiceInvoker.deliverToDeadLetterService(message);
             } else {
                 try {
                     invoker.deliverAsync(message);

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/client/ServiceInvoker.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/client/ServiceInvoker.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/client/ServiceInvoker.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -62,8 +62,8 @@
  */
 public class ServiceInvoker {
 
-    public static final String INTERNAL_SERVICE_CATEGORY = "JBossESB-Internal";
-    public static final String DEAD_LETTER_SERVICE_NAME = "DeadLetterService";
+    private static final String INTERNAL_SERVICE_CATEGORY = "JBossESB-Internal";
+    private static final String DEAD_LETTER_SERVICE_NAME = "DeadLetterService";
     public static final String DELIVER_TO = "org.jboss.soa.esb.deliver.to";
     public static final String IS_REDELIVERY = "org.jboss.soa.esb.deliver.is";
     
@@ -144,39 +144,6 @@
     }
 
     /**
-     * Method to deliver *one* message, which allocates resources before sending the message and
-     * deallocates resources after the invocation.
-     *
-     * @param message Message to be send
-     * @return message (if the invo
-     * @throws RegistryException       Failed to lookup Service endpoint.
-     * @throws MessageDeliverException Failed to deliver message to endpoint.
-     * @deprecated Please do not use this method.  This was added as a short term workaround
-     *             and will be going away ASAP.
-     */
-    public Message deliverOne(Message message) throws MessageDeliverException, RegistryException, FaultMessageException {
-        try {
-            deliverAsync(message);
-        } finally {
-            //cleanup allocated resources.
-            close();
-        }
-        return message;
-    }
-
-    /**
-     * Release allocated resources, such as connection pools. This is only of interest when you run
-     * in standalone mode, in other cases the container will call it for you.
-     */
-    public void close() {
-        try {
-            JmsConnectionPoolContainer.removeAllPools();
-        } catch (JMSException e) {
-            logger.error("Could not release resources " + e.getMessage(), e);
-        }
-    }
-
-    /**
      * Synchronously deliver the supplied message to the target service associated with this invoker instance.
      * If the To field of the Message is set, then it will be ignored in favour of the equivalent information
      * obtained through the parameters provided during instance construction.
@@ -236,12 +203,16 @@
 
     /**
      * Deliver a message to the Dead Letter Channel Service.
+     * <p/>
+     * For internal package use only.
      *
      * @param message The message to be delivered to the dead letter chennel.
      * @throws RegistryException       Service endpoint lookup failure.
      * @throws MessageDeliverException Message delivery failure.
      */
-    public static synchronized void deliverToDeadLetterService(Message message) throws MessageDeliverException {
+    protected static synchronized void deliverToDeadLetterService(Message message) throws MessageDeliverException {
+        // NB: Do not make this static method public!!!
+
         if (!"true".equalsIgnoreCase(Configuration.getRedeliveryDlsOn())) {
             logger.debug("org.jboss.soa.esb.dls.redeliver is turned off");
         } else {

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -35,6 +35,7 @@
 import org.apache.log4j.Logger;
 import org.jboss.internal.soa.esb.rosetta.pooling.JmsConnectionPoolContainer;
 import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.client.ServiceInvoker;
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.addressing.eprs.FTPEpr;
 import org.jboss.soa.esb.addressing.eprs.FileEpr;
@@ -49,7 +50,9 @@
 public class ListenerUtil
 {
 
-	private ListenerUtil()
+    private static Logger logger = Logger.getLogger(ListenerUtil.class);
+
+    private ListenerUtil()
 	{
 	}
 
@@ -63,13 +66,13 @@
      * @throws MessageDeliverException
      * @throws RegistryException
      * @throws JMSException
+     * @deprecated <b>DO NOT USE</b>.  Use {@link org.jboss.soa.esb.client.ServiceInvoker#deliverAsync(org.jboss.soa.esb.message.Message)} instead.
      */
 	public static void tryToDeliver(Message message, String category, String name)
 			throws MessageDeliverException, JMSException, RegistryException
 	{
-        org.jboss.soa.esb.client.ServiceInvoker adapter = new org.jboss.soa.esb.client.ServiceInvoker(category, name);
-        adapter.deliverAsync(message);
-        JmsConnectionPoolContainer.removeAllPools();
+        logger.warn("**** DEPRECATED ***: Please do not call '" + ListenerUtil.class.getSimpleName() + ".tryToDeliver'! Use '" + ServiceInvoker.class.getSimpleName() + ".deliverAsync' instead.");
+        new ServiceInvoker(category, name).deliverAsync(message);
 	}
 
 	public static EPR assembleEpr(ConfigTree tree)

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/Generator.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/Generator.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/Generator.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -389,5 +389,15 @@
 		public String getParameterReloadSecs() {
 			return jbossesb.getParameterReloadSecs().getStringValue();
 		}
+        
+        public static String getProperty(List<PropertyDocument.Property> properties, String name, String defaultVal) {
+            for (PropertyDocument.Property property : properties) {
+                if(property.getName().equals(name)) {
+                    return property.getValue();
+                }
+            }
+
+            return defaultVal;
+        }
 	}
 }

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/ScheduleMapper.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/ScheduleMapper.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/ScheduleMapper.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -21,10 +21,16 @@
 
 import org.w3c.dom.Element;
 import org.jboss.soa.esb.listeners.config.ScheduleProviderFactory;
+import org.jboss.soa.esb.listeners.config.Generator;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.AbstractScheduledListener;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.PropertyDocument;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.Listener;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.PropertyDocument.Property;
 import org.jboss.soa.esb.ConfigurationException;
 import org.apache.log4j.Logger;
 
+import java.util.List;
+
 /**
  * Schedule Mapper.
  * <p/>
@@ -43,6 +49,7 @@
         Element domElement = (Element) scheduledListener.getDomNode();
         int frequency = scheduledListener.getScheduleFrequency();
         int pollFrequency = scheduledListener.getPollFrequencySeconds();
+        int pollLatency = getPollLatencySeconds(scheduledListener);
 
         if(scheduleIdRef != null) {
             listenerConfig.setAttribute(ScheduleProviderFactory.ATTR_SCHEDULE_ID_REF, scheduleIdRef);
@@ -53,6 +60,8 @@
             listenerConfig.setAttribute(ScheduleProviderFactory.ATTR_FREQUENCY, Integer.toString(frequency));
         } else if(pollFrequency > -1) {
             listenerConfig.setAttribute(ScheduleProviderFactory.ATTR_FREQUENCY, Integer.toString(pollFrequency));
+        } else if(pollLatency > -1) {
+            listenerConfig.setAttribute(ScheduleProviderFactory.ATTR_FREQUENCY, Integer.toString(pollLatency));
         } else {
             listenerConfig.setAttribute(ScheduleProviderFactory.ATTR_FREQUENCY, "10");
         }
@@ -60,5 +69,18 @@
         if(domElement.hasAttribute("poll-frequency-seconds")) {
             logger.warn("Attrubute 'poll-frequency-seconds' is DEPRECATED.  Please change your configuation to use 'schedule-frequency'.");
         }
+        if(pollLatency > -1) {
+            logger.warn("Property 'pollLatencySeconds' is DEPRECATED.  Please change your configuation to use 'schedule-frequency'.");
+        }
     }
+
+    private static int getPollLatencySeconds(AbstractScheduledListener scheduledListener) {
+        String value = Generator.XMLBeansModel.getProperty(scheduledListener.getPropertyList(), "pollLatencySeconds", "-1");
+
+        try {
+            return Integer.parseInt(value);
+        } catch (NumberFormatException e) {
+            return -1;
+        }
+    }
 }
\ No newline at end of file

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/ScheduledListenerMapper.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/ScheduledListenerMapper.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/ScheduledListenerMapper.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -36,6 +36,9 @@
         listenerNode.setAttribute("composer", scheduledListener.getComposer());
         listenerNode.setAttribute(ListenerTagNames.LISTENER_CLASS_TAG, ScheduleListener.class.getName());
 
+        // Map the <property> elements targeted at the listener - from the listener itself.
+        MapperUtil.mapProperties(scheduledListener.getPropertyList(), listenerNode);
+
         return listenerNode;
     }
 }

Added: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ScheduledListenerUnitTest.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ScheduledListenerUnitTest.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ScheduledListenerUnitTest.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -0,0 +1,41 @@
+/*
+ * 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.listeners;
+
+import junit.framework.TestCase;
+import org.jboss.soa.esb.testutils.ESBConfigUtil;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.internal.soa.esb.util.StreamUtils;
+
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class ScheduledListenerUnitTest extends TestCase {
+
+    public void test() throws UnsupportedEncodingException {
+        ESBConfigUtil configUtil = new ESBConfigUtil(getClass().getResourceAsStream("scheduled-listener-config.xml"));
+        String actualListenerConfig = configUtil.getListenerConfig("simple-schedule-listener").toXml();
+        String expectedListenerConfig = StreamUtils.readStreamString(getClass().getResourceAsStream("scheduled-listener-config-configtree.xml"), "UTF-8");
+
+        assertEquals(expectedListenerConfig, actualListenerConfig);
+    }
+}


Property changes on: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ScheduledListenerUnitTest.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config-configtree.xml
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config-configtree.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config-configtree.xml	2007-08-18 15:50:31 UTC (rev 14349)
@@ -0,0 +1,3 @@
+<simple-schedule-listener composer="org.jboss.soa.esb.schedule.MockScheduledEventMessageComposer" listenerClass="org.jboss.soa.esb.listeners.ScheduleListener" my-prop="1" scheduleidref="1-sec-trigger">
+<action action="action" class="org.jboss.soa.esb.mock.MockAction"/>
+</simple-schedule-listener>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config-configtree.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config.xml
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config.xml	2007-08-18 15:50:31 UTC (rev 14349)
@@ -0,0 +1,25 @@
+<?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">
+            <simple-schedule scheduleid="1-sec-trigger" frequency="1" />
+        </schedule-provider>
+    </providers>
+
+    <services>
+        <service category="ServiceCat" name="ServiceName" description="Test Service">
+
+            <listeners>
+                <scheduled-listener name="simple-schedule-listener" scheduleidref="1-sec-trigger" composer="org.jboss.soa.esb.schedule.MockScheduledEventMessageComposer">
+                    <property name="my-prop" value="1" />
+                </scheduled-listener>
+            </listeners>
+
+            <actions>
+                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
+            </actions>			
+        </service>
+    </services>
+
+</jbossesb>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/scheduled-listener-config.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Modified: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/schedule/SchedulingUnitTest.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/schedule/SchedulingUnitTest.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/schedule/SchedulingUnitTest.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -84,6 +84,13 @@
         assertTrue(MockScheduledEventMessageComposer.composedMessages.size() > 1);
     }
 
+    public void test_simple_schedule_04_JBESB_843() throws UnsupportedEncodingException, ParamRepositoryException, ConfigurationException, ManagedLifecycleException, SAXException, InterruptedException {
+        runTestConfig("config-04-JBESB-843.xml", 5000);
+
+        // Just check that the schedule was triggered more than once...
+        assertTrue(MockScheduledEventMessageComposer.composedMessages.size() > 1);
+    }
+
     public void test_simple_schedule_05() throws UnsupportedEncodingException, ParamRepositoryException, ConfigurationException, ManagedLifecycleException, SAXException, InterruptedException {
         runTestConfig("config-05.xml", 5000);
 

Added: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-04-JBESB-843.xml
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-04-JBESB-843.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-04-JBESB-843.xml	2007-08-18 15:50:31 UTC (rev 14349)
@@ -0,0 +1,19 @@
+<?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">
+
+    <services>
+        <service category="ServiceCat" name="ServiceName" description="Test Service">
+
+            <listeners>
+                <scheduled-listener name="simple-schedule-listener" composer="org.jboss.soa.esb.schedule.MockScheduledEventMessageComposer">
+                    <property name="pollLatencySeconds" value="1" />
+                </scheduled-listener>
+            </listeners>
+
+            <actions>
+                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
+            </actions>			
+        </service>
+    </services>
+
+</jbossesb>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-04-JBESB-843.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Modified: labs/jbossesb/trunk/product/samples/quickstarts/deadletter/src/org/jboss/soa/esb/samples/quickstart/deadletter/test/SendEsbMessage.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/deadletter/src/org/jboss/soa/esb/samples/quickstart/deadletter/test/SendEsbMessage.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/samples/quickstarts/deadletter/src/org/jboss/soa/esb/samples/quickstart/deadletter/test/SendEsbMessage.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -27,9 +27,9 @@
 import java.util.UUID;
 
 import org.jboss.soa.esb.addressing.Call;
-import org.jboss.soa.esb.listeners.ListenerUtil;
 import org.jboss.soa.esb.message.Message;
 import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.client.ServiceInvoker;
 
 /**
  * Standalone class with to send ESB messages to a 'known' [category,name].
@@ -60,7 +60,7 @@
     	// set body contents with args[2], and send
     	esbMessage.getBody().setByteArray((args[2] + " - " + new Date()).getBytes());
     	
-    	ListenerUtil.tryToDeliver(esbMessage, args[0], args[1]);
+        new ServiceInvoker(args[0], args[1]).deliverAsync(esbMessage);
     	
     }
     

Modified: labs/jbossesb/trunk/product/samples/quickstarts/helloworld/src/org/jboss/soa/esb/samples/quickstart/helloworld/test/SendEsbMessage.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/helloworld/src/org/jboss/soa/esb/samples/quickstart/helloworld/test/SendEsbMessage.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/samples/quickstarts/helloworld/src/org/jboss/soa/esb/samples/quickstart/helloworld/test/SendEsbMessage.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -26,9 +26,9 @@
 import java.util.UUID;
 
 import org.jboss.soa.esb.addressing.Call;
-import org.jboss.soa.esb.listeners.ListenerUtil;
 import org.jboss.soa.esb.message.Message;
 import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.client.ServiceInvoker;
 
 /**
  * Standalone class with to send ESB messages to a 'known' [category,name].
@@ -60,7 +60,7 @@
     	// set body contents with args[2], and send
     	esbMessage.getBody().setByteArray(args[2].getBytes());
     	
-    	ListenerUtil.tryToDeliver(esbMessage, args[0], args[1]);
+        new ServiceInvoker(args[0], args[1]).deliverAsync(esbMessage);
     	
     }
     

Modified: labs/jbossesb/trunk/product/samples/quickstarts/helloworld_file_notifier/src/org/jboss/soa/esb/samples/quickstart/helloworldfilenotifier/test/SendEsbMessage.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/helloworld_file_notifier/src/org/jboss/soa/esb/samples/quickstart/helloworldfilenotifier/test/SendEsbMessage.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/samples/quickstarts/helloworld_file_notifier/src/org/jboss/soa/esb/samples/quickstart/helloworldfilenotifier/test/SendEsbMessage.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -26,9 +26,9 @@
 import java.util.UUID;
 
 import org.jboss.soa.esb.addressing.Call;
-import org.jboss.soa.esb.listeners.ListenerUtil;
 import org.jboss.soa.esb.message.Message;
 import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.client.ServiceInvoker;
 
 /**
  * Standalone class with to send ESB messages to a 'known' [category,name].
@@ -60,8 +60,8 @@
     	// set body contents with args[2], and send
     	esbMessage.getBody().setByteArray(args[2].getBytes());
     	
-    	ListenerUtil.tryToDeliver(esbMessage, args[0], args[1]);
-    	
+        new ServiceInvoker(args[0], args[1]).deliverAsync(esbMessage);
+
     }
     
 }
\ No newline at end of file

Modified: labs/jbossesb/trunk/product/samples/quickstarts/messagefilter/src/org/jboss/soa/esb/samples/quickstart/messagefilter/test/SendEsbMessage.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/messagefilter/src/org/jboss/soa/esb/samples/quickstart/messagefilter/test/SendEsbMessage.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/samples/quickstarts/messagefilter/src/org/jboss/soa/esb/samples/quickstart/messagefilter/test/SendEsbMessage.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -26,10 +26,10 @@
 import java.util.UUID;
 
 import org.jboss.soa.esb.addressing.Call;
-import org.jboss.soa.esb.listeners.ListenerUtil;
 import org.jboss.soa.esb.message.Message;
 import org.jboss.soa.esb.message.format.MessageFactory;
 import org.jboss.soa.esb.samples.quickstart.messagefilter.Order;
+import org.jboss.soa.esb.client.ServiceInvoker;
 
 /**
  * Standalone class with to send ESB messages to a 'known' [category,name].
@@ -62,9 +62,8 @@
         Order order = new Order();
         order.setQuantity(Integer.valueOf(args[2]));
         esbMessage.getBody().add(order);
-    	
-    	ListenerUtil.tryToDeliver(esbMessage, args[0], args[1]);
-    	
+
+        new ServiceInvoker(args[0], args[1]).deliverAsync(esbMessage);
     }
     
 }
\ No newline at end of file

Modified: labs/jbossesb/trunk/product/samples/quickstarts/messagestore/src/org/jboss/soa/esb/samples/quickstart/messagestore/test/SendEsbMessage.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/messagestore/src/org/jboss/soa/esb/samples/quickstart/messagestore/test/SendEsbMessage.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/samples/quickstarts/messagestore/src/org/jboss/soa/esb/samples/quickstart/messagestore/test/SendEsbMessage.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -26,9 +26,9 @@
 import java.util.UUID;
 
 import org.jboss.soa.esb.addressing.Call;
-import org.jboss.soa.esb.listeners.ListenerUtil;
 import org.jboss.soa.esb.message.Message;
 import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.client.ServiceInvoker;
 
 /**
  * Standalone class with to send ESB messages to a 'known' [category,name].
@@ -59,7 +59,7 @@
     	// set body contents with args[2], and send
     	esbMessage.getBody().setByteArray(args[2].getBytes());
     	
-    	ListenerUtil.tryToDeliver(esbMessage, args[0], args[1]);
+        new ServiceInvoker(args[0], args[1]).deliverAsync(esbMessage);
     	
     }
     

Modified: labs/jbossesb/trunk/product/tools/esbwizard/template/src/org/jboss/soa/esb/samples/quickstart/helloworld/test/SendEsbMessage.java
===================================================================
--- labs/jbossesb/trunk/product/tools/esbwizard/template/src/org/jboss/soa/esb/samples/quickstart/helloworld/test/SendEsbMessage.java	2007-08-18 15:20:13 UTC (rev 14348)
+++ labs/jbossesb/trunk/product/tools/esbwizard/template/src/org/jboss/soa/esb/samples/quickstart/helloworld/test/SendEsbMessage.java	2007-08-18 15:50:31 UTC (rev 14349)
@@ -26,9 +26,9 @@
 import java.util.UUID;
 
 import org.jboss.soa.esb.addressing.Call;
-import org.jboss.soa.esb.listeners.ListenerUtil;
 import org.jboss.soa.esb.message.Message;
 import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.client.ServiceInvoker;
 
 /**
  * Standalone class with to send ESB messages to a 'known' [category,name].
@@ -57,8 +57,8 @@
     	// set body contents with args[2], and send
     	esbMessage.getBody().setByteArray(args[2].getBytes());
     	
-    	ListenerUtil.tryToDeliver(esbMessage, args[0], args[1]);
-    	
+        new ServiceInvoker(args[0], args[1]).deliverAsync(esbMessage);
+
     }
     
 }
\ No newline at end of file




More information about the jboss-svn-commits mailing list