org.apache.maven.scm.manager
Class AbstractScmManager

java.lang.Object
  extended by org.apache.maven.scm.manager.AbstractScmManager
All Implemented Interfaces:
ScmManager
Direct Known Subclasses:
BasicScmManager, DefaultScmManager

public abstract class AbstractScmManager
extends Object
implements ScmManager

Version:
$Id: AbstractScmManager.java 1354687 2012-06-27 19:38:56Z olamy $
Author:
Trygve Laugstøl, Brett Porter, Emmanuel Venisse

Field Summary
 
Fields inherited from interface org.apache.maven.scm.manager.ScmManager
ROLE
 
Constructor Summary
AbstractScmManager()
           
 
Method Summary
 AddScmResult add(ScmRepository repository, ScmFileSet fileSet)
          Adds the given files to the source control system
 AddScmResult add(ScmRepository repository, ScmFileSet fileSet, String message)
          Adds the given files to the source control system
protected  void addScmProvider(String providerType, ScmProvider provider)
          Deprecated. use setScmProvider(String, ScmProvider) instead
 BlameScmResult blame(BlameScmRequest blameScmRequest)
           
 BlameScmResult blame(ScmRepository repository, ScmFileSet fileSet, String filename)
          Returns the blame of specified file
 BranchScmResult branch(ScmRepository repository, ScmFileSet fileSet, String branchName)
          Branch (or label in some systems) will create a branch of the source file with a certain branch name
 BranchScmResult branch(ScmRepository repository, ScmFileSet fileSet, String branchName, String message)
          Branch (or label in some systems) will create a branch of the source file with a certain branch name
 ChangeLogScmResult changeLog(ChangeLogScmRequest scmRequest)
          Returns the changes that have happend in the source control system in a certain period of time.
 ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, ScmBranch branch)
          Returns the changes that have happend in the source control system in a certain period of time.
 ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, ScmBranch branch, String datePattern)
          Returns the changes that have happend in the source control system in a certain period of time.
 ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion)
          Returns the changes that have happend in the source control system between two tags.
 ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, ScmVersion startRevision, ScmVersion endRevision, String datePattern)
          Returns the changes that have happend in the source control system between two tags.
 CheckInScmResult checkIn(ScmRepository repository, ScmFileSet fileSet, ScmVersion revision, String message)
          Save the changes you have done into the repository.
 CheckInScmResult checkIn(ScmRepository repository, ScmFileSet fileSet, String message)
          Save the changes you have done into the repository.
 CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet)
          Create a copy of the repository on your local machine
 CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, boolean recursive)
          Create a copy of the repository on your local machine.
 CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion version)
          Create a copy of the repository on your local machine
 CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, boolean recursive)
          Create a copy of the repository on your local machine.
protected  String cleanScmUrl(String scmUrl)
          Clean the SCM url by removing all ../ in path
 DiffScmResult diff(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion)
          Create a diff between two branch/tag/revision.
 EditScmResult edit(ScmRepository repository, ScmFileSet fileSet)
          Make a file editable.
 ExportScmResult export(ScmRepository repository, ScmFileSet fileSet)
          Create an exported copy of the repository on your local machine
 ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, ScmVersion version)
          Create an exported copy of the repository on your local machine
 ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, String outputDirectory)
          Create an exported copy of the repository on your local machine
 ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, String outputDirectory)
          Create an exported copy of the repository on your local machine
 ScmProvider getProviderByRepository(ScmRepository repository)
          
 ScmProvider getProviderByType(String providerType)
          Returns the default provider registered for this providerType or a specific implementation if the 'maven.scm.provider.providerType.implementation' system property is defined.
 ScmProvider getProviderByUrl(String scmUrl)
          
