Author: cmueller
Date: Sun Feb 27 12:43:20 2011
New Revision: 1075042

URL: http://svn.apache.org/viewvc?rev=1075042&view=rev
Log:
CAMEL-3650: SMSC initiated unbind spawns exponential amounts of reconnect 
threads

Modified:
    
camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppConsumer.java
    
camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppProducer.java

Modified: 
camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppConsumer.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppConsumer.java?rev=1075042&r1=1075041&r2=1075042&view=diff
==============================================================================
--- 
camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppConsumer.java
 (original)
+++ 
camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppConsumer.java
 Sun Feb 27 12:43:20 2011
@@ -192,8 +192,9 @@ public class SmppConsumer extends Defaul
 
     private void closeSession(SMPPSession session) {
         if (session != null) {
-            session.removeSessionStateListener(this.sessionStateListener);
             session.unbindAndClose();
+            // throws the java.util.ConcurrentModificationException
+            //session.removeSessionStateListener(this.sessionStateListener);
             session = null;
         }
     }

Modified: 
camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppProducer.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppProducer.java?rev=1075042&r1=1075041&r2=1075042&view=diff
==============================================================================
--- 
camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppProducer.java
 (original)
+++ 
camel/trunk/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/SmppProducer.java
 Sun Feb 27 12:43:20 2011
@@ -59,7 +59,7 @@ public class SmppProducer extends Defaul
     public SmppProducer(SmppEndpoint endpoint, SmppConfiguration config) {
         super(endpoint);
         this.configuration = config;
-        this.sessionStateListener = new SessionStateListener() { 
+        this.sessionStateListener = new SessionStateListener() {
             public void onStateChange(SessionState newState, SessionState 
oldState, Object source) {
                 if (newState.equals(SessionState.CLOSED)) {
                     LOG.warn("Loosing connection to: " + 
getEndpoint().getConnectionString() + " - trying to reconnect...");
@@ -180,8 +180,9 @@ public class SmppProducer extends Defaul
     
     private void closeSession(SMPPSession session) {
         if (session != null) {
-            session.removeSessionStateListener(this.sessionStateListener);
             session.unbindAndClose();
+            // throws the java.util.ConcurrentModificationException
+            //session.removeSessionStateListener(this.sessionStateListener);
             session = null;
         }
     }


Reply via email to