You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by mr...@apache.org on 2007/03/07 18:45:46 UTC

svn commit: r515661 - in /incubator/ode/trunk: axis2/src/main/java/org/apache/ode/axis2/ODEServer.java bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java

Author: mriou
Date: Wed Mar  7 09:45:45 2007
New Revision: 515661

URL: http://svn.apache.org/viewvc?view=rev&rev=515661
Log:
Customizable thread pool limit.

Modified:
    incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
    incubator/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java
    incubator/ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java

Modified: incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java?view=diff&rev=515661&r1=515660&r2=515661
==============================================================================
--- incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java (original)
+++ incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java Wed Mar  7 09:45:45 2007
@@ -437,6 +437,11 @@
         if (__log.isDebugEnabled()) {
             __log.debug("ODE initializing");
         }
+        if (_odeConfig.getThreadPoolMaxSize() == 0)
+            _executorService = Executors.newCachedThreadPool();
+        else
+            _executorService = Executors.newFixedThreadPool(_odeConfig.getThreadPoolMaxSize());
+
         _executorService = Executors.newCachedThreadPool();
         _server = new BpelServerImpl();
         _scheduler = createScheduler();

Modified: incubator/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java?view=diff&rev=515661&r1=515660&r2=515661
==============================================================================
--- incubator/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java (original)
+++ incubator/ode/trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java Wed Mar  7 09:45:45 2007
@@ -64,6 +64,8 @@
 
     private static final String PROP_DB_POOL_BLOCKING = "db.pool.blocking";
 
+    private static final String PROP_THREAD_POOL_SIZE = "threads.pool.size";
+    
     private static final String PROP_CONNECTOR_PORT = "jca.port";
 
     private static final String PROP_CONNECTOR_NAME = "jca.name";
@@ -183,7 +185,9 @@
         return Boolean.valueOf(getProperty(PROP_DB_POOL_BLOCKING,"false"));
     }
 
-
+    public int getThreadPoolMaxSize() {
+        return Integer.valueOf(getProperty(OdeConfigProperties.PROP_THREAD_POOL_SIZE, "0"));
+    }
 
     public int getPoolMaxSize() {
         return Integer.valueOf(getProperty(OdeConfigProperties.PROP_POOL_MAX, "10"));

Modified: incubator/ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java?view=diff&rev=515661&r1=515660&r2=515661
==============================================================================
--- incubator/ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java (original)
+++ incubator/ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java Wed Mar  7 09:45:45 2007
@@ -19,18 +19,6 @@
 
 package org.apache.ode.jbi;
 
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.util.concurrent.Executors;
-
-import javax.jbi.JBIException;
-import javax.jbi.component.ComponentContext;
-import javax.jbi.component.ComponentLifeCycle;
-import javax.jbi.component.ServiceUnitManager;
-import javax.management.ObjectName;
-import javax.naming.InitialContext;
-import javax.transaction.TransactionManager;
-
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.ode.bpel.connector.BpelServerConnector;
@@ -43,6 +31,17 @@
 import org.apache.ode.store.ProcessStoreImpl;
 import org.apache.ode.utils.fs.TempFileManager;
 
+import javax.jbi.JBIException;
+import javax.jbi.component.ComponentContext;
+import javax.jbi.component.ComponentLifeCycle;
+import javax.jbi.component.ServiceUnitManager;
+import javax.management.ObjectName;
+import javax.naming.InitialContext;
+import javax.transaction.TransactionManager;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.util.concurrent.Executors;
+
 /**
  * This class implements ComponentLifeCycle. The JBI framework will start this engine class automatically when JBI framework starts
  * up.
@@ -185,7 +184,10 @@
         // we'll do that explcitly
         _ode._eprContext = new EndpointReferenceContextImpl(_ode);
         _ode._mexContext = new MessageExchangeContextImpl(_ode);
-        _ode._executorService = Executors.newCachedThreadPool();
+        if (_ode._config.getThreadPoolMaxSize() == 0)
+            _ode._executorService = Executors.newCachedThreadPool();
+        else
+            _ode._executorService = Executors.newFixedThreadPool(_ode._config.getThreadPoolMaxSize());
         _ode._scheduler = new QuartzSchedulerImpl();
         _ode._scheduler.setJobProcessor(_ode._server);
         _ode._scheduler.setExecutorService(_ode._executorService, 20);