public abstract class AbstractScmManager extends Object implements ScmManager
ROLE| Constructor and Description |
|---|
AbstractScmManager() |
| Modifier and Type | Method and Description |
|---|---|
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.
|
public AbstractScmManager()
protected void setScmProviders(Map<String,ScmProvider> providers)
protected void addScmProvider(String providerType, ScmProvider provider)
setScmProvider(String, ScmProvider) insteadproviderType - the type of SCM, eg. svn, gitprovider - the provider that will be used for that SCM typepublic void setScmProvider(String providerType, ScmProvider provider)
setScmProvider in interface ScmManagerproviderType - the type of SCM, eg. svn, cvsprovider - the provider that will be used for that SCM typeprotected abstract ScmLogger getScmLogger()
public ScmProvider getProviderByUrl(String scmUrl) throws ScmRepositoryException, NoSuchScmProviderException
getProviderByUrl in interface ScmManagerScmRepositoryExceptionNoSuchScmProviderExceptionpublic void setScmProviderImplementation(String providerType, String providerImplementation)
setScmProviderImplementation in interface ScmManagerproviderType - The provider type, eg. cvsproviderImplementation - The provider implementation (the role-hint of the provider), eg. cvs,
cvs_nativepublic ScmProvider getProviderByType(String providerType) throws NoSuchScmProviderException
getProviderByType in interface ScmManagerproviderType - The provider type (cvs, svn...)NoSuchScmProviderException - if the provider doesn't existpublic ScmProvider getProviderByRepository(ScmRepository repository) throws NoSuchScmProviderException
getProviderByRepository in interface ScmManagerNoSuchScmProviderExceptionpublic ScmRepository makeScmRepository(String scmUrl) throws ScmRepositoryException, NoSuchScmProviderException
makeScmRepository in interface ScmManagerscmUrl - the scm urlScmRepositoryException - if an error occurs in the scm repository constructionNoSuchScmProviderException - if the provider doesn't existprotected String cleanScmUrl(String scmUrl)
scmUrl - the SCM urlpublic ScmRepository makeProviderScmRepository(String providerType, File path) throws ScmRepositoryException, UnknownRepositoryStructure, NoSuchScmProviderException
makeProviderScmRepository in interface ScmManagerScmRepositoryExceptionUnknownRepositoryStructureNoSuchScmProviderExceptionpublic List<String> validateScmRepository(String scmUrl)
validateScmRepository in interface ScmManagerscmUrl - the SCM URL to validateList of String objects with the messages returned by the SCM providerpublic AddScmResult add(ScmRepository repository, ScmFileSet fileSet) throws ScmException
add in interface ScmManagerrepository - the source control systemfileSet - the files to be addedAddScmResult that contains the files that have been addedScmException - if anypublic AddScmResult add(ScmRepository repository, ScmFileSet fileSet, String message) throws ScmException
add in interface ScmManagerrepository - the source control systemfileSet - the files to be addedmessage - a string that is a comment on the new added fileAddScmResult that contains the files that have been addedScmException - if anypublic BranchScmResult branch(ScmRepository repository, ScmFileSet fileSet, String branchName) throws ScmException
branch in interface ScmManagerrepository - the source control systemfileSet - the files to branch. Implementations can also give the changes from the
ScmFileSet.getBasedir() downwards.branchName - the branch name to apply to the filesScmException - if anypublic BranchScmResult branch(ScmRepository repository, ScmFileSet fileSet, String branchName, String message) throws ScmException
branch in interface ScmManagerrepository - the source control systemfileSet - the files to branch. Implementations can also give the changes from the
ScmFileSet.getBasedir() downwards.branchName - the branch name to apply to the filesmessage - the commit message used for the tag creationScmException - if anypublic ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, ScmBranch branch) throws ScmException
changeLog in interface ScmManagerrepository - the source control systemfileSet - the files to know the changes about. Implementations can also give the changes from the
ScmFileSet.getBasedir() downwards.startDate - the start date of the periodendDate - the end date of the periodnumDays - the number days before the current time if startdate and enddate are nullbranch - the branch/tagScmException - if anypublic ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, ScmBranch branch, String datePattern) throws ScmException
changeLog in interface ScmManagerrepository - the source control systemfileSet - the files to know the changes about. Implementations can also give the changes from the
ScmFileSet.getBasedir() downwards.startDate - the start date of the periodendDate - the end date of the periodnumDays - the number days before the current time if startdate and enddate are nullbranch - the branch/tagdatePattern - the date pattern use in changelog output returned by scm toolScmException - if anypublic ChangeLogScmResult changeLog(ChangeLogScmRequest scmRequest) throws ScmException
changeLog in interface ScmManagerscmRequest - request wrapping detailed parameters for the changelog commandScmException - if anypublic ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion) throws ScmException
changeLog in interface ScmManagerrepository - the source control systemfileSet - the files to know the changes about. Implementations can also give the changes from the
ScmFileSet.getBasedir() downwards.startVersion - the start branch/tag/revisionendVersion - the end branch/tag/revisionScmException - if anypublic ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, ScmVersion startRevision, ScmVersion endRevision, String datePattern) throws ScmException
changeLog in interface ScmManagerrepository - the source control systemfileSet - the files to know the changes about. Implementations can also give the changes from the
ScmFileSet.getBasedir() downwards.startRevision - the start revisionendRevision - the end revisiondatePattern - the date pattern use in changelog output returned by scm toolScmException - if anypublic CheckInScmResult checkIn(ScmRepository repository, ScmFileSet fileSet, String message) throws ScmException
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.
checkIn in interface ScmManagerrepository - the source control systemfileSet - the files to check in (sometimes called commit)message - a string that is a comment on the changes that where doneScmException - if anypublic CheckInScmResult checkIn(ScmRepository repository, ScmFileSet fileSet, ScmVersion revision, String message) throws ScmException
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.
checkIn in interface ScmManagerrepository - the source control systemfileSet - the files to check in (sometimes called commit)revision - branch/tag/revisionmessage - a string that is a comment on the changes that where doneScmException - if anypublic CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet) throws ScmException
checkOut in interface ScmManagerrepository - the source control systemfileSet - the files are copied to the ScmFileSet.getBasedir() locationScmException - if anypublic CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion version) throws ScmException
checkOut in interface ScmManagerrepository - the source control systemfileSet - the files are copied to the ScmFileSet.getBasedir() locationversion - get the version defined by the revision, branch or tagScmException - if anypublic CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, boolean recursive) throws ScmException
checkOut in interface ScmManagerrepository - the source control systemfileSet - the files are copied to the ScmFileSet.getBasedir() locationrecursive - whether to check out recursivelyScmException - if anypublic CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, boolean recursive) throws ScmException
checkOut in interface ScmManagerrepository - the source control systemfileSet - the files are copied to the ScmFileSet.getBasedir() locationversion - get the version defined by the revision, branch or tagrecursive - whether to check out recursivelyScmException - if anypublic DiffScmResult diff(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion) throws ScmException
diff in interface ScmManagerrepository - the source control systemfileSet - the files are copied to the ScmFileSet.getBasedir() locationstartVersion - the start branch/tag/revisionendVersion - the end branch/tag/revisionScmException - if anypublic EditScmResult edit(ScmRepository repository, ScmFileSet fileSet) throws ScmException
edit in interface ScmManagerrepository - the source control systemfileSet - the files to make editableScmException - if anypublic ExportScmResult export(ScmRepository repository, ScmFileSet fileSet) throws ScmException
export in interface ScmManagerrepository - the source control systemfileSet - the files are copied to the ScmFileSet.getBasedir() locationScmException - if anypublic ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, ScmVersion version) throws ScmException
export in interface ScmManagerrepository - the source control systemfileSet - the files are copied to the ScmFileSet.getBasedir() locationversion - get the version defined by the branch/tag/revisionScmException - if anypublic ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, String outputDirectory) throws ScmException
export in interface ScmManagerrepository - the source control systemfileSet - the files are copied to the ScmFileSet.getBasedir() locationoutputDirectory - the directory where the export will be storedScmException - if anypublic ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, String outputDirectory) throws ScmException
export in interface ScmManagerrepository - the source control systemfileSet - the files are copied to the ScmFileSet.getBasedir() locationversion - get the version defined by the branch/tag/revisionoutputDirectory - the directory where the export will be storedScmException - if anypublic ListScmResult list(ScmRepository repository, ScmFileSet fileSet, boolean recursive, ScmVersion version) throws ScmException
list in interface ScmManagerrepository - the source control systemfileSet - the files to listrecursive - descend recursivelyversion - use the version defined by the branch/tag/revisionScmException - if anypublic MkdirScmResult mkdir(ScmRepository repository, ScmFileSet fileSet, String message, boolean createInLocal) throws ScmException
mkdir in interface ScmManagerrepository - TODOfileSet - TODOmessage - TODOcreateInLocal - TODOScmException - if anypublic RemoveScmResult remove(ScmRepository repository, ScmFileSet fileSet, String message) throws ScmException
remove in interface ScmManagerrepository - the source control systemfileSet - the files to be removedmessage - TODOScmException - if anypublic StatusScmResult status(ScmRepository repository, ScmFileSet fileSet) throws ScmException
ScmFileStatus flags.status in interface ScmManagerrepository - the source control systemfileSet - the files to know the status about. Implementations can also give the changes from the
ScmFileSet.getBasedir() downwards.ScmException - if anypublic TagScmResult tag(ScmRepository repository, ScmFileSet fileSet, String tagName) throws ScmException
tag in interface ScmManagerrepository - the source control systemfileSet - the files to tag. Implementations can also give the changes from the
ScmFileSet.getBasedir() downwards.tagName - the tag name to apply to the filesScmException - if anypublic TagScmResult tag(ScmRepository repository, ScmFileSet fileSet, String tagName, String message) throws ScmException
tag in interface ScmManagerrepository - the source control systemfileSet - the files to tag. Implementations can also give the changes from the
ScmFileSet.getBasedir() downwards.tagName - the tag name to apply to the filesmessage - the commit message used for the tag creationScmException - if anypublic UnEditScmResult unedit(ScmRepository repository, ScmFileSet fileSet) throws ScmException
ScmManager.edit(org.apache.maven.scm.repository.ScmRepository, org.apache.maven.scm.ScmFileSet). It makes the file
read-only again.unedit in interface ScmManagerrepository - the source control systemfileSet - the files to make uneditableScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copyScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copyversion - use the version defined by the branch/tag/revisionScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, boolean runChangelog) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copyrunChangelog - Run the changelog command after the updateScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, boolean runChangelog) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copyversion - use the version defined by the branch/tag/revisionrunChangelog - Run the changelog command after the updateScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, String datePattern) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copydatePattern - the date pattern use in changelog output returned by scm toolScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, String datePattern) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copyversion - use the version defined by the branch/tag/revisiondatePattern - the date pattern use in changelog output returned by scm toolScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, Date lastUpdate) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copylastUpdate - TODOScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, Date lastUpdate) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copyversion - use the version defined by the branch/tag/revisionlastUpdate - TODOScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, Date lastUpdate, String datePattern) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copylastUpdate - Date of last updatedatePattern - the date pattern use in changelog output returned by scm toolScmException - if anypublic UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion version, Date lastUpdate, String datePattern) throws ScmException
update in interface ScmManagerrepository - the source control systemfileSet - location of your local copyversion - use the version defined by the branch/tag/revisionlastUpdate - Date of last updatedatePattern - the date pattern use in changelog output returned by scm toolScmException - if anypublic BlameScmResult blame(ScmRepository repository, ScmFileSet fileSet, String filename) throws ScmException
blame in interface ScmManagerrepository - the source control systemfileSet - location of your local copyfilename - fileScmException - if anypublic BlameScmResult blame(BlameScmRequest blameScmRequest) throws ScmException
blame in interface ScmManagerblameScmRequest - TODOScmException - if anyCopyright © 2003–2022 The Apache Software Foundation. All rights reserved.