Xindice API

org.apache.xindice.util
Class LockManager

java.lang.Object
  |
  +--org.apache.xindice.util.LockManager

public final class LockManager
extends java.lang.Object

LockManager manages resource locks. A resource is any shared object that can be represented as a long. The LockManager should be constructed using the maximum number of concurrent clients a specific resource might have.


Constructor Summary
LockManager(int maxLocks)
           
 
Method Summary
 void acquireExclusiveLock(long id)
          acquireExclusiveLock acquires an exclusive lock on a resource.
 void acquireExclusiveLock(java.lang.Object key)
          acquireExclusiveLock acquires an exclusive lock on a resource.
 void acquireSharedLock(long id)
          acquireSharedLock acquires a shared lock on a resource.
 void acquireSharedLock(java.lang.Object key)
          acquireSharedLock acquires a shared lock on a resource.
 void releaseExclusiveLock(long id)
          releaseExclusiveLock releases an exclusive lock on a resource.
 void releaseExclusiveLock(java.lang.Object key)
          releaseExclusiveLock releases an exclusive lock on a resource.
 void releaseSharedLock(long id)
          releaseSharedLock releases a shared lock on a resource.
 void releaseSharedLock(java.lang.Object key)
          releaseSharedLock releases a shared lock on a resource.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LockManager

public LockManager(int maxLocks)
Method Detail

acquireSharedLock

public void acquireSharedLock(long id)
acquireSharedLock acquires a shared lock on a resource. Shared locks are typically used for reads.

acquireSharedLock

public void acquireSharedLock(java.lang.Object key)
acquireSharedLock acquires a shared lock on a resource. Shared locks are typically used for reads.

releaseSharedLock

public void releaseSharedLock(long id)
releaseSharedLock releases a shared lock on a resource. Shared locks are typically used for reads.

releaseSharedLock

public void releaseSharedLock(java.lang.Object key)
releaseSharedLock releases a shared lock on a resource. Shared locks are typically used for reads.

acquireExclusiveLock

public void acquireExclusiveLock(long id)
acquireExclusiveLock acquires an exclusive lock on a resource. Exclusive locks are typically used for writes.

acquireExclusiveLock

public void acquireExclusiveLock(java.lang.Object key)
acquireExclusiveLock acquires an exclusive lock on a resource. Exclusive locks are typically used for writes.

releaseExclusiveLock

public void releaseExclusiveLock(long id)
releaseExclusiveLock releases an exclusive lock on a resource. Exclusive locks are typically used for writes.

releaseExclusiveLock

public void releaseExclusiveLock(java.lang.Object key)
releaseExclusiveLock releases an exclusive lock on a resource. Exclusive locks are typically used for writes.

Xindice API

Copyright (c) 1999-2001 The Apache Software Foundation