public class FSWriteLock
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private static int |
DB_LOCK |
private static int |
LOGS_LOCK |
private boolean |
myIsShared |
private java.nio.channels.FileLock |
myLock |
private java.io.File |
myLockFile |
private java.io.RandomAccessFile |
myLockRAFile |
private int |
myLockType |
private int |
myReferencesCount |
private java.lang.String |
myToken |
private static java.util.Map |
ourThreadDBLocksCache |
private static java.util.Map |
ourThreadLogLocksCache |
private static java.util.Map |
ourThreadRepositoryLocksCache |
private static int |
REPOS_LOCK |
Modifier | Constructor and Description |
---|---|
private |
FSWriteLock(java.lang.String token,
java.io.File lockFile,
int lockType,
boolean shared) |
Modifier and Type | Method and Description |
---|---|
static FSWriteLock |
getDBLogsLock(FSFS owner,
boolean exclusive) |
static FSWriteLock |
getWriteLockForCurrentTxn(java.lang.String token,
FSFS owner) |
static FSWriteLock |
getWriteLockForDB(FSFS owner) |
static FSWriteLock |
getWriteLockForTxn(java.lang.String txnID,
FSFS owner) |
void |
lock() |
static void |
release(FSWriteLock lock) |
java.lang.String |
toString() |
void |
unlock() |
private static final java.util.Map ourThreadDBLocksCache
private static final java.util.Map ourThreadRepositoryLocksCache
private static final java.util.Map ourThreadLogLocksCache
private static final int DB_LOCK
private static final int LOGS_LOCK
private static final int REPOS_LOCK
private java.io.File myLockFile
private java.io.RandomAccessFile myLockRAFile
private java.nio.channels.FileLock myLock
private java.lang.String myToken
private int myLockType
private boolean myIsShared
private int myReferencesCount
private FSWriteLock(java.lang.String token, java.io.File lockFile, int lockType, boolean shared)
public static FSWriteLock getWriteLockForDB(FSFS owner) throws SVNException
SVNException
public static FSWriteLock getWriteLockForCurrentTxn(java.lang.String token, FSFS owner) throws SVNException
SVNException
public static FSWriteLock getWriteLockForTxn(java.lang.String txnID, FSFS owner) throws SVNException
SVNException
public static FSWriteLock getDBLogsLock(FSFS owner, boolean exclusive) throws SVNException
SVNException
public void lock() throws SVNException
SVNException
public static void release(FSWriteLock lock)
public void unlock() throws SVNException
SVNException
public java.lang.String toString()
toString
in class java.lang.Object