[jboss-svn-commits] JBL Code SVN: r23055 - in labs/jbossesb/workspace/skeagh/runtime/src: main/java/org/jboss/esb/federate and 6 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Sep 24 17:53:28 EDT 2008


Author: tfennelly
Date: 2008-09-24 17:53:28 -0400 (Wed, 24 Sep 2008)
New Revision: 23055

Added:
   labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/01-deployment.xml
   labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/02-deployment.xml
   labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/03-deployment.xml
   labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/RoutingTest.java
Modified:
   labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/deploy/DeploymentRuntime.java
   labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/federate/DeploymentCoordinator.java
   labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/federate/bus/BusDispatcher.java
   labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/history/ProcessingEventLog.java
   labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/routing/ServiceInvoker.java
   labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/TestService.java
   labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_006/RoutingTest.java
Log:
Bug fix to local service message dispatch resetting of the deployment context

Modified: labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/deploy/DeploymentRuntime.java
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/deploy/DeploymentRuntime.java	2008-09-24 21:19:40 UTC (rev 23054)
+++ labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/deploy/DeploymentRuntime.java	2008-09-24 21:53:28 UTC (rev 23055)
@@ -46,8 +46,8 @@
 import org.jboss.esb.service.ServiceName;
 import org.jboss.esb.util.AssertArgument;
 
+import java.io.IOException;
 import java.io.InputStream;
-import java.io.IOException;
 import java.lang.reflect.InvocationTargetException;
 import java.util.ArrayList;
 import java.util.LinkedHashMap;

Modified: labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/federate/DeploymentCoordinator.java
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/federate/DeploymentCoordinator.java	2008-09-24 21:19:40 UTC (rev 23054)
+++ labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/federate/DeploymentCoordinator.java	2008-09-24 21:53:28 UTC (rev 23055)
@@ -23,6 +23,7 @@
 import org.jboss.esb.annotations.Initialize;
 import org.jboss.esb.annotations.Uninitialize;
 import org.jboss.esb.context.AddressingContext;
+import org.jboss.esb.context.DeploymentContext;
 import org.jboss.esb.deploy.DeploymentException;
 import org.jboss.esb.deploy.DeploymentRuntime;
 import org.jboss.esb.deploy.config.PropertiesUtil;
@@ -511,7 +512,15 @@
                 }
 
                 // And hand it off to the inrouter to manage the processing of it...
-                inRouter.receive(busMessage);
+                DeploymentContext.setContext(getDeploymentContext());
+                try
+                {
+                    inRouter.receive(busMessage);
+                }
+                finally
+                {
+                    DeploymentContext.setContext(null);
+                }
             }
         }
 

Modified: labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/federate/bus/BusDispatcher.java
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/federate/bus/BusDispatcher.java	2008-09-24 21:19:40 UTC (rev 23054)
+++ labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/federate/bus/BusDispatcher.java	2008-09-24 21:53:28 UTC (rev 23055)
@@ -60,46 +60,39 @@
         AssertArgument.isNotNull(invocationContext, "invocationContext");
 
         Message outMessage;
-        DeploymentContext.setContext(getDeploymentContext());
+
+        // The addressing context should have been set for
+        // this dispacther.  It should have been received from the Bus...
+        AddressingContext addressingContext = AddressingContext.getContext();
+        if (addressingContext == null)
+        {
+            throw new IllegalStateException("Null AddressingContext set on BusMessage instance.");
+        }
+
+        // The InvocationContext should have also come from the bus...
+        InvocationContext.setContext(invocationContext);
         try
         {
-            // The addressing context should have been set for
-            // this dispacther.  It should have been received from the Bus...
-            AddressingContext addressingContext = AddressingContext.getContext();
-            if (addressingContext == null)
-            {
-                throw new IllegalStateException("Null AddressingContext set on BusMessage instance.");
-            }
+            ServiceName from = addressingContext.getFrom();
 
-            // The InvocationContext should have also come from the bus...
-            InvocationContext.setContext(invocationContext);
-            try
+            // Only pass the message to the service if the from address
+            // is null (i.e. it's from an InRouter or client), or it is from
+            // a different service....
+            if (from == null || !from.equals(getServiceName()))
             {
-                ServiceName from = addressingContext.getFrom();
-
-                // Only pass the message to the service if the from address
-                // is null (i.e. it's from an InRouter or client), or it is from
-                // a different service....
-                if (from == null || !from.equals(getServiceName()))
-                {
-                    outMessage = dispatchToService(message);
-                }
-                else
-                {
-                    outMessage = message;
-                }
-                applyOutboundRouters(outMessage);
-
-                // TODO; Use the faultTo address if there's an issue??
+                outMessage = dispatchToService(message);
             }
-            finally
+            else
             {
-                InvocationContext.setContext(null);
+                outMessage = message;
             }
+            applyOutboundRouters(outMessage);
+
+            // TODO; Use the faultTo address if there's an issue??
         }
         finally
         {
-            DeploymentContext.setContext(null);
+            InvocationContext.setContext(null);
         }
     }
 }

