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

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


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

  Modified:    src/main/org/jboss/remoting/transport/bisocket 
                        BisocketClientInvoker.java
  Log:
  JBREM-650: handleDisconnect() doesn't call super.handleDisconnect() for callback client.
  
  Revision  Changes    Path
  1.6       +23 -8     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.5
  retrieving revision 1.6
  diff -u -b -r1.5 -r1.6
  --- BisocketClientInvoker.java	23 Feb 2007 03:41:59 -0000	1.5
  +++ BisocketClientInvoker.java	23 Feb 2007 03:58:57 -0000	1.6
  @@ -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