org.tmatesoft.svn.core.wc

## Class SVNCopySource

- java.lang.Object
- - org.tmatesoft.svn.core.wc.SVNCopySource

-     public class SVNCopySource
      extends java.lang.Object

  The SVNCopySource class is used to provide copy source information in copy operations.
  Since:
    1.2
  Version:
    1.3
  Author:
    TMate Software Ltd.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SVNCopySource(SVNRevision pegRevision, SVNRevision revision, java.io.File path)` Creates a new `SVNCopySource` object.
    `SVNCopySource(SVNRevision pegRevision, SVNRevision revision, SVNURL url)` Creates a new `SVNCopySource` object.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.io.File` | `getFile()` Returns the working copy path.
    `java.lang.String` | `getName()` Returns the name of this copy source.
    `SVNRevision` | `getPegRevision()` Returns the peg revision of the source.
    `SVNRevision` | `getRevision()` Returns the revision of the source.
    `SVNURL` | `getURL()` Returns the repository url of the source.
    `boolean` | `isCopyContents()` Tells whether the contents of this copy source should be copied rather than the copy source itself.
    `boolean` | `isURL()` Tells if this copy source is url.
    `void` | `setCopyContents(boolean copyContents)` Sets whether to expand this copy source to its contents or not.

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

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

- - ### Constructor Detail

    - #### SVNCopySource

          public SVNCopySource(SVNRevision pegRevision,
                       SVNRevision revision,
                       java.io.File path)

      Creates a new `SVNCopySource` object.
      Parameters:
        `pegRevision` - peg revision where `path` is valid
        `revision` - revision of `path`
        `path` - working copy path

    - #### SVNCopySource

          public SVNCopySource(SVNRevision pegRevision,
                       SVNRevision revision,
                       SVNURL url)

      Creates a new `SVNCopySource` object.
      Parameters:
        `pegRevision` - peg revision where `url` is valid
        `revision` - revision of `url`
        `url` - repository url

  - ### Method Detail

    - #### getFile

          public java.io.File getFile()

      Returns the working copy path.
      Returns:
        working copy path; null if it's a url source.

    - #### getPegRevision

          public SVNRevision getPegRevision()

      Returns the peg revision of the source.
      Returns:
        peg revision

    - #### getRevision

          public SVNRevision getRevision()

      Returns the revision of the source.
      Returns:
        source revision

    - #### getURL

          public SVNURL getURL()

      Returns the repository url of the source.
      Returns:
        repository url; null if it's a local source.

    - #### isURL

          public boolean isURL()

      Tells if this copy source is url.
      Returns:
        true if `getURL()` returns non-null; otherwise false (`returns non-null`)

    - #### getName

          public java.lang.String getName()

      Returns the name of this copy source.
      Returns:
        copy source name

    - #### setCopyContents

          public void setCopyContents(boolean copyContents)

      Sets whether to expand this copy source to its contents or not.
      Parameters:
        `copyContents` - true to expand; otherwise false
      See Also:
        `isCopyContents()`

    - #### isCopyContents

          public boolean isCopyContents()

      Tells whether the contents of this copy source should be copied rather than the copy source itself. This is relevant only for directory copy sources. If a user `specifies` to copy contents of a file he will get an `SVNException`. So, if this copy source represents a directory and if this method returns true, children of this copy source directory will be copied to the target instead of the copy source.
      Returns:
        true to expand copy source to children