You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2010/03/19 13:43:13 UTC

svn commit: r925202 - /james/server/trunk/spoolmanager/src/main/java/org/apache/james/transport/camel/JMSSelectorPollingConsumer.java

Author: norman
Date: Fri Mar 19 12:43:13 2010
New Revision: 925202

URL: http://svn.apache.org/viewvc?rev=925202&view=rev
Log:
Make sure we shutdown the consumer , even on exception. Thx to Claus (Camel Dev Team) for the pointer..

Modified:
    james/server/trunk/spoolmanager/src/main/java/org/apache/james/transport/camel/JMSSelectorPollingConsumer.java

Modified: james/server/trunk/spoolmanager/src/main/java/org/apache/james/transport/camel/JMSSelectorPollingConsumer.java
URL: http://svn.apache.org/viewvc/james/server/trunk/spoolmanager/src/main/java/org/apache/james/transport/camel/JMSSelectorPollingConsumer.java?rev=925202&r1=925201&r2=925202&view=diff
==============================================================================
--- james/server/trunk/spoolmanager/src/main/java/org/apache/james/transport/camel/JMSSelectorPollingConsumer.java (original)
+++ james/server/trunk/spoolmanager/src/main/java/org/apache/james/transport/camel/JMSSelectorPollingConsumer.java Fri Mar 19 12:43:13 2010
@@ -70,16 +70,19 @@ public class JMSSelectorPollingConsumer 
         
         PollingConsumer consumer = context.getEndpoint(consumerUri.toString()).createPollingConsumer();
         consumer.start();
-        // process every exchange which is ready. If no exchange is left break the loop
-        while(true) {
-            Exchange ex = consumer.receiveNoWait();
-            if (ex != null) {
-                getProcessor().process(ex);
-            } else {
-                consumer.stop();
-                break;
+        try {
+            // process every exchange which is ready. If no exchange is left break the loop
+            while(true) {
+                Exchange ex = consumer.receiveNoWait();
+                if (ex != null) {
+                    getProcessor().process(ex);
+                } else {
+                    break;
+                }
             }
-            
+        } finally {
+            // be sure to stop the consumer, even on exception..
+            consumer.stop();
         }
     }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org