[jboss-cvs] JBossRemoting/src/main/org/jboss/remoting/transport/bisocket ...

Ron Sigal ron_sigal at yahoo.com
Thu Feb 22 22:57:30 EST 2007


  User: rsigal  
  Date: 07/02/22 22:57:30

  Modified:    src/main/org/jboss/remoting/transport/bisocket  Tag:
                        remoting_2_x BisocketClientInvoker.java
  Log:
  JBREM-650: handleDisconnect() doesn't call super.handleDisconnect() for callback client.
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.9   +19 -4     JBossRemoting/src/main/org/jboss/remoting/transport/bisocket/BisocketClientInvoker.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: BisocketClientInvoker.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossRemoting/src/main/org/jboss/remoting/transport/bisocket/BisocketClientInvoker.java,v
  retrieving revision 1.1.2.8
  retrieving revision 1.1.2.9
  diff -u -b -r1.1.2.8 -r1.1.2.9
  --- BisocketClientInvoker.java	23 Feb 2007 03:34:54 -0000	1.1.2.8
  +++ BisocketClientInvoker.java	23 Feb 2007 03:57:30 -0000	1.1.2.9
  @@ -45,6 +45,7 @@
   import org.jboss.remoting.marshal.UnMarshaller;
   import org.jboss.remoting.transport.BidirectionalClientInvoker;
   import org.jboss.remoting.transport.socket.SocketClientInvoker;
  +import org.jboss.remoting.transport.socket.SocketWrapper;
   
   /**
    * The bisocket transport, an extension of the socket transport, is designed to allow
  @@ -213,19 +214,33 @@
            if (isCallbackInvoker)
            {
               listenerIdToCallbackClientInvokerMap.remove(listenerId);
  +            for (Iterator it = pool.iterator(); it.hasNext();)
  +            {
  +               SocketWrapper socketWrapper = (SocketWrapper) it.next();
  +               try
  +               {
  +                  socketWrapper.close();
  +               }
  +               catch (Exception ignored)
  +               {
  +               }
  +            }
            }
            else
            {
               listenerIdToClientInvokerMap.remove(listenerId);
  +            super.handleDisconnect();
            }
   
            listenerIdToSocketsMap.remove(listenerId);
            if (pingTimerTask != null)
               pingTimerTask.shutDown();
         }
  -      
  +      else
  +      {
         super.handleDisconnect();
      }
  +   }
   
   
      protected Object transport(String sessionId, Object invocation, Map metadata,
  
  
  



More information about the jboss-cvs-commits mailing list