org.tmatesoft.svn.core.wc2

## Class SvnLogMergeInfo

- java.lang.Object
- - org.tmatesoft.svn.core.wc2.SvnOperation<T>
  - - org.tmatesoft.svn.core.wc2.SvnReceivingOperation<SVNLogEntry>
    - - org.tmatesoft.svn.core.wc2.SvnLogMergeInfo

- All Implemented Interfaces:
    ISvnObjectReceiver<SVNLogEntry>, ISvnOperationOptionsProvider

      public class SvnLogMergeInfo
      extends SvnReceivingOperation<SVNLogEntry>

  Creates a `SVNLogEntry` object with the revisions merged from `mergeSource` (as of `mergeSource`'s `pegRevision`) into `target` (as of `target`'s `pegRevision`). `Target` can be either URL or working copy path.

  If `discoverChangedPaths` is set, then the changed paths `Map` argument will be passed to a constructor of `SVNLogEntry` on each invocation of `handler`.

  If `revisionProperties` is `null`, retrieves all revision properties; else, retrieves only the revision properties named in the array (i.e. retrieves none if the array is empty). Note: this operation requires repository access. `SvnOperation.run()` throws `SVNException` in the following cases:
  exception with `SVNErrorCode.UNSUPPORTED_FEATURE` error code - if the server doesn't support retrieval of mergeinfo
  Version:
    1.7
  Author:
    TMate Software Ltd.
  See Also:
    `SVNLogEntry`

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `SvnLogMergeInfo(SvnOperationFactory factory)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addRevisionRange(SvnRevisionRange range)`
    `protected void` | `ensureArgumentsAreValid()`
    `java.util.Collection<SvnRevisionRange>` | `getRanges()`
    `java.lang.String[]` | `getRevisionProperties()` Returns all revision ranges for those log should be reported.
    `SvnTarget` | `getSource()` Returns merge source, can represent URL or working copy path.
    `boolean` | `isChangesWorkingCopy()` Gets whether the operation changes working copy
    `boolean` | `isDiscoverChangedPaths()` Returns whether to report of all changed paths for every revision being processed If `true` then the changed paths `Map` argument will be passed to a constructor of `SVNLogEntry`.
    `boolean` | `isFindMerged()` Returns whether to report merged revisions or eligible for merge revisions
    `void` | `setDiscoverChangedPaths(boolean discoverChangedPaths)` Sets whether to report of all changed paths for every revision being processed If `true` then the changed paths `Map` argument will be passed to a constructor of `SVNLogEntry`.
    `void` | `setFindMerged(boolean findMerged)` Sets whether to report merged revisions or eligible for merge revisions
    `void` | `setRevisionProperties(java.lang.String[] revisionProperties)` Sets all revision ranges for those log should be reported.
    `void` | `setSource(SvnTarget source)` Returns merge source, can represent URL or working copy path.

    - ### Methods inherited from class org.tmatesoft.svn.core.wc2.SvnReceivingOperation

      `first, getReceiver, initDefaults, last, receive, run, setReceiver`

    - ### Methods inherited from class org.tmatesoft.svn.core.wc2.SvnOperation

      `addTarget, cancel, ensureEnoughTargets, ensureHomohenousTargets, getApplicableChangelists, getAuthenticationManager, getCanceller, getDepth, getEventHandler, getFirstTarget, getMaximumTargetsCount, getMinimumTargetsCount, getOperationalWorkingCopy, getOperationFactory, getOptions, getRepositoryPool, getRevision, getSqliteJournalMode, getTargets, hasFileTargets, hasLocalTargets, hasRemoteTargets, isCancelled, isSleepForTimestamp, isUseParentWcFormat, needsHomohenousTargets, run, setApplicalbeChangelists, setDepth, setRevision, setSingleTarget, setSleepForTimestamp, setSqliteJournalMode`

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

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

- - ### Constructor Detail

    - #### SvnLogMergeInfo

          protected SvnLogMergeInfo(SvnOperationFactory factory)

  - ### Method Detail

    - #### isFindMerged

          public boolean isFindMerged()

      Returns whether to report merged revisions or eligible for merge revisions
      Returns:
        `true` if should report merged revisions, `false` if should report eligible for merge

    - #### setFindMerged

          public void setFindMerged(boolean findMerged)

      Sets whether to report merged revisions or eligible for merge revisions
      Parameters:
        `findMerged` - `true` if should report merged revisions, `false` if should report eligible for merge

    - #### getSource

          public SvnTarget getSource()

      Returns merge source, can represent URL or working copy path.
      Returns:
        merge source

    - #### setSource

          public void setSource(SvnTarget source)

      Returns merge source, can represent URL or working copy path.
      Parameters:
        `source` - merge source

    - #### isDiscoverChangedPaths

          public boolean isDiscoverChangedPaths()

      Returns whether to report of all changed paths for every revision being processed If `true` then the changed paths `Map` argument will be passed to a constructor of `SVNLogEntry`.
      Returns:
        `true` if all changed paths for every revision being processed should be reported, otherwise `false`

    - #### setDiscoverChangedPaths

          public void setDiscoverChangedPaths(boolean discoverChangedPaths)

      Sets whether to report of all changed paths for every revision being processed If `true` then the changed paths `Map` argument will be passed to a constructor of `SVNLogEntry`.
      Parameters:
        `discoverChangedPaths` - `true` if all changed paths for every revision being processed should be reported, otherwise `false`

    - #### getRevisionProperties

          public java.lang.String[] getRevisionProperties()

      Returns all revision ranges for those log should be reported.
      Returns:
        collection of `SVNRevisionRange` objects

    - #### setRevisionProperties

          public void setRevisionProperties(java.lang.String[] revisionProperties)

      Sets all revision ranges for those log should be reported.
      Parameters:
        `revisionProperties` - collection of `SVNRevisionRange` objects

    - #### addRevisionRange

          public void addRevisionRange(SvnRevisionRange range)

    - #### getRanges

          public java.util.Collection<SvnRevisionRange> getRanges()

    - #### ensureArgumentsAreValid

          protected void ensureArgumentsAreValid()
                                          throws SVNException

      Overrides:
        `ensureArgumentsAreValid` in class `SvnOperation<SVNLogEntry>`
      Throws:
        `SVNException`

    - #### isChangesWorkingCopy

          public boolean isChangesWorkingCopy()

      Gets whether the operation changes working copy
      Overrides:
        `isChangesWorkingCopy` in class `SvnOperation<SVNLogEntry>`
      Returns:
        `true` if the operation changes the working copy, otherwise `false`