private void releaseLocks() { releaseLocks(myPathsToLockTokens, false, true); final Map<String, String> autoUnlockPaths = myCommitter.getAutoUnlockPaths(); releaseLocks(autoUnlockPaths, true, false); }
public SVNCommitInfo closeEdit() throws SVNException { if (myTxn == null) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.REPOS_BAD_ARGS, "No valid transaction supplied to closeEdit()"); SVNErrorManager.error(err); } long committedRev = -1; SVNErrorMessage errorMessage = null; committedRev = finalizeCommit(); try { FSHooks.runPostCommitHook(myFSFS.getRepositoryRoot(), committedRev); } catch (SVNException svne) { errorMessage = SVNErrorMessage.create(SVNErrorCode.REPOS_POST_COMMIT_HOOK_FAILED, svne.getErrorMessage().getFullMessage(), SVNErrorMessage.TYPE_WARNING); } Map revProps = myFSFS.getRevisionProperties(committedRev); String dateProp = (String) revProps.get(SVNRevisionProperty.DATE); String authorProp = (String) revProps.get(SVNRevisionProperty.AUTHOR); Date datestamp = dateProp != null ? SVNTimeUtil.parseDateString(dateProp) : null; SVNCommitInfo info = new SVNCommitInfo(committedRev, authorProp, datestamp, errorMessage); releaseLocks(); myRepository.closeRepository(); return info; }
public SVNCommitInfo closeEdit() throws SVNException { try { if (myTxn == null) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.REPOS_BAD_ARGS, "No valid transaction supplied to closeEdit()"); SVNErrorManager.error(err, SVNLogType.FSFS); } long committedRev = -1; if (myDeltaConsumer != null) { myDeltaConsumer.close(); } SVNErrorMessage[] errorMessage = new SVNErrorMessage[1]; committedRev = myCommitter.commitTxn(true, true, errorMessage, null); SVNProperties revProps = myFSFS.getRevisionProperties(committedRev); String dateProp = revProps.getStringValue(SVNRevisionProperty.DATE); Date datestamp = dateProp != null ? SVNDate.parseDateString(dateProp) : null; SVNErrorMessage err = errorMessage[0]; if (err != null && err.getErrorCode() == SVNErrorCode.REPOS_POST_COMMIT_HOOK_FAILED) { String message = err.getChildErrorMessage() != null ? err.getChildErrorMessage().getFullMessage() : err.getFullMessage(); err = SVNErrorMessage.create(SVNErrorCode.REPOS_POST_COMMIT_HOOK_FAILED, message, SVNErrorMessage.TYPE_WARNING); } SVNCommitInfo info = new SVNCommitInfo(committedRev, getAuthor(), datestamp, err); releaseLocks(); return info; } finally { myRepository.closeRepository(); } }
releaseLocks(); return info; } finally {
releaseLocks(); return info; } finally {