Modified: labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/history/ProcessingEventLog.java
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/history/ProcessingEventLog.java	2008-09-24 21:19:40 UTC (rev 23054)
+++ labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/history/ProcessingEventLog.java	2008-09-24 21:53:28 UTC (rev 23055)
@@ -165,7 +165,13 @@
         {
             for (int i = 0; i < processingEvents.size(); i++)
             {
-                stringBuilder.append("\t" + (i + 1) + ". \t[" + processingEvents.get(i).getDeploymentId() + "] " + processingEvents.get(i) + "\n");
+                StringBuilder number = new StringBuilder();
+
+                number.append(i + 1);
+                number.append(".    ");
+                number.setLength(5);
+
+                stringBuilder.append("\t" + number + "[" + processingEvents.get(i).getDeploymentId() + "] " + processingEvents.get(i) + "\n");
             }
         }
 

Modified: labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/routing/ServiceInvoker.java
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/routing/ServiceInvoker.java	2008-09-24 21:19:40 UTC (rev 23054)
+++ labs/jbossesb/workspace/skeagh/runtime/src/main/java/org/jboss/esb/routing/ServiceInvoker.java	2008-09-24 21:53:28 UTC (rev 23055)
@@ -33,6 +33,7 @@
 import org.jboss.esb.message.Message;
 import org.jboss.esb.service.ServiceName;
 import org.jboss.esb.util.AssertArgument;
+import org.jboss.esb.history.ProcessingEventLog;
 
 import java.util.Iterator;
 import java.util.List;
