User: jules_gosnell
  Date: 02/02/15 17:04:32

  Modified:    jetty/src/main/org/jboss/jetty/util
                        AbstractTimeOutManager.java
                        NaiveTimeOutManager.java
  Log:
  prevent deregistered items from being reregistered by sweeper thread
  
  Revision  Changes    Path
  1.5       +2 -2      
contrib/jetty/src/main/org/jboss/jetty/util/AbstractTimeOutManager.java
  
  Index: AbstractTimeOutManager.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/contrib/jetty/src/main/org/jboss/jetty/util/AbstractTimeOutManager.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- AbstractTimeOutManager.java       14 Feb 2002 01:03:16 -0000      1.4
  +++ AbstractTimeOutManager.java       16 Feb 2002 01:04:32 -0000      1.5
  @@ -5,7 +5,7 @@
    * See terms of license at gnu.org.
    */
   
  -// $Id: AbstractTimeOutManager.java,v 1.4 2002/02/14 01:03:16 jules_gosnell Exp $
  +// $Id: AbstractTimeOutManager.java,v 1.5 2002/02/16 01:04:32 jules_gosnell Exp $
   
   //------------------------------------------------------------------------------
   
  @@ -18,7 +18,7 @@
   {
     public void register(Object object, long now, long maxInactiveInterval);
     public void reregister(Object object, long now, long maxInactiveInterval);
  -  public void deregister(Object object);
  +  public boolean deregister(Object object);
   
     public interface
       TimeOutHelper
  
  
  
  1.8       +11 -4     
contrib/jetty/src/main/org/jboss/jetty/util/NaiveTimeOutManager.java
  
  Index: NaiveTimeOutManager.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/contrib/jetty/src/main/org/jboss/jetty/util/NaiveTimeOutManager.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- NaiveTimeOutManager.java  14 Feb 2002 01:03:17 -0000      1.7
  +++ NaiveTimeOutManager.java  16 Feb 2002 01:04:32 -0000      1.8
  @@ -5,7 +5,7 @@
    * See terms of license at gnu.org.
    */
   
  -// $Id: NaiveTimeOutManager.java,v 1.7 2002/02/14 01:03:17 jules_gosnell Exp $
  +// $Id: NaiveTimeOutManager.java,v 1.8 2002/02/16 01:04:32 jules_gosnell Exp $
   
   //------------------------------------------------------------------------------
   
  @@ -115,11 +115,14 @@
         }
       }
   
  -  public synchronized void
  +  public synchronized boolean
       deregister(Object object)
       {
         Entry p=find(object);
   
  +      if (p==null)
  +     return false;
  +
         synchronized (_entries) {
        _entries.remove(p);
   
  @@ -130,14 +133,18 @@
          _sweeper=null;        // cut it loose to finish by itself - dangerous ? - 
TODO
        }
         }
  +      return true;
       }
   
     public synchronized void
       reregister(Object object, long timeRegistered, long maxInactiveInterval)
       {
         // could be optimised - but this is simpler for the moment...
  -      deregister(object);
  -      register(object, timeRegistered, maxInactiveInterval);
  +      synchronized (_entries)
  +      {
  +     if (deregister(object))
  +       register(object, timeRegistered, maxInactiveInterval);
  +      }
       }
   
     // utils...
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to