protected abstract  ScmLogger getScmLogger()
           
 ListScmResult list(ScmRepository repository, ScmFileSet fileSet, boolean recursive, ScmVersion version)
          List each element (files and directories) of fileSet as they exist in the repository.
 ScmRepository makeProviderScmRepository(String providerType, File path)
          
 ScmRepository makeScmRepository(String scmUrl)
          Generate a SCMRepository from a SCM url.
 MkdirScmResult mkdir(ScmRepository repository, ScmFileSet fileSet, String message, boolean createInLocal)
          Create new directory/directories in the repository.
 RemoveScmResult remove(ScmRepository repository, ScmFileSet fileSet, String message)
          Removes the given files from the source control system
 void setScmProvider(String providerType, ScmProvider provider)
          Set a provider to be used for a type of SCM.
 void setScmProviderImplementation(String providerType, String providerImplementation)
          Set the provider implementation
protected  void setScmProviders(Map<String,ScmProvider> providers)
           
 StatusScmResult status(ScmRepository repository, ScmFileSet fileSet)
          Returns the status of the files in the source control system.
 TagScmResult tag(ScmRepository repository, ScmFileSet fileSet, String tagName)
          Tag (or label in some systems) will tag the source file with a certain tag
 TagScmResult tag(ScmRepository repository, ScmFileSet fileSet, String tagName, String message)
          Tag (or label in some systems) will tag the source file with a certain tag
 UnEditScmResult unedit(ScmRepository repository, ScmFileSet fileSet)
          Make a file no longer editable.
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet)
          Updates the copy on the local machine with the changes in the repository
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, boolean runChangelog)
          Updates the copy on the local machine with the changes in the repository
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, Date lastUpdate)
          Updates the copy on the local machine with the changes in the repository
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, Date lastUpdate, String datePattern)
          Updates the copy on the local machine with the changes in the repository
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version)
          Updates the copy on the local machine with the changes in the repository
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, boolean runChangelog)
          Updates the copy on the local machine with the changes in the repository
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, Date lastUpdate)
          Updates the copy on the local machine with the changes in the repository
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, Date lastUpdate, String datePattern)
          Updates the copy on the local machine with the changes in the repository
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, String datePattern)
          Updates the copy on the local machine with the changes in the repository
 UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, String datePattern)
          Updates the copy on the local machine with the changes in the repository
 List<String> validateScmRepository(String scmUrl)
          Validate a SCM URL.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractScmManager

public AbstractScmManager()
Method Detail

setScmProviders

protected void setScmProviders(Map<String,ScmProvider> providers)

addScmProvider

protected void addScmProvider(String providerType,
                              ScmProvider provider)
Deprecated. use setScmProvider(String, ScmProvider) instead


setScmProvider

public void setScmProvider(String providerType,
                           ScmProvider provider)
Set a provider to be used for a type of SCM. If there was already a designed provider for that type it will be replaced.

Specified by:
setScmProvider in interface ScmManager
Parameters:
providerType - the type of SCM, eg. svn, cvs
provider - the provider that will be used for that SCM type

getScmLogger

protected abstract ScmLogger getScmLogger()

getProviderByUrl

public ScmProvider getProviderByUrl(String scmUrl)
                             throws ScmRepositoryException,
                                    NoSuchScmProviderException

Specified by:
getProviderByUrl in interface ScmManager
Throws:
ScmRepositoryException
NoSuchScmProviderException

setScmProviderImplementation

public void setScmProviderImplementation(String providerType,
                                         String providerImplementation)
Set the provider implementation

Specified by:
setScmProviderImplementation in interface ScmManager
Parameters:
providerType - The provider type, eg. cvs
providerImplementation - The provider implementation (the role-hint of the provider), eg. cvs, cvs_native

getProviderByType

public ScmProvider getProviderByType(String providerType)
                              throws NoSuchScmProviderException
Returns the default provider registered for this providerType or a specific implementation if the 'maven.scm.provider.providerType.implementation' system property is defined. For example: maven.scm.provider.cvs.implementation=cvs_native

Specified by:
getProviderByType in interface ScmManager
Parameters:
providerType - The provider type (cvs, svn...)
Returns:
The scm provider
Throws:
NoSuchScmProviderException - if the provider doesn't exist

