/** * @param revision * @param revisionProperties * @param editor * @throws SVNException */ public void handleEndRevision(long revision, SVNProperties revisionProperties, ISVNEditor editor) throws SVNException { editor.closeEdit(); if (mySyncEditor.getCommitInfo().getNewRevision() != revision) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.IO_ERROR, "Commit created rev {0} but should have created {1}", new Object[] { String.valueOf(mySyncEditor.getCommitInfo().getNewRevision()), String.valueOf(revision) }); SVNErrorManager.error(err, SVNLogType.FSFS); } SVNProperties existingProperties = myTargetRepository.getRevisionProperties(revision, null); SVNProperties filtered = new SVNProperties(); filterProperties(revisionProperties, filtered, false); SVNProperties normalizedProps = SVNAdminClient.normalizeRevisionProperties(filtered); myNormalizedRevPropsCount += normalizedProps.size(); int filteredCount = SVNAdminHelper.writeRevisionProperties(myTargetRepository, revision, filtered); SVNAdminHelper.removePropertiesNotInSource(myTargetRepository, revision, revisionProperties, existingProperties); myTargetRepository.setRevisionPropertyValue(0, SVNRevisionProperty.LAST_MERGED_REVISION, SVNPropertyValue.create(SVNProperty.toString(revision))); myTargetRepository.setRevisionPropertyValue(0, SVNRevisionProperty.CURRENTLY_COPYING, null); myAdminClient.handlePropertesCopied(filteredCount > 0, revision); }
/** * @param revision * @param revisionProperties * @param editor * @throws SVNException */ public void handleEndRevision(long revision, SVNProperties revisionProperties, ISVNEditor editor) throws SVNException { editor.closeEdit(); if (mySyncEditor.getCommitInfo().getNewRevision() != revision) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.IO_ERROR, "Commit created rev {0} but should have created {1}", new Object[] { String.valueOf(mySyncEditor.getCommitInfo().getNewRevision()), String.valueOf(revision) }); SVNErrorManager.error(err, SVNLogType.FSFS); } SVNProperties existingProperties = myTargetRepository.getRevisionProperties(revision, null); SVNProperties filtered = new SVNProperties(); filterProperties(revisionProperties, filtered, false); SVNProperties normalizedProps = SVNAdminClient.normalizeRevisionProperties(filtered); myNormalizedRevPropsCount += normalizedProps.size(); int filteredCount = SVNAdminHelper.writeRevisionProperties(myTargetRepository, revision, filtered); SVNAdminHelper.removePropertiesNotInSource(myTargetRepository, revision, revisionProperties, existingProperties); myTargetRepository.setRevisionPropertyValue(0, SVNRevisionProperty.LAST_MERGED_REVISION, SVNPropertyValue.create(SVNProperty.toString(revision))); myTargetRepository.setRevisionPropertyValue(0, SVNRevisionProperty.CURRENTLY_COPYING, null); myAdminClient.handlePropertesCopied(filteredCount > 0, revision); }
/** * @param revision * @param revisionProperties * @param editor * @throws SVNException */ public void handleEndRevision(long revision, SVNProperties revisionProperties, ISVNEditor editor) throws SVNException { editor.closeEdit(); if (mySyncEditor.getCommitInfo().getNewRevision() != revision) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.IO_ERROR, "Commit created rev {0} but should have created {1}", new Object[] { String.valueOf(mySyncEditor.getCommitInfo().getNewRevision()), String.valueOf(revision) }); SVNErrorManager.error(err, SVNLogType.FSFS); } SVNProperties existingProperties = myTargetRepository.getRevisionProperties(revision, null); SVNProperties filtered = new SVNProperties(); filterProperties(revisionProperties, filtered, false); SVNProperties normalizedProps = SVNAdminClient.normalizeRevisionProperties(filtered); myNormalizedRevPropsCount += normalizedProps.size(); int filteredCount = SVNAdminHelper.writeRevisionProperties(myTargetRepository, revision, filtered); SVNAdminHelper.removePropertiesNotInSource(myTargetRepository, revision, revisionProperties, existingProperties); myTargetRepository.setRevisionPropertyValue(0, SVNRevisionProperty.LAST_MERGED_REVISION, SVNPropertyValue.create(SVNProperty.toString(revision))); myTargetRepository.setRevisionPropertyValue(0, SVNRevisionProperty.CURRENTLY_COPYING, null); myAdminClient.handlePropertesCopied(filteredCount > 0, revision); }
/** * @param revision * @param revisionProperties * @return editor to replicate the revision * @throws SVNException */ public ISVNEditor handleStartRevision(long revision, SVNProperties revisionProperties) throws SVNException { myTargetRepository.setRevisionPropertyValue(0, SVNRevisionProperty.CURRENTLY_COPYING, SVNPropertyValue.create(SVNProperty.toString(revision))); SVNProperties filtered = new SVNProperties(); filterProperties(revisionProperties, filtered, true); if (!filtered.containsName(SVNRevisionProperty.LOG)) { filtered.put(SVNRevisionProperty.LOG, ""); } SVNProperties normalizedProps = SVNAdminClient.normalizeRevisionProperties(filtered); myNormalizedRevPropsCount += normalizedProps.size(); if (mySyncEditor == null) { mySyncEditor = new SVNSynchronizeEditor(myTargetRepository, myLogEntryHandler, revision - 1, filtered); } else { mySyncEditor.reset(revision - 1, filtered); } ISVNEditor cancellableEditor = SVNCancellableEditor.newInstance(mySyncEditor, myCanceller, myDebugLog); return cancellableEditor; }
/** * @param revision * @param revisionProperties * @return editor to replicate the revision * @throws SVNException */ public ISVNEditor handleStartRevision(long revision, SVNProperties revisionProperties) throws SVNException { myTargetRepository.setRevisionPropertyValue(0, SVNRevisionProperty.CURRENTLY_COPYING, SVNPropertyValue.create(SVNProperty.toString(revision))); SVNProperties filtered = new SVNProperties(); filterProperties(revisionProperties, filtered, true); if (!filtered.containsName(SVNRevisionProperty.LOG)) { filtered.put(SVNRevisionProperty.LOG, ""); } SVNProperties normalizedProps = SVNAdminClient.normalizeRevisionProperties(filtered); myNormalizedRevPropsCount += normalizedProps.size(); if (mySyncEditor == null) { mySyncEditor = new SVNSynchronizeEditor(myTargetRepository, myLogEntryHandler, revision - 1, filtered); } else { mySyncEditor.reset(revision - 1, filtered); } ISVNEditor cancellableEditor = SVNCancellableEditor.newInstance(mySyncEditor, myCanceller, myDebugLog); return cancellableEditor; }
/** * @param revision * @param revisionProperties * @return editor to replicate the revision * @throws SVNException */ public ISVNEditor handleStartRevision(long revision, SVNProperties revisionProperties) throws SVNException { myTargetRepository.setRevisionPropertyValue(0, SVNRevisionProperty.CURRENTLY_COPYING, SVNPropertyValue.create(SVNProperty.toString(revision))); SVNProperties filtered = new SVNProperties(); filterProperties(revisionProperties, filtered, true); if (!filtered.containsName(SVNRevisionProperty.LOG)) { filtered.put(SVNRevisionProperty.LOG, ""); } SVNProperties normalizedProps = SVNAdminClient.normalizeRevisionProperties(filtered); myNormalizedRevPropsCount += normalizedProps.size(); if (mySyncEditor == null) { mySyncEditor = new SVNSynchronizeEditor(myTargetRepository, myLogEntryHandler, revision - 1, filtered); } else { mySyncEditor.reset(revision - 1, filtered); } ISVNEditor cancellableEditor = SVNCancellableEditor.newInstance(mySyncEditor, myCanceller, myDebugLog); return cancellableEditor; }