[jboss-svn-commits] JBL Code SVN: r8404 - in labs/jbossesb/trunk/product/core/listeners: src/org/jboss/soa/esb/listeners tests/src/org/jboss/soa/esb/listeners
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Dec 19 09:49:43 EST 2006
Author: kevin.conner at jboss.com
Date: 2006-12-19 09:49:39 -0500 (Tue, 19 Dec 2006)
New Revision: 8404
Modified:
labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/ListenerManagerFactory.java
labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/ListenerUtil.java
labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/listeners/ListenerManagerUnitTest.java
Log:
Fixed more platform specific issues
Modified: labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/ListenerManagerFactory.java
===================================================================
--- labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/ListenerManagerFactory.java 2006-12-19 13:44:33 UTC (rev 8403)
+++ labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/ListenerManagerFactory.java 2006-12-19 14:49:39 UTC (rev 8404)
@@ -1,6 +1,7 @@
package org.jboss.soa.esb.listeners;
import org.jboss.internal.soa.esb.listeners.DefaultListenerManager;
+import org.jboss.soa.esb.helpers.ConfigTree;
public class ListenerManagerFactory
{
@@ -14,4 +15,10 @@
{
return new DefaultListenerManager(parametersName);
}
+
+ public ListenerManager getListenerManager(ConfigTree tree)
+ throws Exception
+ {
+ return new DefaultListenerManager(tree);
+ }
}
Modified: labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/ListenerUtil.java
===================================================================
--- labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/ListenerUtil.java 2006-12-19 13:44:33 UTC (rev 8403)
+++ labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/ListenerUtil.java 2006-12-19 14:49:39 UTC (rev 8404)
@@ -70,6 +70,29 @@
{
ListenerManager manager = ListenerManagerFactory.getInstance()
.getListenerManager(parametersName);
+ return launchManager(manager, inNewThread) ;
+ }
+
+ /**
+ * ListenerManager Launcher.
+ *
+ * @param parametersName
+ * String - used to retrieve the ConfigTree with run time
+ * configuration values
+ * @param inNewThread
+ * boolean - if 'true' will launch the ListenerManager in a new
+ * thread, and wait until controlled listeners are up and running
+ * <br/> if false, will instantiate and run the Controller in
+ * current thread - flow control will only return to invoker once
+ * the controller's run() method has finished
+ * @return ListenerManager
+ * @throws Exception
+ */
+ public static ListenerManager launchManager(ConfigTree tree,
+ boolean inNewThread) throws Exception
+ {
+ ListenerManager manager = ListenerManagerFactory.getInstance()
+ .getListenerManager(tree);
if (inNewThread)
{
new Thread(manager).start();
@@ -84,6 +107,23 @@
}
return manager;
} // ________________________________
+
+ private static ListenerManager launchManager(final ListenerManager manager, final boolean inNewThread)
+ {
+ if (inNewThread)
+ {
+ new Thread(manager).start();
+ }
+ else
+ {
+ StringBuilder sb = new StringBuilder(
+ "You are running a ListenerManager in your own thread")
+ .append(" - It won't return until it's run() method ends");
+ _logger.warn(sb.toString());
+ manager.run();
+ }
+ return manager;
+ } // ________________________________
public static EPR tryToDeliver(Message message, String category, String name)
throws Exception
Modified: labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/listeners/ListenerManagerUnitTest.java
===================================================================
--- labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/listeners/ListenerManagerUnitTest.java 2006-12-19 13:44:33 UTC (rev 8403)
+++ labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/listeners/ListenerManagerUnitTest.java 2006-12-19 14:49:39 UTC (rev 8404)
@@ -106,14 +106,12 @@
final String tmpDirForm = tmpDir.toURL().toExternalForm() ;
ConfigTree eprElement = tree.getAllChildren()[0].getFirstChild("EPR");
- eprElement.setAttribute("URL", tmpDirForm) ;
+ eprElement.setAttribute(ListenerTagNames.URL_TAG, tmpDirForm) ;
EPR toEPR = ListenerUtil.assembleEpr(eprElement);
if (toEPR instanceof FileEpr)
{
- toEPR.setAddr(new PortReference(tmpDirForm));
-
// take inputSuffix as outputSuffix for initial message sending
eprElement.setAttribute(FileEpr.POST_SUFFIX_TAG, eprElement
.getAttribute(FileEpr.INPUT_SUFFIX_TAG));
@@ -144,7 +142,11 @@
_returnFile.delete();
// launch listener manager in a child thread
- _manager = ListenerUtil.launchManager(configFile, true);
+ final ConfigTree newTree = ConfigTree.fromInputStream(new FileInputStream(
+ configFile));
+ final ConfigTree newTreeEPRElement = newTree.getAllChildren()[0].getFirstChild("EPR");
+ newTreeEPRElement.setAttribute(ListenerTagNames.URL_TAG, tmpDirForm) ;
+ _manager = ListenerUtil.launchManager(newTree, true);
_logger.debug("Waiting for all child listeners to start");
_manager.waitUntilReady();
_logger.debug(" All child listeners ready");
@@ -253,14 +255,8 @@
return new JUnit4TestAdapter(ListenerManagerUnitTest.class);
}
- private static boolean isWindows()
- {
- return System.getProperty("os.name").toLowerCase().contains("windows");
- }
+ private static final String TMP_DIR = System.getProperty("java.io.tmpdir");
- private static final String TMP_DIR = System.getProperty("java.io.tmpdir",
- "/tmp");
-
private static Logger _logger = Logger
.getLogger(ListenerManagerUnitTest.class);
More information about the jboss-svn-commits
mailing list