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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to