Author: ozeigermann
Date: Fri Jun  8 14:36:59 2007
New Revision: 545634

URL: http://svn.apache.org/viewvc?view=rev&rev=545634
Log:
Free lock owners once they no longer have any locks associated to them.

Modified:
    
jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java

Modified: 
jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java
URL: 
http://svn.apache.org/viewvc/jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java?view=diff&rev=545634&r1=545633&r2=545634
==============================================================================
--- 
jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java
 (original)
+++ 
jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java
 Fri Jun  8 14:36:59 2007
@@ -331,6 +331,7 @@
                 locks.remove(lock);
             }
         }
+        removeOwnerWithoutLocks(ownerId);
     }
     
     /**
@@ -362,6 +363,7 @@
         if (locks != null) {
             locks.remove(lock);
         }
+        removeOwnerWithoutLocks(ownerId);
     }
 
     /**
@@ -528,5 +530,12 @@
         }
     }
 
-    
+    protected void removeOwnerWithoutLocks(Object ownerId) {
+        synchronized (globalOwners) {
+            Set locks = (Set) globalOwners.get(ownerId);
+            if (locks == null || locks.isEmpty()) {
+                globalOwners.remove(ownerId);
+            }
+        }
+    }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to