Repository: camel
Updated Branches:
  refs/heads/camel-2.16.x a1fc0c82f -> b310ab331


CAMEL-9739 Mina2Consumer exception handler do close session also for 
IOException. Thanks to Thomas Papke for the patch.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/0949c075
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/0949c075
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/0949c075

Branch: refs/heads/camel-2.16.x
Commit: 0949c07534fdc2cc87a27d53042b7cbdc41e3abe
Parents: a1fc0c8
Author: Andrea Cosentino <anco...@gmail.com>
Authored: Tue Mar 22 13:30:18 2016 +0100
Committer: Andrea Cosentino <anco...@gmail.com>
Committed: Tue Mar 22 13:30:18 2016 +0100

----------------------------------------------------------------------
 .../apache/camel/component/mina2/Mina2Consumer.java    | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/0949c075/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Consumer.java
----------------------------------------------------------------------
diff --git 
a/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Consumer.java
 
b/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Consumer.java
index 9e58365..6fd5a8b 100644
--- 
a/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Consumer.java
+++ 
b/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Consumer.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.component.mina2;
 
+import java.io.IOException;
 import java.net.InetSocketAddress;
 import java.net.SocketAddress;
 import java.nio.charset.Charset;
@@ -58,7 +59,7 @@ import org.slf4j.LoggerFactory;
 /**
  * A {@link org.apache.camel.Consumer Consumer} implementation for Apache MINA.
  *
- * @version 
+ * @version
  */
 public class Mina2Consumer extends DefaultConsumer {
 
@@ -67,14 +68,14 @@ public class Mina2Consumer extends DefaultConsumer {
     private IoConnector connector;
     private SocketAddress address;
     private IoAcceptor acceptor;
-    private Mina2Configuration configuration;
+    private final Mina2Configuration configuration;
     private ExecutorService workerPool;
 
     public Mina2Consumer(final Mina2Endpoint endpoint, Processor processor) 
throws Exception {
         super(endpoint, processor);
         this.configuration = endpoint.getConfiguration();
         //
-        // All mina2 endpoints are InOut. The endpoints are asynchronous. 
+        // All mina2 endpoints are InOut. The endpoints are asynchronous.
         // Endpoints can send "n" messages and receive "m" messages.
         //
         this.getEndpoint().setExchangePattern(ExchangePattern.InOut);
@@ -127,7 +128,7 @@ public class Mina2Consumer extends DefaultConsumer {
                     acceptor.unbind(acceptor.getLocalAddresses());
                 } else {
                     acceptor.unbind(address);
-                }   
+                }
             } else {
                 acceptor.unbind(address);
             }
@@ -374,6 +375,10 @@ public class Mina2Consumer extends DefaultConsumer {
 
         @Override
         public void exceptionCaught(IoSession session, Throwable cause) throws 
Exception {
+            if (cause instanceof IOException){
+                LOG.debug("IOExceptions are automatically handled by MINA");
+                return;
+            }
             // close invalid session
             if (session != null) {
                 LOG.warn("Closing session as an exception was thrown from 
MINA");

Reply via email to