You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2010/02/20 00:39:07 UTC
svn commit: r912035 - in /tuscany/sca-java-2.x/trunk/modules/core/src:
main/java/org/apache/tuscany/sca/core/work/impl/
main/resources/META-INF/services/
test/java/org/apache/tuscany/sca/core/work/impl/
Author: rfeng
Date: Fri Feb 19 23:39:06 2010
New Revision: 912035
URL: http://svn.apache.org/viewvc?rev=912035&view=rev
Log:
Make the maxThreads a configurable property of WorkScheduler
Modified:
tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/DefaultWorkScheduler.java
tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/ThreadPoolWorkManager.java
tuscany/sca-java-2.x/trunk/modules/core/src/main/resources/META-INF/services/org.apache.tuscany.sca.work.WorkScheduler
tuscany/sca-java-2.x/trunk/modules/core/src/test/java/org/apache/tuscany/sca/core/work/impl/Jsr237WorkSchedulerTestCase.java
Modified: tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/DefaultWorkScheduler.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/DefaultWorkScheduler.java?rev=912035&r1=912034&r2=912035&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/DefaultWorkScheduler.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/DefaultWorkScheduler.java Fri Feb 19 23:39:06 2010
@@ -20,7 +20,9 @@
import java.security.AccessController;
import java.security.PrivilegedAction;
+import java.util.Map;
+import org.apache.tuscany.sca.core.ExtensionPointRegistry;
import org.apache.tuscany.sca.core.LifeCycleListener;
import org.apache.tuscany.sca.work.NotificationListener;
import org.apache.tuscany.sca.work.WorkScheduler;
@@ -43,13 +45,20 @@
* Underlying JSR-237 work manager
*/
private ThreadPoolWorkManager jsr237WorkManager;
+ private int maxThreads = 0;
/**
* Initializes the JSR 237 work manager.
*
* @param jsr237WorkManager JSR 237 work manager.
*/
- public DefaultWorkScheduler() {
+ public DefaultWorkScheduler(ExtensionPointRegistry registry, Map<String, String> attributes) {
+ if (attributes != null) {
+ String value = attributes.get("maxThreads");
+ if (value != null) {
+ maxThreads = Integer.parseInt(value.trim());
+ }
+ }
}
private synchronized ThreadPoolWorkManager getWorkManager() {
@@ -63,7 +72,7 @@
// // ignore
// }
if (jsr237WorkManager == null) {
- jsr237WorkManager = new ThreadPoolWorkManager(0);
+ jsr237WorkManager = new ThreadPoolWorkManager(maxThreads);
}
return jsr237WorkManager;
}
Modified: tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/ThreadPoolWorkManager.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/ThreadPoolWorkManager.java?rev=912035&r1=912034&r2=912035&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/ThreadPoolWorkManager.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/work/impl/ThreadPoolWorkManager.java Fri Feb 19 23:39:06 2010
@@ -66,7 +66,7 @@
// creates daemon threads.
executor = Executors.newCachedThreadPool(factory);
} else {
- executor = Executors.newFixedThreadPool(threadPoolSize);
+ executor = Executors.newFixedThreadPool(threadPoolSize, factory);
}
}
Modified: tuscany/sca-java-2.x/trunk/modules/core/src/main/resources/META-INF/services/org.apache.tuscany.sca.work.WorkScheduler
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/core/src/main/resources/META-INF/services/org.apache.tuscany.sca.work.WorkScheduler?rev=912035&r1=912034&r2=912035&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/core/src/main/resources/META-INF/services/org.apache.tuscany.sca.work.WorkScheduler (original)
+++ tuscany/sca-java-2.x/trunk/modules/core/src/main/resources/META-INF/services/org.apache.tuscany.sca.work.WorkScheduler Fri Feb 19 23:39:06 2010
@@ -14,6 +14,4 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
-
-org.apache.tuscany.sca.core.work.impl.DefaultWorkScheduler
-
+org.apache.tuscany.sca.core.work.impl.DefaultWorkScheduler;maxThreads=0
Modified: tuscany/sca-java-2.x/trunk/modules/core/src/test/java/org/apache/tuscany/sca/core/work/impl/Jsr237WorkSchedulerTestCase.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/core/src/test/java/org/apache/tuscany/sca/core/work/impl/Jsr237WorkSchedulerTestCase.java?rev=912035&r1=912034&r2=912035&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/core/src/test/java/org/apache/tuscany/sca/core/work/impl/Jsr237WorkSchedulerTestCase.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/core/src/test/java/org/apache/tuscany/sca/core/work/impl/Jsr237WorkSchedulerTestCase.java Fri Feb 19 23:39:06 2010
@@ -45,7 +45,7 @@
*/
@BeforeClass
public static void setup() {
- workSchedular = new DefaultWorkScheduler();
+ workSchedular = new DefaultWorkScheduler(null, null);
}
/**