org.apache.jackrabbit.core.state
Class DefaultISMLocking
java.lang.Object
org.apache.jackrabbit.core.state.DefaultISMLocking
- All Implemented Interfaces:
- ISMLocking
public class DefaultISMLocking
- extends Object
- implements ISMLocking
Default item state locking strategy. The default strategy is simply to use
a single coarse-grained read-write lock over the entire workspace.
Method Summary |
ISMLocking.ReadLock |
acquireReadLock(ItemId id)
Increments the reader count and returns the acquired read lock once
there are no more writers or the current writer shares the thread id
with this reader. |
ISMLocking.WriteLock |
acquireWriteLock(ChangeLog changeLog)
Increments the writer count, sets the writer identifier and returns
the acquired write lock once there are no other active readers or
writers or the current writer shares the thread id with this writer. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DefaultISMLocking
public DefaultISMLocking()
acquireReadLock
public ISMLocking.ReadLock acquireReadLock(ItemId id)
throws InterruptedException
- Increments the reader count and returns the acquired read lock once
there are no more writers or the current writer shares the thread id
with this reader.
- Specified by:
acquireReadLock
in interface ISMLocking
- Parameters:
id
- an item id.
- Throws:
InterruptedException
acquireWriteLock
public ISMLocking.WriteLock acquireWriteLock(ChangeLog changeLog)
throws InterruptedException
- Increments the writer count, sets the writer identifier and returns
the acquired write lock once there are no other active readers or
writers or the current writer shares the thread id with this writer.
- Specified by:
acquireWriteLock
in interface ISMLocking
- Parameters:
changeLog
- the change log
- Returns:
- the write lock for the given
changeLog
.
- Throws:
InterruptedException
- if the thread is interrupted while creating
the write lock.
Copyright © 2004-2010 The Apache Software Foundation. All Rights Reserved.