Author: trustin
Date: Thu Nov  8 18:55:03 2007
New Revision: 593410

URL: http://svn.apache.org/viewvc?rev=593410&view=rev
Log:
Added parameter check to pool size properties

Modified:
    
mina/trunk/core/src/main/java/org/apache/mina/filter/executor/OrderedThreadPoolExecutor.java

Modified: 
mina/trunk/core/src/main/java/org/apache/mina/filter/executor/OrderedThreadPoolExecutor.java
URL: 
http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/executor/OrderedThreadPoolExecutor.java?rev=593410&r1=593409&r2=593410&view=diff
==============================================================================
--- 
mina/trunk/core/src/main/java/org/apache/mina/filter/executor/OrderedThreadPoolExecutor.java
 (original)
+++ 
mina/trunk/core/src/main/java/org/apache/mina/filter/executor/OrderedThreadPoolExecutor.java
 Thu Nov  8 18:55:03 2007
@@ -97,11 +97,11 @@
             ThreadFactory threadFactory, RejectedExecutionHandler handler) {
         super(0, 1, keepAliveTime, unit, new SynchronousQueue<Runnable>(), 
threadFactory, handler);
         if (corePoolSize < 0) {
-            throw new IllegalArgumentException("minThreads: " + corePoolSize);
+            throw new IllegalArgumentException("corePoolSize: " + 
corePoolSize);
         }
         
         if (maximumPoolSize == 0 || maximumPoolSize < corePoolSize) {
-            throw new IllegalArgumentException("maxThreads: " + 
maximumPoolSize);
+            throw new IllegalArgumentException("maximumPoolSize: " + 
maximumPoolSize);
         }
         
         this.corePoolSize = corePoolSize;
@@ -153,6 +153,10 @@
     @Override
     public void setMaximumPoolSize(int maximumPoolSize) {
         synchronized (workers) {
+            if (maximumPoolSize == 0 || maximumPoolSize < corePoolSize) {
+                throw new IllegalArgumentException("maximumPoolSize: " + 
maximumPoolSize);
+            }
+            
             if (this.maximumPoolSize > maximumPoolSize) {
                 for (int i = this.maximumPoolSize - maximumPoolSize; i > 0; i 
--) {
                     removeWorker();
@@ -368,6 +372,10 @@
 
     @Override
     public void setCorePoolSize(int corePoolSize) {
+        if (corePoolSize < 0) {
+            throw new IllegalArgumentException("corePoolSize: " + 
corePoolSize);
+        }
+        
         synchronized (workers) {
             if (this.corePoolSize > corePoolSize) {
                 for (int i = this.corePoolSize - corePoolSize; i > 0; i --) {


Reply via email to