getProviderByRepository

public ScmProvider getProviderByRepository(ScmRepository repository)
                                    throws NoSuchScmProviderException

Specified by:
getProviderByRepository in interface ScmManager
Throws:
NoSuchScmProviderException

makeScmRepository

public ScmRepository makeScmRepository(String scmUrl)
                                throws ScmRepositoryException,
                                       NoSuchScmProviderException
Generate a SCMRepository from a SCM url.

Specified by:
makeScmRepository in interface ScmManager
Parameters:
scmUrl - the scm url
Returns:
The scm repository
Throws:
ScmRepositoryException - if an error occurs in the scm repository construction
NoSuchScmProviderException - if the provider doesn't exist

cleanScmUrl

protected String cleanScmUrl(String scmUrl)
Clean the SCM url by removing all ../ in path

Parameters:
scmUrl - the SCM url
Returns:
the cleaned SCM url

makeProviderScmRepository

public ScmRepository makeProviderScmRepository(String providerType,
                                               File path)
                                        throws ScmRepositoryException,
                                               UnknownRepositoryStructure,
                                               NoSuchScmProviderException

Specified by:
makeProviderScmRepository in interface ScmManager
Throws:
ScmRepositoryException
UnknownRepositoryStructure
NoSuchScmProviderException

validateScmRepository

public List<String> validateScmRepository(String scmUrl)
Validate a SCM URL.

Specified by:
validateScmRepository in interface ScmManager
Parameters:
scmUrl - the SCM URL to validate
Returns:
List of String objects with the messages returned by the SCM provider

add

public AddScmResult add(ScmRepository repository,
                        ScmFileSet fileSet)
                 throws ScmException
Adds the given files to the source control system

Specified by:
add in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to be added
Returns:
an AddScmResult that contains the files that have been added
Throws:
ScmException

add

public AddScmResult add(ScmRepository repository,
                        ScmFileSet fileSet,
                        String message)
                 throws ScmException
Adds the given files to the source control system

Specified by:
add in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to be added
message - a string that is a comment on the new added file
Returns:
an AddScmResult that contains the files that have been added
Throws:
ScmException - if any

branch

public BranchScmResult branch(ScmRepository repository,
                              ScmFileSet fileSet,
                              String branchName)
                       throws ScmException
Branch (or label in some systems) will create a branch of the source file with a certain branch name

Specified by:
branch in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to branch. Implementations can also give the changes from the ScmFileSet.getBasedir() downwards.
branchName - the branch name to apply to the files
Returns:
Throws:
ScmException - if any

branch

public BranchScmResult branch(ScmRepository repository,
                              ScmFileSet fileSet,
                              String branchName,
                              String message)
                       throws ScmException
Branch (or label in some systems) will create a branch of the source file with a certain branch name

Specified by:
branch in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to branch. Implementations can also give the changes from the ScmFileSet.getBasedir() downwards.
branchName - the branch name to apply to the files
message - the commit message used for the tag creation
Returns:
Throws:
ScmException - if any

changeLog

public ChangeLogScmResult changeLog(ScmRepository repository,
                                    ScmFileSet fileSet,
                                    Date startDate,
                                    Date endDate,
                                    int numDays,
                                    ScmBranch branch)
                             throws ScmException
Returns the changes that have happend in the source control system in a certain period of time. This can be adding, removing, updating, ... of files

Specified by:
changeLog in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to know the changes about. Implementations can also give the changes from the ScmFileSet.getBasedir() downwards.
startDate - the start date of the period
endDate - the end date of the period
numDays - the number days before the current time if startdate and enddate are null
branch - the branch/tag
Returns:
The SCM result of the changelog command
Throws:
ScmException - if any

changeLog

public ChangeLogScmResult changeLog(ScmRepository repository,
                                    ScmFileSet fileSet,
                                    Date startDate,
                                    Date endDate,
                                    int numDays,
                                    ScmBranch branch,
                                    String datePattern)
                             throws ScmException
