public class FSCommitter
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
myAuthor |
private java.util.Map<java.lang.String,java.lang.String> |
myAutoUnlockPaths |
private FSFS |
myFSFS |
private java.util.Collection<java.lang.String> |
myLockTokens |
private FSTransactionInfo |
myTxn |
private FSTransactionRoot |
myTxnRoot |
private static boolean |
ourAutoUnlock |
Constructor and Description |
---|
FSCommitter(FSFS fsfs,
FSTransactionRoot txnRoot,
FSTransactionInfo txn,
java.util.Collection<java.lang.String> lockTokens,
java.lang.String author) |
Modifier and Type | Method and Description |
---|---|
static void |
abortTransaction(FSFS fsfs,
java.lang.String txnId) |
void |
addChange(java.lang.String path,
FSID id,
FSPathChangeKind changeKind,
boolean textModified,
boolean propsModified,
boolean mergeInfoModified,
long copyFromRevision,
java.lang.String copyFromPath,
SVNNodeKind kind) |
void |
allowLockedOperation(FSFS fsfs,
java.lang.String path,
java.lang.String username,
java.util.Collection<java.lang.String> lockTokens,
boolean recursive,
boolean haveWriteLock) |
void |
changeNodeProperty(java.lang.String path,
java.lang.String name,
SVNPropertyValue propValue) |
private long |
commit(java.util.Collection<FSRepresentation> representations) |
private void |
commit(java.lang.String startNodeId,
java.lang.String startCopyId,
long newRevision,
java.io.OutputStream protoFileOS,
FSID newRootId,
FSTransactionRoot txnRoot,
java.io.File revisionPrototypeFile,
long offset,
java.util.Collection<FSRepresentation> representations) |
long |
commitTxn(boolean runPreCommitHook,
boolean runPostCommitHook,
SVNErrorMessage[] postCommitHookError,
java.lang.StringBuffer conflictPath) |
private void |
copy(FSRevisionNode toNode,
java.lang.String entryName,
FSRevisionNode fromNode,
boolean preserveHistory,
long fromRevision,
java.lang.String fromPath,
java.lang.String txnId) |
private FSID |
createNode(FSRevisionNode revNode,
java.lang.String copyId,
java.lang.String txnId) |
void |
deleteNode(java.lang.String path) |
java.util.Map<java.lang.String,java.lang.String> |
getAutoUnlockPaths() |
private FSTransactionRoot |
getTxnRoot() |
void |
incrementMergeInfoUpTree(FSParentPath parentPath,
long increment) |
static boolean |
isAutoUnlock() |
void |
makeCopy(FSRevisionRoot fromRoot,
java.lang.String fromPath,
java.lang.String toPath,
boolean preserveHistory) |
void |
makeDir(java.lang.String path) |
FSRevisionNode |
makeEntry(FSRevisionNode parent,
java.lang.String parentPath,
java.lang.String entryName,
boolean isDir,
java.lang.String txnId) |
void |
makeFile(java.lang.String path) |
void |
makePathMutable(FSParentPath parentPath,
java.lang.String errorPath) |
private static long |
merge(FSFS owner,
java.lang.String targetPath,
FSRevisionNode target,
FSRevisionNode source,
FSRevisionNode ancestor,
FSTransactionRoot txnRoot,
java.lang.StringBuffer conflictPath) |
static void |
mergeChanges(FSFS owner,
FSTransactionRoot txnRoot,
FSRevisionNode sourceNode,
java.lang.StringBuffer conflictPath) |
java.lang.String |
reserveCopyId(java.lang.String txnId) |
private void |
scheduleForAutoUnlock(java.lang.String username,
java.lang.String path,
SVNLock lock) |
static void |
setAutoUnlock(boolean autoUnlock) |
private static void |
updateAncestry(FSFS owner,
FSID sourceId,
FSID targetId) |
private void |
verifyLock(SVNLock lock,
java.util.Collection<java.lang.String> lockTokens,
java.lang.String username) |
private void |
verifyLocks() |
private static volatile boolean ourAutoUnlock
private FSFS myFSFS
private FSTransactionRoot myTxnRoot
private FSTransactionInfo myTxn
private java.util.Collection<java.lang.String> myLockTokens
private java.util.Map<java.lang.String,java.lang.String> myAutoUnlockPaths
private java.lang.String myAuthor
public FSCommitter(FSFS fsfs, FSTransactionRoot txnRoot, FSTransactionInfo txn, java.util.Collection<java.lang.String> lockTokens, java.lang.String author)
public static void setAutoUnlock(boolean autoUnlock)
public static boolean isAutoUnlock()
public java.util.Map<java.lang.String,java.lang.String> getAutoUnlockPaths()
public void deleteNode(java.lang.String path) throws SVNException
SVNException
public void changeNodeProperty(java.lang.String path, java.lang.String name, SVNPropertyValue propValue) throws SVNException
SVNException
public void makeCopy(FSRevisionRoot fromRoot, java.lang.String fromPath, java.lang.String toPath, boolean preserveHistory) throws SVNException
SVNException
public void makeFile(java.lang.String path) throws SVNException
SVNException
public void makeDir(java.lang.String path) throws SVNException
SVNException
public FSRevisionNode makeEntry(FSRevisionNode parent, java.lang.String parentPath, java.lang.String entryName, boolean isDir, java.lang.String txnId) throws SVNException
SVNException
public void addChange(java.lang.String path, FSID id, FSPathChangeKind changeKind, boolean textModified, boolean propsModified, boolean mergeInfoModified, long copyFromRevision, java.lang.String copyFromPath, SVNNodeKind kind) throws SVNException
SVNException
public long commitTxn(boolean runPreCommitHook, boolean runPostCommitHook, SVNErrorMessage[] postCommitHookError, java.lang.StringBuffer conflictPath) throws SVNException
SVNException
public void makePathMutable(FSParentPath parentPath, java.lang.String errorPath) throws SVNException
SVNException
public java.lang.String reserveCopyId(java.lang.String txnId) throws SVNException
SVNException
public void incrementMergeInfoUpTree(FSParentPath parentPath, long increment) throws SVNException
SVNException
private void copy(FSRevisionNode toNode, java.lang.String entryName, FSRevisionNode fromNode, boolean preserveHistory, long fromRevision, java.lang.String fromPath, java.lang.String txnId) throws SVNException
SVNException
private FSID createNode(FSRevisionNode revNode, java.lang.String copyId, java.lang.String txnId) throws SVNException
SVNException
private long commit(java.util.Collection<FSRepresentation> representations) throws SVNException
SVNException
private void commit(java.lang.String startNodeId, java.lang.String startCopyId, long newRevision, java.io.OutputStream protoFileOS, FSID newRootId, FSTransactionRoot txnRoot, java.io.File revisionPrototypeFile, long offset, java.util.Collection<FSRepresentation> representations) throws SVNException
SVNException
public static void mergeChanges(FSFS owner, FSTransactionRoot txnRoot, FSRevisionNode sourceNode, java.lang.StringBuffer conflictPath) throws SVNException
SVNException
private static long merge(FSFS owner, java.lang.String targetPath, FSRevisionNode target, FSRevisionNode source, FSRevisionNode ancestor, FSTransactionRoot txnRoot, java.lang.StringBuffer conflictPath) throws SVNException
SVNException
private static void updateAncestry(FSFS owner, FSID sourceId, FSID targetId) throws SVNException
SVNException
private void verifyLocks() throws SVNException
SVNException
private FSTransactionRoot getTxnRoot() throws SVNException
SVNException
public void allowLockedOperation(FSFS fsfs, java.lang.String path, java.lang.String username, java.util.Collection<java.lang.String> lockTokens, boolean recursive, boolean haveWriteLock) throws SVNException
SVNException
private void scheduleForAutoUnlock(java.lang.String username, java.lang.String path, SVNLock lock)
private void verifyLock(SVNLock lock, java.util.Collection<java.lang.String> lockTokens, java.lang.String username) throws SVNException
SVNException
public static void abortTransaction(FSFS fsfs, java.lang.String txnId) throws SVNException
SVNException