@@ -139,6 +140,7 @@
     {
         InvocationContext thisInvocationContext = InvocationContext.getContext();
         AddressingContext thisAddressingContext = AddressingContext.getContext();
+        ProcessingEventLog eventLog = ProcessingEventLog.getEventLog();
 
         // Set the Addressing context for the new Service Invocation...
         AddressingContext.setContext(dispatchAddressingContext);
@@ -148,8 +150,14 @@
             {
                 BusRoutingContext routingContext = BusRoutingContext.getContext(deploymentContext);
                 BusInboundRouter inRouter = routingContext.getBusInRouters().get(dispatchAddressingContext.getTo());
-                InvocationContext dispatchInvocationContext = new InvocationContext();
+                InvocationContext dispatchInvocationContext = new InvocationContext(thisInvocationContext.getInvocationParameters());
 
+                if(eventLog.propagate())
+                {
+                    ProcessingEventLog.setEventLog(eventLog, dispatchInvocationContext);
+                }
+
+                // And dispatch the message...
                 inRouter.dispatch(message, dispatchInvocationContext);
                 
                 return dispatchInvocationContext.getFaultContext().getFault() == null;

Modified: labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/TestService.java
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/TestService.java	2008-09-24 21:19:40 UTC (rev 23054)
+++ labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/TestService.java	2008-09-24 21:53:28 UTC (rev 23055)
@@ -25,6 +25,7 @@
 import org.jboss.esb.context.InvocationContext;
 import org.jboss.esb.context.AddressingContext;
 import org.jboss.esb.context.DeploymentContext;
+import org.jboss.esb.history.ProcessingEventLog;
 
 /**
  * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
@@ -35,6 +36,7 @@
     public static InvocationContext invocationContext;
     public static AddressingContext addressingContext;
     public static DeploymentContext deploymentContext;
+    private ProcessingEventLog eventLog;
 
     public Message process(Message message) throws ServiceException
     {
@@ -42,6 +44,8 @@
         invocationContext = InvocationContext.getContext();
         addressingContext = AddressingContext.getContext();
         deploymentContext = DeploymentContext.getContext();
+        eventLog = ProcessingEventLog.getEventLog();
+
         return message;
     }
 
@@ -49,4 +53,9 @@
     {
         return message;
     }
+
+    public ProcessingEventLog getEventLog()
+    {
+        return eventLog;
+    }
 }
\ No newline at end of file

Modified: labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_006/RoutingTest.java
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_006/RoutingTest.java	2008-09-24 21:19:40 UTC (rev 23054)
+++ labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_006/RoutingTest.java	2008-09-24 21:53:28 UTC (rev 23055)
@@ -86,12 +86,12 @@
                             assertEquals("Hi there!!", outrouter.getMessage());
 
                             assertEquals("Message Processing Event Log:\n" +
-                                    "\t1. \t[deployment1-Id:deployment1] ServiceProcessingEvent: service='Service:A'\n" +
-                                    "\t2. \t[deployment1-Id:deployment1] BusRouterProcessingEvent: to='Service:B', targetDeploymentId='deployment2-Id:deployment2', busType='JMSBus'\n" +
-                                    "\t3. \t[deployment2-Id:deployment2] ServiceProcessingEvent: service='Service:B'\n" +
-                                    "\t4. \t[deployment2-Id:deployment2] BusRouterProcessingEvent: to='Service:C', targetDeploymentId='deployment3-Id:deployment3', busType='JMSBus'\n" +
-                                    "\t5. \t[deployment3-Id:deployment3] ServiceProcessingEvent: service='Service:C'\n" +
-                                    "\t6. \t[deployment3-Id:deployment3] OutboundRouterProcessingEvent: config='outrouter'", 
+                                    "\t1.   [deployment1-Id:deployment1] ServiceProcessingEvent: service='Service:A'\n" +
+                                    "\t2.   [deployment1-Id:deployment1] BusRouterProcessingEvent: to='Service:B', targetDeploymentId='deployment2-Id:deployment2', busType='JMSBus'\n" +
+                                    "\t3.   [deployment2-Id:deployment2] ServiceProcessingEvent: service='Service:B'\n" +
+                                    "\t4.   [deployment2-Id:deployment2] BusRouterProcessingEvent: to='Service:C', targetDeploymentId='deployment3-Id:deployment3', busType='JMSBus'\n" +
+                                    "\t5.   [deployment3-Id:deployment3] ServiceProcessingEvent: service='Service:C'\n" +
+                                    "\t6.   [deployment3-Id:deployment3] OutboundRouterProcessingEvent: config='outrouter'", 
                                     outrouter.getEventLog().toString().trim());
                         }
                         finally

Copied: labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/01-deployment.xml (from rev 23049, labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_006/01-deployment.xml)
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/01-deployment.xml	                        (rev 0)
+++ labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/01-deployment.xml	2008-09-24 21:53:28 UTC (rev 23055)
@@ -0,0 +1,34 @@
+<jbossesb xmlns="http://www.jboss.org/jbossesb/xsd/jbossesb-5.0.xsd">
+    
+    <routing>
+        <inRouters serviceCategory="Service" serviceName="A">
+            <inRouter name="inrouter" class="org.jboss.esb.routing.TestInboundRouter" />
+        </inRouters>
+
+        <!--
+            Route the message from A to B....
+        -->
+        <outRouters serviceCategory="Service" serviceName="A">
+            <outRouter name="A_to_B_router" class="org.jboss.esb.routing.ServiceRouter">
+                <property name="toCategory">Service</property>
+                <property name="toService">B</property>
+            </outRouter>
+        </outRouters>
+        <!--
+            Route the message from B to C....
+        -->
+        <outRouters serviceCategory="Service" serviceName="B">
+            <outRouter name="B_to_C_router" class="org.jboss.esb.routing.ServiceRouter">
+                <property name="toCategory">Service</property>
+                <property name="toService">C</property>
+            </outRouter>
+        </outRouters>
+    </routing>
+
+    <services>
+        <service serviceCategory="Service" serviceName="A" serviceDescription="A Service" class="org.jboss.esb.routing.TestService" />
+        <service serviceCategory="Service" serviceName="B" serviceDescription="B Service" class="org.jboss.esb.routing.TestService" />
+        <service serviceCategory="Service" serviceName="F" serviceDescription="F Service" class="org.jboss.esb.routing.TestService" />
+    </services>
+
+</jbossesb>
\ No newline at end of file

Copied: labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/02-deployment.xml (from rev 23049, labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_006/02-deployment.xml)
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/02-deployment.xml	                        (rev 0)
+++ labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/02-deployment.xml	2008-09-24 21:53:28 UTC (rev 23055)
@@ -0,0 +1,29 @@
+<jbossesb xmlns="http://www.jboss.org/jbossesb/xsd/jbossesb-5.0.xsd">
+
+    <routing>
+        <!--
+            Route the message from C to D....
+        -->
+        <outRouters serviceCategory="Service" serviceName="C">
+            <outRouter name="C_to_D_router" class="org.jboss.esb.routing.ServiceRouter">
+                <property name="toCategory">Service</property>
+                <property name="toService">D</property>
+            </outRouter>
+        </outRouters>
+        <!--
+            Route the message from E to F....
+        -->
+        <outRouters serviceCategory="Service" serviceName="E">
+            <outRouter name="E_to_F_router" class="org.jboss.esb.routing.ServiceRouter">
+                <property name="toCategory">Service</property>
+                <property name="toService">F</property>
+            </outRouter>
+        </outRouters>
+    </routing>
+
+    <services>
+        <service serviceCategory="Service" serviceName="C" serviceDescription="C Service" class="org.jboss.esb.routing.TestService" />
+        <service serviceCategory="Service" serviceName="E" serviceDescription="E Service" class="org.jboss.esb.routing.TestService" />
+    </services>
+
+</jbossesb>
\ No newline at end of file

Copied: labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/03-deployment.xml (from rev 23049, labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_006/03-deployment.xml)
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/03-deployment.xml	                        (rev 0)
+++ labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/03-deployment.xml	2008-09-24 21:53:28 UTC (rev 23055)
@@ -0,0 +1,19 @@
+<jbossesb xmlns="http://www.jboss.org/jbossesb/xsd/jbossesb-5.0.xsd">
+
+    <services>
+        <service serviceCategory="Service" serviceName="D" serviceDescription="D Service" class="org.jboss.esb.routing.TestService" />
+    </services>
+
+    <routing>
+        <!--
+            Route the message from D to E....
+        -->
+        <outRouters serviceCategory="Service" serviceName="D">
+            <outRouter name="D_to_E_router" class="org.jboss.esb.routing.ServiceRouter">
+                <property name="toCategory">Service</property>
+                <property name="toService">E</property>
+            </outRouter>
+        </outRouters>
+    </routing>
+    
+</jbossesb>
\ No newline at end of file

Copied: labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/RoutingTest.java (from rev 23049, labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_006/RoutingTest.java)
===================================================================
--- labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/RoutingTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/skeagh/runtime/src/test/java/org/jboss/esb/routing/scenario_007/RoutingTest.java	2008-09-24 21:53:28 UTC (rev 23055)
@@ -0,0 +1,112 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, 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-2008, JBoss Inc.
+ */
+package org.jboss.esb.routing.scenario_007;
+
+import junit.framework.TestCase;
+import org.jboss.esb.deploy.DeploymentRuntime;
+import org.jboss.esb.deploy.DeploymentUtil;
+import org.jboss.esb.jms.JMSTestRunner;
+import org.jboss.esb.routing.TestInboundRouter;
+import org.jboss.esb.routing.TestService;
+import org.jboss.esb.service.ServiceName;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class RoutingTest extends TestCase
+{
+
+    /*
+     * The message should go (across the 3 deployments):
+     *      [inrouter_ServiceA -> ServiceA] -> [ServiceB] -> [ServiceC -> outrouter_ServiceC]
+     */
+    public void test() throws Exception
+    {
+        new JMSTestRunner() {
+            public void test() throws Exception
+            {
+                ServiceName serviceNameA = new ServiceName("Service", "A");
+                ServiceName serviceNameF = new ServiceName("Service", "F");
+                DeploymentRuntime deployment1 = DeploymentUtil.createRuntime(getClass().getResourceAsStream("01-deployment.xml"));
+
+                deployment1.setDeploymentName("deployment1");
+                deployment1.setDeploymentId("deployment1-Id");
+                deployment1.deploy();
+                try
+                {
+                    DeploymentRuntime deployment2 = DeploymentUtil.createRuntime(getClass().getResourceAsStream("02-deployment.xml"));
+
+                    deployment2.setDeploymentName("deployment2");
+                    deployment2.setDeploymentId("deployment2-Id");
+                    deployment2.deploy();
+                    try
+                    {
+                        DeploymentRuntime deployment3 = DeploymentUtil.createRuntime(getClass().getResourceAsStream("03-deployment.xml"));
+
+                        deployment3.setDeploymentName("deployment3");
+                        deployment3.setDeploymentId("deployment3-Id");
+                        deployment3.deploy();
+                        Thread.sleep(300); // Allow the deployments to exchange deployment details
+                        try
+                        {
+                            TestInboundRouter inrouter = (TestInboundRouter) DeploymentUtil.getInboundRouter(serviceNameA, "inrouter", deployment1).getRouter();
+                            TestService serviceA = (TestService) DeploymentUtil.getService(serviceNameA, deployment1).getService();
+                            TestService serviceF = (TestService) DeploymentUtil.getService(serviceNameF, deployment1).getService();
+
+                            // Force propagation of the event log...
+                            inrouter.sendMessage("Hi there!!", true);
+                            Thread.sleep(1000); // Allow the message to be delivered
+
+                            // Check that the message has been routed across deployments, from the inrouter
+                            // to the service instance and then to the outrouter...
+                            assertEquals("Hi there!!", serviceA.getMessage());
+                            assertEquals("Hi there!!", serviceF.getMessage());
+
+                            assertEquals("Message Processing Event Log:\n" +
+                                    "\t1.   [deployment1-Id:deployment1] ServiceProcessingEvent: service='Service:A'\n" +
+                                    "\t2.   [deployment1-Id:deployment1] ServiceProcessingEvent: service='Service:B'\n" +
+                                    "\t3.   [deployment1-Id:deployment1] BusRouterProcessingEvent: to='Service:C', targetDeploymentId='deployment2-Id:deployment2', busType='JMSBus'\n" +
+                                    "\t4.   [deployment2-Id:deployment2] ServiceProcessingEvent: service='Service:C'\n" +
+                                    "\t5.   [deployment2-Id:deployment2] BusRouterProcessingEvent: to='Service:D', targetDeploymentId='deployment3-Id:deployment3', busType='JMSBus'\n" +
+                                    "\t6.   [deployment3-Id:deployment3] ServiceProcessingEvent: service='Service:D'\n" +
+                                    "\t7.   [deployment3-Id:deployment3] BusRouterProcessingEvent: to='Service:E', targetDeploymentId='deployment2-Id:deployment2', busType='JMSBus'\n" +
+                                    "\t8.   [deployment2-Id:deployment2] ServiceProcessingEvent: service='Service:E'\n" +
+                                    "\t9.   [deployment2-Id:deployment2] BusRouterProcessingEvent: to='Service:F', targetDeploymentId='deployment1-Id:deployment1', busType='JMSBus'\n" +
+                                    "\t10.  [deployment1-Id:deployment1] ServiceProcessingEvent: service='Service:F'",
+                                    serviceF.getEventLog().toString().trim());
+                        }
+                        finally
+                        {
+                            deployment3.undeploy();
+                        }
+                    }
+                    finally
+                    {
+                        deployment2.undeploy();
+                    }
+                }
+                finally
+                {
+                    deployment1.undeploy();
+                }
+            }
+        }.run();
+    }
+}
\ No newline at end of file




More information about the jboss-svn-commits mailing list