net.sf.statsvn.util.svnkit

## Class SvnKitDiff

- java.lang.Object
- - net.sf.statsvn.util.SvnDiffUtils
  - - net.sf.statsvn.util.svnkit.SvnKitDiff

- All Implemented Interfaces:
    ISvnDiffProcessor

      public class SvnKitDiff
      extends SvnDiffUtils

  Performs diffs via svnkit.
  Author:
    jkealey, yogesh

- - ### Field Summary

    - ### Fields inherited from class net.sf.statsvn.util.SvnDiffUtils

      `BINARY_TYPE, INDEX_MARKER, processor, PROPERTY_CHANGE, PROPERTY_NAME, PROPERTY_NAME_LINE, RESULT_SIZE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SvnKitDiff(SvnKitProcessor processor)` Performs diffs via svnkit.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.io.File` | `getCheckoutDirectory()` Shorthand to get the checked out directory
    `java.util.Vector` | `getLineDiff(java.lang.String newRevNr)` Gets diffs inside one revision.
    `int[]` | `getLineDiff(java.lang.String oldRevNr, java.lang.String newRevNr, java.lang.String filename)` Gets a single diff for a file between two revisions.
    `org.tmatesoft.svn.core.wc.SVNClientManager` | `getManager()` Shorthand for the svnkit client manager.
    `SvnKitProcessor` | `getSvnKitProcessor()` Shorthand to get the base processor

    - ### Methods inherited from class net.sf.statsvn.util.SvnDiffUtils

      `appendResults, callSvnDiff, callSvnDiff, getProcessor, isBinaryErrorMessage, parseDiff, parseMultipleDiffStream, parseSingleDiffStream, verifyOutput`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SvnKitDiff

          public SvnKitDiff(SvnKitProcessor processor)

      Performs diffs via svnkit.
      Parameters:
        `processor` - the base processor

  - ### Method Detail

    - #### getCheckoutDirectory

          public java.io.File getCheckoutDirectory()

      Shorthand to get the checked out directory
      Returns:
        the checked out directory

    - #### getLineDiff

          public java.util.Vector getLineDiff(java.lang.String newRevNr)
                                       throws java.io.IOException,
                                              BinaryDiffException

      Gets diffs inside one revision.
      Specified by:
        `getLineDiff` in interface `ISvnDiffProcessor`
      Overrides:
        `getLineDiff` in class `SvnDiffUtils`
      Parameters:
        `newRevNr` - new revision number
      Returns:
        a list of diffs that were extracted from one particular revision
      Throws:
        `java.io.IOException` - problem parsing the stream
        `BinaryDiffException` - if the error message is due to trying to diff binary files.

    - #### getLineDiff

          public int[] getLineDiff(java.lang.String oldRevNr,
                          java.lang.String newRevNr,
                          java.lang.String filename)
                            throws java.io.IOException,
                                   BinaryDiffException

      Gets a single diff for a file between two revisions.
      Specified by:
        `getLineDiff` in interface `ISvnDiffProcessor`
      Overrides:
        `getLineDiff` in class `SvnDiffUtils`
      Parameters:
        `oldRevNr` - old revision number
        `newRevNr` - new revision number
        `filename` - the filename
      Returns:
        A int[2] array of [lines added, lines removed] is returned.
      Throws:
        `java.io.IOException` - problem parsing the stream
        `BinaryDiffException` - if the error message is due to trying to diff binary files.

    - #### getManager

          public org.tmatesoft.svn.core.wc.SVNClientManager getManager()

      Shorthand for the svnkit client manager.
      Returns:
        the svnkit client manager

    - #### getSvnKitProcessor

          public SvnKitProcessor getSvnKitProcessor()

      Shorthand to get the base processor
      Returns:
        the base processor