/** * Returns log information for the given revision. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @return a log message * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public String doGetLog(File repositoryRoot, SVNRevision revision) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); SVNProperties revProps = fsfs.getRevisionProperties(revNum); return revProps.getStringValue(SVNRevisionProperty.LOG); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns author information for the given revision. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @return a revision author * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public String doGetAuthor(File repositoryRoot, SVNRevision revision) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); SVNProperties revProps = fsfs.getRevisionProperties(revNum); return revProps.getStringValue(SVNRevisionProperty.AUTHOR); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns author information for the given revision. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @return a revision author * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public String doGetAuthor(File repositoryRoot, SVNRevision revision) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); SVNProperties revProps = fsfs.getRevisionProperties(revNum); return revProps.getStringValue(SVNRevisionProperty.AUTHOR); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns author information for the given transaction. * * @param repositoryRoot a repository root directory path * @param transactionName a transaction name * @return a transaction owner * @throws SVNException <ul> * <li>no repository is found at * <code>repositoryRoot</code></li> * <li>if the specified transaction is not found</li> * </ul> */ public String doGetAuthor(File repositoryRoot, String transactionName) throws SVNException { FSFS fsfs = open(repositoryRoot, transactionName); try { FSTransactionInfo txn = fsfs.openTxn(transactionName); SVNProperties txnProps = fsfs.getTransactionProperties(txn.getTxnId()); return txnProps.getStringValue(SVNRevisionProperty.AUTHOR); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns author information for the given revision. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @return a revision author * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public String doGetAuthor(File repositoryRoot, SVNRevision revision) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); SVNProperties revProps = fsfs.getRevisionProperties(revNum); return revProps.getStringValue(SVNRevisionProperty.AUTHOR); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns log information for the given revision. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @return a log message * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public String doGetLog(File repositoryRoot, SVNRevision revision) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); SVNProperties revProps = fsfs.getRevisionProperties(revNum); return revProps.getStringValue(SVNRevisionProperty.LOG); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns log information for the given revision. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @return a log message * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public String doGetLog(File repositoryRoot, SVNRevision revision) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); SVNProperties revProps = fsfs.getRevisionProperties(revNum); return revProps.getStringValue(SVNRevisionProperty.LOG); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns log information for the given transaction. * * @param repositoryRoot a repository root directory path * @param transactionName a transaction name * @return a log message * @throws SVNException <ul> * <li>no repository is found at * <code>repositoryRoot</code> * </li> * <li>if the specified transaction is not found * </li> * </ul> */ public String doGetLog(File repositoryRoot, String transactionName) throws SVNException { FSFS fsfs = open(repositoryRoot, transactionName); try { FSTransactionInfo txn = fsfs.openTxn(transactionName); SVNProperties txnProps = fsfs.getTransactionProperties(txn.getTxnId()); return txnProps.getStringValue(SVNRevisionProperty.LOG); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns log information for the given transaction. * * @param repositoryRoot a repository root directory path * @param transactionName a transaction name * @return a log message * @throws SVNException <ul> * <li>no repository is found at * <code>repositoryRoot</code> * </li> * <li>if the specified transaction is not found * </li> * </ul> */ public String doGetLog(File repositoryRoot, String transactionName) throws SVNException { FSFS fsfs = open(repositoryRoot, transactionName); try { FSTransactionInfo txn = fsfs.openTxn(transactionName); SVNProperties txnProps = fsfs.getTransactionProperties(txn.getTxnId()); return txnProps.getStringValue(SVNRevisionProperty.LOG); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns author information for the given transaction. * * @param repositoryRoot a repository root directory path * @param transactionName a transaction name * @return a transaction owner * @throws SVNException <ul> * <li>no repository is found at * <code>repositoryRoot</code></li> * <li>if the specified transaction is not found</li> * </ul> */ public String doGetAuthor(File repositoryRoot, String transactionName) throws SVNException { FSFS fsfs = open(repositoryRoot, transactionName); try { FSTransactionInfo txn = fsfs.openTxn(transactionName); SVNProperties txnProps = fsfs.getTransactionProperties(txn.getTxnId()); return txnProps.getStringValue(SVNRevisionProperty.AUTHOR); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns log information for the given transaction. * * @param repositoryRoot a repository root directory path * @param transactionName a transaction name * @return a log message * @throws SVNException <ul> * <li>no repository is found at * <code>repositoryRoot</code> * </li> * <li>if the specified transaction is not found * </li> * </ul> */ public String doGetLog(File repositoryRoot, String transactionName) throws SVNException { FSFS fsfs = open(repositoryRoot, transactionName); try { FSTransactionInfo txn = fsfs.openTxn(transactionName); SVNProperties txnProps = fsfs.getTransactionProperties(txn.getTxnId()); return txnProps.getStringValue(SVNRevisionProperty.LOG); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns author information for the given transaction. * * @param repositoryRoot a repository root directory path * @param transactionName a transaction name * @return a transaction owner * @throws SVNException <ul> * <li>no repository is found at * <code>repositoryRoot</code></li> * <li>if the specified transaction is not found</li> * </ul> */ public String doGetAuthor(File repositoryRoot, String transactionName) throws SVNException { FSFS fsfs = open(repositoryRoot, transactionName); try { FSTransactionInfo txn = fsfs.openTxn(transactionName); SVNProperties txnProps = fsfs.getTransactionProperties(txn.getTxnId()); return txnProps.getStringValue(SVNRevisionProperty.AUTHOR); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Passes paths of directories changed in the given revision to the provided handler. * Paths are absolute (start with <code>'/'</code>). * * @param repositoryRoot a repository root directory path * @param revision a revision number * @param handler a path handler * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public void doGetChangedDirectories(File repositoryRoot, SVNRevision revision, ISVNChangedDirectoriesHandler handler) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); FSRoot root = fsfs.createRevisionRoot(revNum); long baseRevision = revNum - 1; SVNNodeEditor editor = generateDeltaTree(fsfs, root, baseRevision); editor.traverseChangedDirs(handler); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns datestamp information for the given revision. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @return a datestamp * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public Date doGetDate(File repositoryRoot, SVNRevision revision) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); SVNProperties revProps = fsfs.getRevisionProperties(revNum); String date = revProps.getStringValue(SVNRevisionProperty.DATE); if (date != null) { return SVNDate.parseDate(date); } return null; } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Traverses changed paths for the given revision invoking * the passed handler on each changed path. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @param handler a changed path handler * @param includeCopyInfo if <span class="javakeyword">true</span> copy-from * information is also provided for copied paths * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public void doGetChanged(File repositoryRoot, SVNRevision revision, ISVNChangeEntryHandler handler, boolean includeCopyInfo) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); FSRoot root = fsfs.createRevisionRoot(revNum); long baseRevision = revNum - 1; SVNNodeEditor editor = generateDeltaTree(fsfs, root, baseRevision); editor.traverseTree(includeCopyInfo, handler); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Traverses changed paths for the given revision invoking * the passed handler on each changed path. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @param handler a changed path handler * @param includeCopyInfo if <span class="javakeyword">true</span> copy-from * information is also provided for copied paths * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public void doGetChanged(File repositoryRoot, SVNRevision revision, ISVNChangeEntryHandler handler, boolean includeCopyInfo) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); FSRoot root = fsfs.createRevisionRoot(revNum); long baseRevision = revNum - 1; SVNNodeEditor editor = generateDeltaTree(fsfs, root, baseRevision); editor.traverseTree(includeCopyInfo, handler); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Traverses changed paths for the given revision invoking * the passed handler on each changed path. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @param handler a changed path handler * @param includeCopyInfo if <span class="javakeyword">true</span> copy-from * information is also provided for copied paths * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public void doGetChanged(File repositoryRoot, SVNRevision revision, ISVNChangeEntryHandler handler, boolean includeCopyInfo) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); FSRoot root = fsfs.createRevisionRoot(revNum); long baseRevision = revNum - 1; SVNNodeEditor editor = generateDeltaTree(fsfs, root, baseRevision); editor.traverseTree(includeCopyInfo, handler); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Passes paths of directories changed in the given revision to the provided handler. * Paths are absolute (start with <code>'/'</code>). * * @param repositoryRoot a repository root directory path * @param revision a revision number * @param handler a path handler * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public void doGetChangedDirectories(File repositoryRoot, SVNRevision revision, ISVNChangedDirectoriesHandler handler) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); FSRoot root = fsfs.createRevisionRoot(revNum); long baseRevision = revNum - 1; SVNNodeEditor editor = generateDeltaTree(fsfs, root, baseRevision); editor.traverseChangedDirs(handler); } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns datestamp information for the given revision. * * @param repositoryRoot a repository root directory path * @param revision a revision number * @return a datestamp * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public Date doGetDate(File repositoryRoot, SVNRevision revision) throws SVNException { FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); SVNProperties revProps = fsfs.getRevisionProperties(revNum); String date = revProps.getStringValue(SVNRevisionProperty.DATE); if (date != null) { return SVNDate.parseDate(date); } return null; } finally { SVNAdminHelper.closeRepository(fsfs); } }
/** * Returns the size in bytes for the specified path in given revision * * @param repositoryRoot a repository root directory path * @param path a path to the file inside the repository * @param revision a revision * @return file size in bytes * @throws SVNException no repository is found at * <code>repositoryRoot</code> */ public long doGetFileSize(File repositoryRoot, String path, SVNRevision revision) throws SVNException { if (path == null) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.CL_INSUFFICIENT_ARGS, "Missing repository path argument"); SVNErrorManager.error(err, SVNLogType.FSFS); } FSFS fsfs = open(repositoryRoot, revision); try { long revNum = SVNAdminHelper.getRevisionNumber(revision, fsfs.getYoungestRevision(), fsfs); FSRoot root = fsfs.createRevisionRoot(revNum); return getFileSize(root, path); } finally { SVNAdminHelper.closeRepository(fsfs); } }