gdamour     2005/03/25 06:23:42

  Modified:    modules/core/src/test/org/openejb/server/xfire
                        WSContainerTest.java
  Log:

  ServicePool uses now a Thread pool under the cover. This pool is either
  created or provided.
  
  Use the default Geronimo Thread pool under the cover of StandardServiceStack.
  
  Revision  Changes    Path
  1.7       +25 -3     
openejb/modules/core/src/test/org/openejb/server/xfire/WSContainerTest.java
  
  Index: WSContainerTest.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/test/org/openejb/server/xfire/WSContainerTest.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- WSContainerTest.java      18 Mar 2005 07:42:17 -0000      1.6
  +++ WSContainerTest.java      25 Mar 2005 11:23:42 -0000      1.7
  @@ -66,8 +66,11 @@
   
   import junit.framework.TestCase;
   
  +import org.apache.geronimo.gbean.GBeanData;
   import org.apache.geronimo.kernel.Kernel;
  +import org.apache.geronimo.kernel.jmx.JMXUtil;
   import org.apache.geronimo.kernel.management.State;
  +import org.apache.geronimo.pool.ThreadPool;
   import org.openejb.server.StandardServiceStackGBean;
   import org.openejb.server.httpd.HttpServerGBean;
   import org.openejb.server.soap.SoapHttpListenerGBean;
  @@ -100,11 +103,14 @@
           ObjectName listener = SoapHttpListenerGBean.addGBean(kernel, 
"HTTPSOAP");
           ObjectName wsContainer = WSContainerGBean.addGBean(kernel, 
"HTTPSOAP", ejbContainer, listener, getDefinition(wsdlURL), new 
URI("/test/service"), wsdlURL, "urn:testing", "encoded", "rpc");
           ObjectName server = HttpServerGBean.addGBean(kernel, "HTTPSOAP", 
listener);
  -        ObjectName stack = StandardServiceStackGBean.addGBean(kernel, 
"HTTPSOAP", 0, InetAddress.getByName("localhost"), null, 1, 5, null, null, 
server);
  +        ObjectName executor = buildExecutor(kernel);
  +        ObjectName stack = StandardServiceStackGBean.addGBean(kernel, 
"HTTPSOAP", 0, InetAddress.getByName("localhost"), null, null, null, executor, 
server);
   
           assertRunning(kernel, ejbContainer);
           assertRunning(kernel, wsContainer);
           assertRunning(kernel, listener);
  +        assertRunning(kernel, executor);
  +        assertRunning(kernel, executor);
           assertRunning(kernel, server);
           assertRunning(kernel, stack);
   
  @@ -148,11 +154,14 @@
           ObjectName listener = SoapHttpListenerGBean.addGBean(kernel, 
"HTTPSOAP");
           ObjectName wsContainer = WSContainerGBean.addGBean(kernel, 
"HTTPSOAP", ejbContainer, listener, getDefinition(wsdlURL), new 
URI("/services/Simple"), wsdlURL, "urn:testing", "encoded", "rpc");
           ObjectName server = HttpServerGBean.addGBean(kernel, "HTTPSOAP", 
listener);
  -        ObjectName stack = StandardServiceStackGBean.addGBean(kernel, 
"HTTPSOAP", 0, InetAddress.getByName("localhost"), null, 1, 5, null, null, 
server);
  +        ObjectName executor = buildExecutor(kernel);
  +        ObjectName stack = StandardServiceStackGBean.addGBean(kernel, 
"HTTPSOAP", 0, InetAddress.getByName("localhost"), null, null, null, executor, 
server);
   
           assertRunning(kernel, ejbContainer);
           assertRunning(kernel, wsContainer);
           assertRunning(kernel, listener);
  +        assertRunning(kernel, executor);
  +        assertRunning(kernel, executor);
           assertRunning(kernel, server);
           assertRunning(kernel, stack);
   
  @@ -205,6 +214,19 @@
           TestHandler handler = new TestHandler();
           saxParser.parse(responseStream, handler);
           return handler.result;
  +    }
  +
  +    private ObjectName buildExecutor(Kernel kernel) throws Exception {
  +        ClassLoader cl = ThreadPool.class.getClassLoader();
  +        ObjectName executor = 
JMXUtil.getObjectName("openejb:name=ThreadPool");
  +        GBeanData gbean = new GBeanData(executor, ThreadPool.GBEAN_INFO);
  +        gbean.setAttribute("poolSize", new Integer(1));
  +        gbean.setAttribute("poolName", "Test");
  +        gbean.setAttribute("keepAliveTime", new Long(1000));
  +        gbean.setAttribute("classLoader", cl);
  +        kernel.loadGBean(gbean, cl);
  +        kernel.startGBean(executor);
  +        return executor;
       }
   
       private static class TestHandler extends DefaultHandler {
  
  
  

Reply via email to