Class SvnDiffSummarize

java.lang.Object
All Implemented Interfaces:
ISvnObjectReceiver<SvnDiffStatus>, ISvnOperationOptionsProvider

public class SvnDiffSummarize extends SvnReceivingOperation<SvnDiffStatus>
Produces a diff summary which lists the changed items between source in its pegRevision, as it changed between startRevision and endRevision, or diff summary between firstSource at its pegRevision and secondSource at its pegRevision. Changes are produced without creating text deltas.
  • If it is diff between startRevision and endRevision of one source:

    Source can be either working copy path or URL.

    If pegRevision is invalid, behaves identically to diff between two sources, using source's path for both sources.

  • If it is diff between first source and second source:

    First and second sources can be either working copy path or URL.

    Both sources must represent the same node kind -- that is, if first source is a directory, second sources must also be, and if first sources is a file, second sources must also be.

The operation may report false positives if ignoreAncestry is false, since a file might have been modified between two revisions, but still have the same contents.

If depth is SVNDepth.INFINITY, diffs fully recursively. Else if it is SVNDepth.IMMEDIATES, diffs the named paths and their file children (if any), and diffs properties of subdirectories, but does not descend further into the subdirectories. Else if SVNDepth.FILES, behaves as if for SVNDepth.IMMEDIATES except doesn't diff properties of subdirectories. If SVNDepth.EMPTY, diffs exactly the named paths but nothing underneath them.

SvnOperation.run() method throws SVNException in the following cases:

Version:
1.7
  • Field Details

    • firstSource

      private SvnTarget firstSource
    • secondSource

      private SvnTarget secondSource
    • source

      private SvnTarget source
    • startRevision

      private SVNRevision startRevision
    • endRevision

      private SVNRevision endRevision
    • ignoreAncestry

      private boolean ignoreAncestry
  • Constructor Details

  • Method Details

    • setSource

      public void setSource(SvnTarget source, SVNRevision start, SVNRevision end)
      Sets the diff's source with start and end revisions for one-source type of operation.
      Parameters:
      source - source of the diff
      start - start revision of the diff
      end - end revision of the diff
    • setSources

      public void setSources(SvnTarget source1, SvnTarget source2)
      Sets both diff's sources.
      Parameters:
      source1 - first source of the diff
      source2 - second source of the diff
    • getSource

      public SvnTarget getSource()
      Gets the diff's source with start and end revisions for one-target type of operation.
      Returns:
      source of the diff
    • getStartRevision

      public SVNRevision getStartRevision()
    • getEndRevision

      public SVNRevision getEndRevision()
    • getFirstSource

      public SvnTarget getFirstSource()
    • getSecondSource

      public SvnTarget getSecondSource()
    • isIgnoreAncestry

      public boolean isIgnoreAncestry()
    • setIgnoreAncestry

      public void setIgnoreAncestry(boolean ignoreAncestry)
    • getOperationalWorkingCopy

      protected java.io.File getOperationalWorkingCopy()
      Overrides:
      getOperationalWorkingCopy in class SvnOperation<SvnDiffStatus>
    • ensureArgumentsAreValid

      protected void ensureArgumentsAreValid() throws SVNException
      Overrides:
      ensureArgumentsAreValid in class SvnOperation<SvnDiffStatus>
      Throws:
      SVNException
    • ensureArgumentsAreValid

      private void ensureArgumentsAreValid(SVNURL url1, java.io.File path1, SVNRevision revision1, SVNURL url2, java.io.File path2, SVNRevision revision2, SVNRevision pegRevision) throws SVNException
      Throws:
      SVNException
    • ensureRevisionIsValid

      private void ensureRevisionIsValid(SVNRevision revision) throws SVNException
      Throws:
      SVNException
    • isChangesWorkingCopy

      public boolean isChangesWorkingCopy()
      Gets whether the operation changes working copy
      Overrides:
      isChangesWorkingCopy in class SvnOperation<SvnDiffStatus>
      Returns:
      true if the operation changes the working copy, otherwise false