Author: norman
Date: Wed Mar 23 18:42:01 2011
New Revision: 1084666

URL: http://svn.apache.org/viewvc?rev=1084666&view=rev
Log:
Backport fix for JAMES-1175 which prevent delivery threads to get started 
before the whole config is parsed

Modified:
    
james/server/branches/v2.3/src/java/org/apache/james/transport/mailets/RemoteDelivery.java

Modified: 
james/server/branches/v2.3/src/java/org/apache/james/transport/mailets/RemoteDelivery.java
URL: 
http://svn.apache.org/viewvc/james/server/branches/v2.3/src/java/org/apache/james/transport/mailets/RemoteDelivery.java?rev=1084666&r1=1084665&r2=1084666&view=diff
==============================================================================
--- 
james/server/branches/v2.3/src/java/org/apache/james/transport/mailets/RemoteDelivery.java
 (original)
+++ 
james/server/branches/v2.3/src/java/org/apache/james/transport/mailets/RemoteDelivery.java
 Wed Mar 23 18:42:01 2011
@@ -336,22 +336,7 @@ public class RemoteDelivery extends Gene
             log("Failed to retrieve Store component:" + e.getMessage());
         }
 
-        //Start up a number of threads
-        try {
-            deliveryThreadCount = 
Integer.parseInt(getInitParameter("deliveryThreads"));
-        } catch (Exception e) {
-        }
-        for (int i = 0; i < deliveryThreadCount; i++) {
-            StringBuffer nameBuffer =
-                new StringBuffer(32)
-                        .append("Remote delivery thread (")
-                        .append(i)
-                        .append(")");
-            Thread t = new Thread(this, nameBuffer.toString());
-            t.start();
-            deliveryThreads.add(t);
-        }
-
+       
         bindAddress = getInitParameter("bind");
         isBindUsed = bindAddress != null;
         try {
@@ -367,6 +352,20 @@ public class RemoteDelivery extends Gene
                 defprops.put(name,getInitParameter(name));
             }
         }
+        
+
+        //Start up a number of threads
+        deliveryThreadCount = 
Integer.parseInt(getInitParameter("deliveryThreads"));
+        initDeliveryThreads();
+    }
+
+    private void initDeliveryThreads() {
+        for (int a = 0; a < deliveryThreadCount; a++) {
+            String threadName = "Remote delivery thread (" + a + ")";
+            Thread t = new Thread(this, threadName);
+            t.start();
+            deliveryThreads.add(t);
+        }
     }
 
     /*



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to