Returns the changes that have happend in the source control system in a certain period of time. This can be adding, removing, updating, ... of files

Specified by:
changeLog in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to know the changes about. Implementations can also give the changes from the ScmFileSet.getBasedir() downwards.
startDate - the start date of the period
endDate - the end date of the period
numDays - the number days before the current time if startdate and enddate are null
branch - the branch/tag
datePattern - the date pattern use in changelog output returned by scm tool
Returns:
The SCM result of the changelog command
Throws:
ScmException - if any

changeLog

public ChangeLogScmResult changeLog(ChangeLogScmRequest scmRequest)
                             throws ScmException
Returns the changes that have happend in the source control system in a certain period of time. This can be adding, removing, updating, ... of files

Specified by:
changeLog in interface ScmManager
Parameters:
scmRequest - request wrapping detailed parameters for the changelog command
Returns:
The SCM result of the changelog command
Throws:
ScmException - if any

changeLog

public ChangeLogScmResult changeLog(ScmRepository repository,
                                    ScmFileSet fileSet,
                                    ScmVersion startVersion,
                                    ScmVersion endVersion)
                             throws ScmException
Returns the changes that have happend in the source control system between two tags. This can be adding, removing, updating, ... of files

Specified by:
changeLog in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to know the changes about. Implementations can also give the changes from the ScmFileSet.getBasedir() downwards.
startVersion - the start branch/tag/revision
endVersion - the end branch/tag/revision
Returns:
The SCM result of the changelog command
Throws:
ScmException - if any

changeLog

public ChangeLogScmResult changeLog(ScmRepository repository,
                                    ScmFileSet fileSet,
                                    ScmVersion startRevision,
                                    ScmVersion endRevision,
                                    String datePattern)
                             throws ScmException
Returns the changes that have happend in the source control system between two tags. This can be adding, removing, updating, ... of files

Specified by:
changeLog in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to know the changes about. Implementations can also give the changes from the ScmFileSet.getBasedir() downwards.
startRevision - the start revision
endRevision - the end revision
datePattern - the date pattern use in changelog output returned by scm tool
Returns:
Throws:
ScmException - if any

checkIn

public CheckInScmResult checkIn(ScmRepository repository,
                                ScmFileSet fileSet,
                                String message)
                         throws ScmException
Save the changes you have done into the repository. This will create a new version of the file or directory in the repository.

When the fileSet has no entries, the fileSet.getBaseDir() is recursively committed. When the fileSet has entries, the commit is non-recursive and only the elements in the fileSet are committed.

Specified by:
checkIn in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to check in (sometimes called commit)
message - a string that is a comment on the changes that where done
Returns:
Throws:
ScmException - if any

checkIn

public CheckInScmResult checkIn(ScmRepository repository,
                                ScmFileSet fileSet,
                                ScmVersion revision,
                                String message)
                         throws ScmException
Save the changes you have done into the repository. This will create a new version of the file or directory in the repository.

When the fileSet has no entries, the fileSet.getBaseDir() is recursively committed. When the fileSet has entries, the commit is non-recursive and only the elements in the fileSet are committed.

Specified by:
checkIn in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to check in (sometimes called commit)
revision - branch/tag/revision
message - a string that is a comment on the changes that where done
Returns:
Throws:
ScmException - if any

checkOut

public CheckOutScmResult checkOut(ScmRepository repository,
                                  ScmFileSet fileSet)
                           throws ScmException
Create a copy of the repository on your local machine

Specified by:
checkOut in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files are copied to the ScmFileSet.getBasedir() location
Returns:
Throws:
ScmException - if any

checkOut

public CheckOutScmResult checkOut(ScmRepository repository,
                                  ScmFileSet fileSet,
                                  ScmVersion version)
                           throws ScmException
Create a copy of the repository on your local machine

