[jboss-remoting-commits] JBoss Remoting SVN: r5156 - remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting.

jboss-remoting-commits at lists.jboss.org jboss-remoting-commits at lists.jboss.org
Thu May 7 21:52:32 EDT 2009


Author: ron.sigal at jboss.com
Date: 2009-05-07 21:52:32 -0400 (Thu, 07 May 2009)
New Revision: 5156

Modified:
   remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/LeasePinger.java
Log:
JBREM-1128: Uses "useClientConnectIdentity" parameter.

Modified: remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/LeasePinger.java
===================================================================
--- remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/LeasePinger.java	2009-05-08 01:51:25 UTC (rev 5155)
+++ remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/LeasePinger.java	2009-05-08 01:52:32 UTC (rev 5156)
@@ -49,6 +49,7 @@
    private int disconnectTimeout = DEFAULT_DISCONNECT_TIMEOUT;
    
    private String leasePingerId;
+   private boolean useClientConnectionIdentity;
 
    // Constructors ---------------------------------------------------------------------------------
 
@@ -80,12 +81,15 @@
          timerTask.cancel();
          timerTask = null;
          
-         Iterator it = clients.values().iterator();
+         if (useClientConnectionIdentity)
          {
-            Client client = (Client) it.next();
-            log.debug(this + " calling " + client + ".notifyAndDisconnect()");
-            client.notifyAndDisconnect();
-            it.remove();
+            Iterator it = clients.values().iterator();
+            {
+               Client client = (Client) it.next();
+               log.debug(this + " calling " + client + ".notifyAndDisconnect()");
+               client.notifyAndDisconnect();
+               it.remove();
+            }
          }
          
          try
@@ -121,7 +125,7 @@
             if (!clientSessionIds.isEmpty())
             {
                log.debug(this + " " + clientSessionIds.size() + " remaining clients:");
-               it = clientSessionIds.keySet().iterator();
+               Iterator it = clientSessionIds.keySet().iterator();
                while (it.hasNext())
                {
                   log.debug(this + ": " + it.next());
@@ -145,10 +149,13 @@
 
       if(trace) { log.trace(this + " adding new client with session ID " + sessionID + " and lease period " + leasePeriod); }
 
-      Client client = (Client) configuration.remove(Client.CLIENT);
-      if (client != null)
+      if (useClientConnectionIdentity)
       {
-         clients.put(sessionID, client);
+         Client client = (Client) configuration.remove(Client.CLIENT);
+         if (client != null)
+         {
+            clients.put(sessionID, client);
+         }
       }
       
       ClientHolder newClient = new ClientHolder(sessionID, configuration, leasePeriod);
@@ -209,7 +216,10 @@
          }
          
          clientSessionIds.remove(sessionID);
-         clients.remove(sessionID);
+         if (useClientConnectionIdentity)
+         {
+            clients.remove(sessionID);
+         }
       }
       else
       {
@@ -306,6 +316,16 @@
       this.leasePingerId = leasePingerId;
    }
    
+   boolean isUseClientConnectionIdentity()
+   {
+      return useClientConnectionIdentity;
+   }
+
+   void setUseClientConnectionIdentity(boolean useClientConnectionIdentity)
+   {
+      this.useClientConnectionIdentity = useClientConnectionIdentity;
+   }
+   
    // Private --------------------------------------------------------------------------------------
 
    private void sendClientPing()




More information about the jboss-remoting-commits mailing list