org.tmatesoft.svn.core.wc
public class SVNCopyClient extends SVNBasicClient
Copy operations allow a user to copy versioned files and directories with all their previous history in several ways.
Supported copy operations are:
Besides just copying SVNCopyClient also is able to move a versioned item - that is first making a copy of the source item and then scheduling the source item for deletion when operating on a Working Copy, or right committing the deletion of the source item when operating immediately on the repository.
Supported move operations are:
Overloaded doCopy() methods of SVNCopyClient are similar to
'svn copy' and 'svn move' commands of the SVN command line client.
Version: 1.1.1
See Also: Examples
| Constructor Summary | |
|---|---|
| SVNCopyClient(ISVNAuthenticationManager authManager, ISVNOptions options)
Constructs and initializes an SVNCopyClient object
with the specified run-time configuration and authentication
drivers.
| |
| SVNCopyClient(ISVNRepositoryPool repositoryPool, ISVNOptions options) | |
| Method Summary | |
|---|---|
| SVNCommitInfo | doCopy(SVNURL srcURL, SVNRevision srcRevision, SVNURL dstURL, boolean isMove, String commitMessage)
Copies/moves a source URL to a destination one immediately committing changes
to a repository. |
| SVNCommitInfo | doCopy(SVNURL srcURL, SVNRevision srcRevision, SVNURL dstURL, boolean isMove, boolean failWhenDstExists, String commitMessage)
Copies/moves a source URL to a destination one immediately committing changes
to a repository.
|
| SVNCommitInfo | doCopy(File srcPath, SVNRevision srcRevision, SVNURL dstURL, String commitMessage)
Copies a source Working Copy path (or its repository location URL) to a destination
URL immediately committing changes to a repository.
|
| SVNCommitInfo | doCopy(File srcPath, SVNRevision srcRevision, SVNURL dstURL, boolean failWhenDstExists, String commitMessage)
Copies a source Working Copy path (or its repository location URL) to a destination
URL immediately committing changes to a repository.
|
| long | doCopy(SVNURL srcURL, SVNRevision srcRevision, File dstPath)
Copies a source URL to a destination Working Copy path.
|
| void | doCopy(File srcPath, SVNRevision srcRevision, File dstPath, boolean force, boolean isMove)
Copies/moves a source Working Copy path to a destination Working Copy path.
|
| ISVNCommitHandler | getCommitHandler()
Returns the specified commit handler (if set) being in use or a default one
(DefaultSVNCommitHandler) if no special
implementations of ISVNCommitHandler were
previousely provided.
|
| ISVNCommitParameters | getCommitParameters()
Returns commit parameters.
|
| void | setCommitHandler(ISVNCommitHandler handler)
Sets an implementation of ISVNCommitHandler to
the commit handler that will be used during commit operations to handle
commit log messages. |
| void | setCommitParameters(ISVNCommitParameters parameters)
Sets commit parameters to use.
|
If options is null,
then this SVNCopyClient will be using a default run-time
configuration driver which takes client-side settings from the
default SVN's run-time configuration area but is not able to
change those settings (read more on ISVNOptions and SVNWCUtil).
If authManager is null,
then this SVNCopyClient will be using a default authentication
and network layers driver (see createDefaultAuthenticationManager)
which uses server-side settings and auth storage from the
default SVN's run-time configuration area (or system properties
if that area is not found).
Parameters: authManager an authentication and network layers driver options a run-time configuration options driver
doCopy(srcURL, srcRevision, dstURL, isMove, false, commitMessage).
Parameters: srcURL a source repository location URL srcRevision a revision of srcURL dstURL a target URL where srcURL is to be
copied/moved isMove true to move the source
to the target (only URL-to-URL),
false to copy commitMessage a commit log message
Returns: information on the committed revision
Throws: SVNException
See Also: SVNCopyClient
If dstURL and srcURL are the same,
failWhenDstExists is false and
srcURL is a directory then this directory will be copied into itself.
If dstURL is a directory, dstURL and srcURL are not the same,
failWhenDstExists is false, dstURL
has not the last path element entry of srcURL then that entry will be copied into
dstURL.
Parameters: srcURL a source repository location URL srcRevision a revision of srcURL dstURL a target URL where srcURL is to be
copied/moved isMove true to move the source
to the target (only URL-to-URL),
false to copy failWhenDstExists true to force a failure if
the destination exists commitMessage a commit log message
Returns: information on the committed revision
Throws: SVNException if one of the following is true:
srcURL and dstURL are not in the
same repository
srcURL was not found in srcRevision
dstURL and srcURL are the same and
failWhenDstExists is true
dstURL already exists and failWhenDstExists
is true
dstURL already exists, failWhenDstExists
is false, but dstURL
already contains the top path element name of srcURL
isMove = true and
dstURL = srcURL
Equivalent to doCopy(srcPath, srcRevision, dstURL, false, commitMessage).
Parameters: srcPath a source Working Copy path srcRevision a revision of srcPath dstURL a target URL where srcPath is to be
copied commitMessage a commit log message
Returns: information on the committed revision
Throws: SVNException if one of the following is true:
srcPath is not under version control
srcPath has no URL
srcPath was not
found in srcRevision
dstURL already exists
See Also: SVNCopyClient
If srcRevision is not WORKING then the repository
location URL of srcPath is copied to dstURL. Otherwise
srcPath itself.
failWhenDstExists behaves
like in SVNCopyClient.
Parameters: srcPath a source Working Copy path srcRevision a revision of srcPath dstURL a target URL where srcPath is to be
copied failWhenDstExists true to force a failure if
the destination exists commitMessage a commit log message
Returns: information on the committed revision
Throws: SVNException if one of the following is true:
srcPath is not under version control
srcPath has no URL
srcPath was not
found in srcRevision
dstURL already exists and
failWhenDstExists is true
dstPath will be automatically scheduled for addition with history.
Parameters: srcURL a source URL srcRevision a revision of srcURL dstPath a destination WC path
Returns: the revision number of a source
Throws: SVNException if one of the following is true:
srcURL was not found in srcRevision
dstPath already exists
dstPath appears in srcURL
dstPath and srcURL are from
different repositories
dstPath is under version control but missing
If srcRevision is not WORKING and
isMove = false, then the repository
location URL of srcPath is copied to dstPath. Otherwise
srcPath itself.
dstPath will be automatically scheduled for addition with history.
Parameters: srcPath a source WC path srcRevision a revision of srcPath dstPath a destination WC path force true to force the operation
to run isMove true to move the source
to the target (only WC-to-WC),
false to copy
Throws: SVNException if one of the following is true:
dstPath already exists and is in the way
containing an item with the same name as the source
srcPath is not under version control
srcPath does not exist
srcPath has no URL
dstPath is a child of srcPath
dstPath is scheduled for deletion
isMove = true and
dstURL = srcURL
Returns: the commit handler being in use or a default one
See Also: setCommitHandler DefaultSVNCommitHandler
If no user parameters were previously specified, once creates and
returns default ones.
Returns: commit parameters
See Also: setCommitParameters
If using SVNCopyClient without specifying any commit handler then a default one will be used - DefaultSVNCommitHandler.
Parameters: handler an implementor's handler that will be used to handle commit log messages
See Also: getCommitHandler SVNCommitItem
When no parameters are set default
ones are used.
Parameters: parameters commit parameters
See Also: getCommitParameters