Specified by:
checkOut in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files are copied to the ScmFileSet.getBasedir() location
version - get the version defined by the revision, branch or tag
Returns:
Throws:
ScmException - if any

checkOut

public CheckOutScmResult checkOut(ScmRepository repository,
                                  ScmFileSet fileSet,
                                  boolean recursive)
                           throws ScmException
Create a copy of the repository on your local machine.

Specified by:
checkOut in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files are copied to the ScmFileSet.getBasedir() location
recursive - whether to check out recursively
Returns:
Throws:
ScmException - if any

checkOut

public CheckOutScmResult checkOut(ScmRepository repository,
                                  ScmFileSet fileSet,
                                  ScmVersion version,
                                  boolean recursive)
                           throws ScmException
Create a copy of the repository on your local machine.

Specified by:
checkOut in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files are copied to the ScmFileSet.getBasedir() location
version - get the version defined by the revision, branch or tag
recursive - whether to check out recursively
Returns:
Throws:
ScmException - if any

diff

public DiffScmResult diff(ScmRepository repository,
                          ScmFileSet fileSet,
                          ScmVersion startVersion,
                          ScmVersion endVersion)
                   throws ScmException
Create a diff between two branch/tag/revision.

Specified by:
diff in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files are copied to the ScmFileSet.getBasedir() location
startVersion - the start branch/tag/revision
endVersion - the end branch/tag/revision
Returns:
Throws:
ScmException - if any

edit

public EditScmResult edit(ScmRepository repository,
                          ScmFileSet fileSet)
                   throws ScmException
Make a file editable. This is used in source control systems where you look at read-only files and you need to make them not read-only anymore before you can edit them. This can also mean that no other user in the system can make the file not read-only anymore.

Specified by:
edit in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to make editable
Returns:
Throws:
ScmException - if any

export

public ExportScmResult export(ScmRepository repository,
                              ScmFileSet fileSet)
                       throws ScmException
Create an exported copy of the repository on your local machine

Specified by:
export in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files are copied to the ScmFileSet.getBasedir() location
Returns:
Throws:
ScmException - if any

export

public ExportScmResult export(ScmRepository repository,
                              ScmFileSet fileSet,
                              ScmVersion version)
                       throws ScmException
Create an exported copy of the repository on your local machine

Specified by:
export in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files are copied to the ScmFileSet.getBasedir() location
version - get the version defined by the branch/tag/revision
Returns:
Throws:
ScmException - if any

export

public ExportScmResult export(ScmRepository repository,
                              ScmFileSet fileSet,
                              String outputDirectory)
                       throws ScmException
Create an exported copy of the repository on your local machine

Specified by:
export in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files are copied to the ScmFileSet.getBasedir() location
outputDirectory - the directory where the export will be stored
Returns:
Throws:
ScmException - if any

export

public ExportScmResult export(ScmRepository repository,
                              ScmFileSet fileSet,
                              ScmVersion version,
                              String outputDirectory)
                       throws ScmException
Create an exported copy of the repository on your local machine

Specified by:
export in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files are copied to the ScmFileSet.getBasedir() location
version - get the version defined by the branch/tag/revision
outputDirectory - the directory where the export will be stored
Returns:
Throws:
ScmException - if any

list

public ListScmResult list(ScmRepository repository,
                          ScmFileSet fileSet,
                          boolean recursive,
                          ScmVersion version)
                   throws ScmException
List each element (files and directories) of fileSet as they exist in the repository.

Specified by:
list in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to list
recursive - descend recursively
version - use the version defined by the branch/tag/revision
Returns:
the list of files in the repository
Throws:
ScmException

mkdir

public MkdirScmResult mkdir(ScmRepository repository,
                            ScmFileSet fileSet,
                            String message,
                            boolean createInLocal)
                     throws ScmException
Create new directory/directories in the repository.

Specified by:
mkdir in interface ScmManager
Returns:
Throws:
ScmException

remove

