org.globus.wsrf.container
Class Lock

java.lang.Object
  extended byEDU.oswego.cs.dl.util.concurrent.ReentrantLock
      extended byorg.globus.wsrf.container.Lock
All Implemented Interfaces:
EDU.oswego.cs.dl.util.concurrent.Sync

public class Lock
extends EDU.oswego.cs.dl.util.concurrent.ReentrantLock

This class is a simple reentrant lock implementation.


Field Summary
private  java.lang.Object key
           
private  LockManager lockManager
           
protected  boolean removingLock
           
 
Fields inherited from class EDU.oswego.cs.dl.util.concurrent.ReentrantLock
holds_, owner_
 
Fields inherited from interface EDU.oswego.cs.dl.util.concurrent.Sync
ONE_CENTURY, ONE_DAY, ONE_HOUR, ONE_MINUTE, ONE_SECOND, ONE_WEEK, ONE_YEAR
 
Constructor Summary
Lock(LockManager lockManager, java.lang.Object key)
           
 
Method Summary
 boolean acquire(boolean removingLock)
           
protected  boolean acquire(java.lang.Thread caller, boolean removingLock)
           
 void release()
           
 void release(long n)
           
protected  void reset()
           
 
Methods inherited from class EDU.oswego.cs.dl.util.concurrent.ReentrantLock
acquire, attempt, holds
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

removingLock

protected boolean removingLock

lockManager

private LockManager lockManager

key

private java.lang.Object key
Constructor Detail

Lock

public Lock(LockManager lockManager,
            java.lang.Object key)
Method Detail

acquire

public boolean acquire(boolean removingLock)
                throws java.lang.InterruptedException
Throws:
java.lang.InterruptedException

acquire

protected boolean acquire(java.lang.Thread caller,
                          boolean removingLock)
                   throws java.lang.InterruptedException
Throws:
java.lang.InterruptedException

release

public void release()

release

public void release(long n)

reset

protected void reset()