public RemoveScmResult remove(ScmRepository repository,
                              ScmFileSet fileSet,
                              String message)
                       throws ScmException
Removes the given files from the source control system

Specified by:
remove in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to be removed
Returns:
Throws:
ScmException - if any

status

public StatusScmResult status(ScmRepository repository,
                              ScmFileSet fileSet)
                       throws ScmException
Returns the status of the files in the source control system. The state of each file can be one of the ScmFileStatus flags.

Specified by:
status in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to know the status about. Implementations can also give the changes from the ScmFileSet.getBasedir() downwards.
Returns:
Throws:
ScmException - if any

tag

public TagScmResult tag(ScmRepository repository,
                        ScmFileSet fileSet,
                        String tagName)
                 throws ScmException
Tag (or label in some systems) will tag the source file with a certain tag

Specified by:
tag in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to tag. Implementations can also give the changes from the ScmFileSet.getBasedir() downwards.
tagName - the tag name to apply to the files
Returns:
Throws:
ScmException - if any

tag

public TagScmResult tag(ScmRepository repository,
                        ScmFileSet fileSet,
                        String tagName,
                        String message)
                 throws ScmException
Tag (or label in some systems) will tag the source file with a certain tag

Specified by:
tag in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to tag. Implementations can also give the changes from the ScmFileSet.getBasedir() downwards.
tagName - the tag name to apply to the files
message - the commit message used for the tag creation
Returns:
Throws:
ScmException - if any

unedit

public UnEditScmResult unedit(ScmRepository repository,
                              ScmFileSet fileSet)
                       throws ScmException
Make a file no longer editable. This is the conterpart of ScmManager.edit(org.apache.maven.scm.repository.ScmRepository, org.apache.maven.scm.ScmFileSet). It makes the file read-only again.

Specified by:
unedit in interface ScmManager
Parameters:
repository - the source control system
fileSet - the files to make uneditable
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet,
                              ScmVersion version)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
version - use the version defined by the branch/tag/revision
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet,
                              boolean runChangelog)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
runChangelog - Run the changelog command after the update
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet,
                              ScmVersion version,
                              boolean runChangelog)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
version - use the version defined by the branch/tag/revision
runChangelog - Run the changelog command after the update
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet,
                              String datePattern)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
datePattern - the date pattern use in changelog output returned by scm tool
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet,
                              ScmVersion version,
                              String datePattern)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
version - use the version defined by the branch/tag/revision
datePattern - the date pattern use in changelog output returned by scm tool
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet,
                              Date lastUpdate)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet,
                              ScmVersion version,
                              Date lastUpdate)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
version - use the version defined by the branch/tag/revision
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet,
                              Date lastUpdate,
                              String datePattern)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
lastUpdate - Date of last update
datePattern - the date pattern use in changelog output returned by scm tool
Returns:
Throws:
ScmException - if any

update

public UpdateScmResult update(ScmRepository repository,
                              ScmFileSet fileSet,
                              ScmVersion version,
                              Date lastUpdate,
                              String datePattern)
                       throws ScmException
Updates the copy on the local machine with the changes in the repository

Specified by:
update in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
version - use the version defined by the branch/tag/revision
lastUpdate - Date of last update
datePattern - the date pattern use in changelog output returned by scm tool
Returns:
Throws:
ScmException - if any

blame

public BlameScmResult blame(ScmRepository repository,
                            ScmFileSet fileSet,
                            String filename)
                     throws ScmException
Returns the blame of specified file

Specified by:
blame in interface ScmManager
Parameters:
repository - the source control system
fileSet - location of your local copy
filename - file
Returns:
blame for specified file
Throws:
ScmException - if any

blame

public BlameScmResult blame(BlameScmRequest blameScmRequest)
                     throws ScmException
Specified by:
blame in interface ScmManager
Returns:
blame for specified file
Throws:
ScmException - if any


Copyright © 2003-2012 The Apache Software Foundation. All Rights Reserved.