Class AbstractScmProvider
- java.lang.Object
-
- org.apache.maven.scm.provider.AbstractScmProvider
-
- All Implemented Interfaces:
ScmProvider
- Direct Known Subclasses:
AbstractGitScmProvider,AbstractSvnScmProvider,HgScmProvider,LocalScmProvider
public abstract class AbstractScmProvider extends Object implements ScmProvider
- Author:
- Trygve Laugstøl, Emmanuel Venisse, Olivier Lamy
-
-
Field Summary
Fields Modifier and Type Field Description protected org.slf4j.Loggerlogger
-
Constructor Summary
Constructors Constructor Description AbstractScmProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description AddScmResultadd(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)TODO: why public? This should be protected, no?AddScmResultadd(ScmRepository repository, ScmFileSet fileSet)Adds the given files to the source control system.AddScmResultadd(ScmRepository repository, ScmFileSet fileSet, String message)Adds the given files to the source control system.AddScmResultadd(ScmRepository repository, ScmFileSet fileSet, CommandParameters parameters)Adds the given files to the source control system.BlameScmResultblame(BlameScmRequest blameScmRequest)protected BlameScmResultblame(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)BlameScmResultblame(ScmRepository repository, ScmFileSet fileSet, String filename)Returns the blame of specified file.protected BranchScmResultbranch(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)BranchScmResultbranch(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.BranchScmResultbranch(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.BranchScmResultbranch(ScmRepository repository, ScmFileSet fileSet, String branchName, ScmBranchParameters scmBranchParameters)Branch (or label in some systems) will create a branch of the source file with a certain branch name.protected ChangeLogScmResultchangelog(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)ChangeLogScmResultchangeLog(ChangeLogScmRequest request)Returns the changes that have happened in the source control system in a certain period of time.ChangeLogScmResultchangeLog(ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag)Deprecated.ChangeLogScmResultchangeLog(ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag, String datePattern)Deprecated.ChangeLogScmResultchangeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, String branch)Deprecated.ChangeLogScmResultchangeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, String branch, String datePattern)Deprecated.ChangeLogScmResultchangeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, ScmBranch branch)Returns the changes that have happened in the source control system in a certain period of time.ChangeLogScmResultchangeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, ScmBranch branch, String datePattern)Returns the changes that have happened in the source control system in a certain period of time.ChangeLogScmResultchangeLog(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion)Returns the changes that have happened in the source control system between two tags.ChangeLogScmResultchangeLog(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion, String datePattern)Returns the changes that have happened in the source control system between two tags.protected CheckInScmResultcheckin(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)CheckInScmResultcheckIn(ScmRepository repository, ScmFileSet fileSet, String message)Save the changes you have done into the repository.CheckInScmResultcheckIn(ScmRepository repository, ScmFileSet fileSet, String tag, String message)Deprecated.CheckInScmResultcheckIn(ScmRepository repository, ScmFileSet fileSet, CommandParameters parameters)Save the changes you have done into the repository.CheckInScmResultcheckIn(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, String message)Save the changes you have done into the repository.protected CheckOutScmResultcheckout(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)CheckOutScmResultcheckOut(ScmRepository repository, ScmFileSet fileSet)Create a copy of the repository on your local machine.CheckOutScmResultcheckOut(ScmRepository repository, ScmFileSet fileSet, boolean recursive)Create a copy of the repository on your local machine.CheckOutScmResultcheckOut(ScmRepository repository, ScmFileSet fileSet, String tag)Deprecated.CheckOutScmResultcheckOut(ScmRepository repository, ScmFileSet fileSet, String tag, boolean recursive)Deprecated.CheckOutScmResultcheckOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion)Create a copy of the repository on your local machine.CheckOutScmResultcheckOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, boolean recursive)Create a copy of the repository on your local machine.CheckOutScmResultcheckOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, CommandParameters commandParameters)Create a copy of the repository on your local machine.protected DiffScmResultdiff(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)DiffScmResultdiff(ScmRepository repository, ScmFileSet fileSet, String startRevision, String endRevision)Deprecated.DiffScmResultdiff(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion)Create a diff between two branch/tag/revision.protected EditScmResultedit(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)EditScmResultedit(ScmRepository repository, ScmFileSet fileSet)Make a file editable.protected ExportScmResultexport(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)ExportScmResultexport(ScmRepository repository, ScmFileSet fileSet)Create an exported copy of the repository on your local machine.ExportScmResultexport(ScmRepository repository, ScmFileSet fileSet, String tag)Deprecated.ExportScmResultexport(ScmRepository repository, ScmFileSet fileSet, String tag, String outputDirectory)Deprecated.ExportScmResultexport(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion)Create an exported copy of the repository on your local machine.ExportScmResultexport(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, String outputDirectory)Create an exported copy of the repository on your local machine.StringgetScmSpecificFilename()Returns the scm reserved file name where the SCM stores information like '.git', '.svn'.InfoScmResultinfo(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)protected ListScmResultlist(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)List each element (files and directories) of fileSet as they exist in the repository.ListScmResultlist(ScmRepository repository, ScmFileSet fileSet, boolean recursive, String tag)List each element (files and directories) of fileSet as they exist in the repository.ListScmResultlist(ScmRepository repository, ScmFileSet fileSet, boolean recursive, ScmVersion scmVersion)List each element (files and directories) of fileSet as they exist in the repository.protected LoginScmResultlogin(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)ScmProviderRepositorymakeProviderScmRepository(File path)Try to create aScmProviderRepositoryfor this provider from the given working directory (created through a previous checkout).protected MkdirScmResultmkdir(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)Create directory/directories in the repository.MkdirScmResultmkdir(ScmRepository repository, ScmFileSet fileSet, String message, boolean createInLocal)Create directory/directories in the repository.RemoteInfoScmResultremoteInfo(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)protected RemoveScmResultremove(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)RemoveScmResultremove(ScmRepository repository, ScmFileSet fileSet, String message)Removes the given files from the source control system.booleanrequiresEditMode()StringsanitizeTagName(String tag)Given a tag name, make it suitable for this SCM provider.protected StatusScmResultstatus(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)StatusScmResultstatus(ScmRepository repository, ScmFileSet fileSet)Returns the status of the files in the source control system.protected TagScmResulttag(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)TagScmResulttag(ScmRepository repository, ScmFileSet fileSet, String tagName)Tag (or label in some systems) will tag the source file with a certain tag.TagScmResulttag(ScmRepository repository, ScmFileSet fileSet, String tagName, String message)Tag (or label in some systems) will tag the source file with a certain tag.TagScmResulttag(ScmRepository repository, ScmFileSet fileSet, String tagName, ScmTagParameters scmTagParameters)Tag (or label in some systems) will tag the source file with a certain tag.protected UnEditScmResultunedit(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)UnEditScmResultunedit(ScmRepository repository, ScmFileSet fileSet)Make a file no longer editable.UntagScmResultuntag(ScmRepository repository, ScmFileSet fileSet, CommandParameters parameters)Deletes a tag.protected UpdateScmResultupdate(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters)UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet)Updates the copy on the local machine with the changes in the repository.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, boolean runChangelog)Updates the copy on the local machine with the changes in the repository.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, String tag)Deprecated.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, String tag, boolean runChangelog)Deprecated.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, String tag, String datePattern)Deprecated.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate)Deprecated.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate, String datePattern)Deprecated.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion)Updates the copy on the local machine with the changes in the repository.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, boolean runChangelog)Updates the copy on the local machine with the changes in the repository.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, String datePattern)Updates the copy on the local machine with the changes in the repository.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, Date lastUpdate)Updates the copy on the local machine with the changes in the repository.UpdateScmResultupdate(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, Date lastUpdate, String datePattern)Updates the copy on the local machine with the changes in the repository.List<String>validateScmUrl(String scmSpecificUrl, char delimiter)Validate the scm url.booleanvalidateTagName(String tag)Check if this tag is valid for this SCM provider.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.maven.scm.provider.ScmProvider
getScmType, makeProviderScmRepository, setInteractive
-
-
-
-
Field Detail
-
logger
protected final org.slf4j.Logger logger
-
-
Constructor Detail
-
AbstractScmProvider
public AbstractScmProvider()
-
-
Method Detail
-
getScmSpecificFilename
public String getScmSpecificFilename()
Returns the scm reserved file name where the SCM stores information like '.git', '.svn'.- Specified by:
getScmSpecificFilenamein interfaceScmProvider- Returns:
- the scm reserved file name
-
sanitizeTagName
public String sanitizeTagName(String tag)
Given a tag name, make it suitable for this SCM provider.- Specified by:
sanitizeTagNamein interfaceScmProvider- Parameters:
tag- input tag name- Returns:
- sanitized tag name
-
validateTagName
public boolean validateTagName(String tag)
Check if this tag is valid for this SCM provider.- Specified by:
validateTagNamein interfaceScmProvider- Parameters:
tag- tag name to check- Returns:
- true if tag is valid
-
validateScmUrl
public List<String> validateScmUrl(String scmSpecificUrl, char delimiter)
Validate the scm url.- Specified by:
validateScmUrlin interfaceScmProvider- Parameters:
scmSpecificUrl- the SCM urldelimiter- the delimiter used in the SCM url- Returns:
- returns a list of messages if the validation failed
-
requiresEditMode
public boolean requiresEditMode()
- Specified by:
requiresEditModein interfaceScmProvider
-
add
public AddScmResult add(ScmRepository repository, ScmFileSet fileSet) throws ScmException
Adds the given files to the source control system.- Specified by:
addin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to be added- Returns:
- an
AddScmResultthat contains the files that have been added - Throws:
ScmException- if any
-
add
public AddScmResult add(ScmRepository repository, ScmFileSet fileSet, String message) throws ScmException
Adds the given files to the source control system.- Specified by:
addin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to be addedmessage- a string that is a comment on the new added file- Returns:
- an
AddScmResultthat contains the files that have been added - Throws:
ScmException- if any
-
add
public AddScmResult add(ScmRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
Description copied from interface:ScmProviderAdds the given files to the source control system.- Specified by:
addin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to be addedparameters-CommandParameters- Returns:
- an
AddScmResultthat contains the files that have been added - Throws:
ScmException- if any
-
add
public AddScmResult add(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
TODO: why public? This should be protected, no?- Throws:
ScmException
-
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:
branchin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to branch. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.branchName- the branch name to apply to the files- Returns:
- TODO
- 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:
branchin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to branch. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.branchName- the branch name to apply to the filesmessage- the commit message used for the tag creation- Returns:
- TODO
- Throws:
ScmException- if any
-
branch
public BranchScmResult branch(ScmRepository repository, ScmFileSet fileSet, String branchName, ScmBranchParameters scmBranchParameters) throws ScmException
Description copied from interface:ScmProviderBranch (or label in some systems) will create a branch of the source file with a certain branch name.- Specified by:
branchin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to branch. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.branchName- the branch name to apply to the filesscmBranchParameters- TODO- Returns:
- TODO
- Throws:
ScmException- if any
-
branch
protected BranchScmResult branch(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
changeLog
@Deprecated public ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, String branch) throws ScmException
Deprecated.Returns the changes that have happened in the source control system in a certain period of time. This can be adding, removing, updating, ... of files.- Specified by:
changeLogin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to know the changes about. Implementations can also give the changes from theScmFileSet.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/tag name- Returns:
- the SCM result of the changelog command
- Throws:
ScmException- if any
-
changeLog
@Deprecated public ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, String branch, String datePattern) throws ScmException
Deprecated.Returns the changes that have happened in the source control system in a certain period of time. This can be adding, removing, updating, ... of files.- Specified by:
changeLogin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to know the changes about. Implementations can also give the changes from theScmFileSet.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/tag namedatePattern- 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(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, ScmBranch branch) throws ScmException
Returns the changes that have happened in the source control system in a certain period of time. This can be adding, removing, updating, ... of files.- Specified by:
changeLogin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to know the changes about. Implementations can also give the changes from theScmFileSet.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/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 happened in the source control system in a certain period of time. This can be adding, removing, updating, ... of files.- Specified by:
changeLogin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to know the changes about. Implementations can also give the changes from theScmFileSet.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 tool- Returns:
- the SCM result of the changelog command
- Throws:
ScmException- if any
-
changeLog
public ChangeLogScmResult changeLog(ChangeLogScmRequest request) throws ScmException
Returns the changes that have happened in the source control system in a certain period of time. This can be adding, removing, updating, ... of files.- Specified by:
changeLogin interfaceScmProvider- Parameters:
request- request wrapping detailed parameters for the changelog command- Returns:
- the SCM result of the changelog command
- Throws:
ScmException- if any
-
changeLog
@Deprecated public ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag) throws ScmException
Deprecated.Returns the changes that have happened in the source control system between two tags. This can be adding, removing, updating, ... of files.- Specified by:
changeLogin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to know the changes about. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.startTag- the start tagendTag- the end tag- Returns:
- the SCM result of the changelog command
- Throws:
ScmException- if any
-
changeLog
@Deprecated public ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag, String datePattern) throws ScmException
Deprecated.Returns the changes that have happened in the source control system between two tags. This can be adding, removing, updating, ... of files.- Specified by:
changeLogin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to know the changes about. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.startTag- the start tagendTag- the end tagdatePattern- the date pattern use in changelog output returned by scm tool- Returns:
- TODO
- Throws:
ScmException- if any
-
changeLog
public ChangeLogScmResult changeLog(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion) throws ScmException
Returns the changes that have happened in the source control system between two tags. This can be adding, removing, updating, ... of files.- Specified by:
changeLogin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to know the changes about. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.startVersion- the start branch/tag/revisionendVersion- 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 startVersion, ScmVersion endVersion, String datePattern) throws ScmException
Returns the changes that have happened in the source control system between two tags. This can be adding, removing, updating, ... of files.- Specified by:
changeLogin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to know the changes about. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.startVersion- the start revisionendVersion- the end revisiondatePattern- the date pattern use in changelog output returned by scm tool- Returns:
- TODO
- Throws:
ScmException- if any
-
changelog
protected ChangeLogScmResult changelog(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
checkIn
@Deprecated public CheckInScmResult checkIn(ScmRepository repository, ScmFileSet fileSet, String tag, String message) throws ScmException
Deprecated.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:
checkInin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to check in (sometimes called commit)tag- tag or revisionmessage- a string that is a comment on the changes that where done- Returns:
- TODO
- 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:
checkInin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to check in (sometimes called commit)message- a string that is a comment on the changes that where done- Returns:
- TODO
- Throws:
ScmException- if any
-
checkIn
public CheckInScmResult checkIn(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, 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:
checkInin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to check in (sometimes called commit)scmVersion- branch/tag/revisionmessage- a string that is a comment on the changes that where done- Returns:
- TODO
- Throws:
ScmException- if any
-
checkIn
public CheckInScmResult checkIn(ScmRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
Description copied from interface:ScmProviderSave 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:
checkInin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to check in (sometimes called commit)parameters-CommandParameters- Returns:
- TODO
- Throws:
ScmException- if any
-
checkin
protected CheckInScmResult checkin(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
checkOut
@Deprecated public CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, String tag) throws ScmException
Deprecated.Create a copy of the repository on your local machine.- Specified by:
checkOutin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationtag- get the version defined by the tag- Returns:
- TODO
- Throws:
ScmException- if any
-
checkOut
@Deprecated public CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, String tag, boolean recursive) throws ScmException
Deprecated.Create a copy of the repository on your local machine.- Specified by:
checkOutin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationtag- tag or revisionrecursive- whether to check out recursively- Returns:
- TODO
- 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:
checkOutin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()location- Returns:
- TODO
- Throws:
ScmException- if any
-
checkOut
public CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion) throws ScmException
Create a copy of the repository on your local machine.- Specified by:
checkOutin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationscmVersion- get the version defined by the revision, branch or tag- Returns:
- TODO
- 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:
checkOutin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationrecursive- whether to check out recursively- Returns:
- TODO
- Throws:
ScmException- if any
-
checkOut
public CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, boolean recursive) throws ScmException
Create a copy of the repository on your local machine.- Specified by:
checkOutin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationscmVersion- get the version defined by the revision, branch or tagrecursive- whether to check out recursively- Returns:
- TODO
- Throws:
ScmException- if any
-
checkOut
public CheckOutScmResult checkOut(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, CommandParameters commandParameters) throws ScmException
Description copied from interface:ScmProviderCreate a copy of the repository on your local machine.- Specified by:
checkOutin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationscmVersion- get the version defined by the revision, branch or tagcommandParameters- parameters- Returns:
- TODO
- Throws:
ScmException- if any
-
checkout
protected CheckOutScmResult checkout(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
diff
@Deprecated public DiffScmResult diff(ScmRepository repository, ScmFileSet fileSet, String startRevision, String endRevision) throws ScmException
Deprecated.Create a diff between two branch/tag/revision.- Specified by:
diffin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationstartRevision- the start revisionendRevision- the end revision- Returns:
- TODO
- 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:
diffin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationstartVersion- the start branch/tag/revisionendVersion- the end branch/tag/revision- Returns:
- TODO
- Throws:
ScmException- if any
-
diff
protected DiffScmResult diff(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
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 writable before you can edit them. This can also mean that no other user in the system can make the file writable.- Specified by:
editin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to make editable- Returns:
- TODO
- Throws:
ScmException- if any
-
edit
protected EditScmResult edit(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
export
@Deprecated public ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, String tag) throws ScmException
Deprecated.Create an exported copy of the repository on your local machine.- Specified by:
exportin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationtag- get the version defined by the tag- Returns:
- TODO
- Throws:
ScmException- if any
-
export
@Deprecated public ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, String tag, String outputDirectory) throws ScmException
Deprecated.Create an exported copy of the repository on your local machine.- Specified by:
exportin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationtag- get the version defined by the tagoutputDirectory- the directory where the export will be stored- Returns:
- TODO
- 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:
exportin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()location- Returns:
- TODO
- Throws:
ScmException- if any
-
export
public ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion) throws ScmException
Create an exported copy of the repository on your local machine.- Specified by:
exportin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationscmVersion- get the version defined by the branch/tag/revision- Returns:
- TODO
- Throws:
ScmException- if any
-
export
public ExportScmResult export(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, String outputDirectory) throws ScmException
Create an exported copy of the repository on your local machine.- Specified by:
exportin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files are copied to theScmFileSet.getBasedir()locationscmVersion- get the version defined by the branch/tag/revisionoutputDirectory- the directory where the export will be stored- Returns:
- TODO
- Throws:
ScmException- if any
-
export
protected ExportScmResult export(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
list
public ListScmResult list(ScmRepository repository, ScmFileSet fileSet, boolean recursive, String tag) throws ScmException
List each element (files and directories) of fileSet as they exist in the repository.- Specified by:
listin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to listrecursive- descend recursivelytag- use the version defined by the tag- Returns:
- the list of files in the repository
- Throws:
ScmException- if any
-
list
public ListScmResult list(ScmRepository repository, ScmFileSet fileSet, boolean recursive, ScmVersion scmVersion) throws ScmException
List each element (files and directories) of fileSet as they exist in the repository.- Specified by:
listin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to listrecursive- descend recursivelyscmVersion- use the version defined by the branch/tag/revision- Returns:
- the list of files in the repository
- Throws:
ScmException- if any
-
list
protected ListScmResult list(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
List each element (files and directories) of fileSet as they exist in the repository.- Parameters:
repository- the source control systemfileSet- the files to listparameters- TODO- Returns:
- the list of files in the repository
- Throws:
NoSuchCommandScmException- unless overriden by subclassScmException- if any
-
mkdir
public MkdirScmResult mkdir(ScmRepository repository, ScmFileSet fileSet, String message, boolean createInLocal) throws ScmException
Create directory/directories in the repository.- Specified by:
mkdirin interfaceScmProvider- Parameters:
repository- TODOfileSet- TODOmessage- TODOcreateInLocal- TODO- Returns:
- TODO
- Throws:
ScmException- if any
-
mkdir
protected MkdirScmResult mkdir(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
Create directory/directories in the repository.- Parameters:
repository- TODOfileSet- TODOparameters- TODO- Returns:
- TODO
- Throws:
ScmException- if any
-
login
protected LoginScmResult login(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- 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:
removein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to be removedmessage- TODO- Returns:
- TODO
- Throws:
ScmException- if any
-
remove
protected RemoveScmResult remove(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
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 theScmFileStatusflags.- Specified by:
statusin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to know the status about. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.- Returns:
- TODO
- Throws:
ScmException- if any
-
status
protected StatusScmResult status(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
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:
tagin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to tag. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.tagName- the tag name to apply to the files- Returns:
- TODO
- 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:
tagin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to tag. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.tagName- the tag name to apply to the filesmessage- the commit message used for the tag creation- Returns:
- TODO
- Throws:
ScmException- if any
-
tag
public TagScmResult tag(ScmRepository repository, ScmFileSet fileSet, String tagName, ScmTagParameters scmTagParameters) throws ScmException
Tag (or label in some systems) will tag the source file with a certain tag.- Specified by:
tagin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to tag. Implementations can also give the changes from theScmFileSet.getBasedir()downwards.tagName- the tag name to apply to the filesscmTagParameters- bean to pass some paramters for taggingScmTagParameters- Returns:
- TODO
- Throws:
ScmException- if any
-
tag
protected TagScmResult tag(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
unedit
public UnEditScmResult unedit(ScmRepository repository, ScmFileSet fileSet) throws ScmException
Make a file no longer editable. This is the conterpart ofScmProvider.edit( org.apache.maven.scm.repository.ScmRepository, org.apache.maven.scm.ScmFileSet). It makes the file read-only again.- Specified by:
uneditin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- the files to make uneditable- Returns:
- TODO
- Throws:
ScmException- if any
-
unedit
protected UnEditScmResult unedit(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
untag
public UntagScmResult untag(ScmRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
Deletes a tag.- Specified by:
untagin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- a fileset with the relevant working directory as basedirparameters- TODO- Returns:
- TODO
- Throws:
ScmException- if any
-
update
@Deprecated public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, String tag) throws ScmException
Deprecated.Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copytag- use the version defined by the tag- Returns:
- TODO
- Throws:
ScmException- if any
-
update
@Deprecated public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, String tag, boolean runChangelog) throws ScmException
Deprecated.Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copytag- use the version defined by the tagrunChangelog- run the changelog command after the update- Returns:
- TODO
- 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:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copy- Returns:
- TODO
- Throws:
ScmException- if any
-
update
public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion) throws ScmException
Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copyscmVersion- use the version defined by the branch/tag/revision- Returns:
- TODO
- 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:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copyrunChangelog- run the changelog command after the update- Returns:
- TODO
- Throws:
ScmException- if any
-
update
public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, boolean runChangelog) throws ScmException
Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copyscmVersion- use the version defined by the branch/tag/revisionrunChangelog- run the changelog command after the update- Returns:
- TODO
- Throws:
ScmException- if any
-
update
public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, String tag, String datePattern) throws ScmException
Deprecated.Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copytag- use the version defined by the tagdatePattern- the date pattern use in changelog output returned by scm tool- Returns:
- TODO
- Throws:
ScmException- if any
-
update
public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, String datePattern) throws ScmException
Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copyscmVersion- use the version defined by the branch/tag/revisiondatePattern- the date pattern use in changelog output returned by scm tool- Returns:
- TODO
- Throws:
ScmException- if any
-
update
@Deprecated public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate) throws ScmException
Deprecated.Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copytag- use the version defined by the taglastUpdate- TODO- Returns:
- TODO
- Throws:
ScmException- if any
-
update
public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, Date lastUpdate) throws ScmException
Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copyscmVersion- use the version defined by the branch/tag/revisionlastUpdate- TODO- Returns:
- TODO
- Throws:
ScmException- if any
-
update
@Deprecated public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate, String datePattern) throws ScmException
Deprecated.Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copytag- use the version defined by the taglastUpdate- date of last updatedatePattern- the date pattern use in changelog output returned by scm tool- Returns:
- TODO
- Throws:
ScmException- if any
-
update
public UpdateScmResult update(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, Date lastUpdate, String datePattern) throws ScmException
Updates the copy on the local machine with the changes in the repository.- Specified by:
updatein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copyscmVersion- use the version defined by the branch/tag/revisionlastUpdate- date of last updatedatePattern- the date pattern use in changelog output returned by scm tool- Returns:
- TODO
- Throws:
ScmException- if any
-
update
protected UpdateScmResult update(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
blame
public BlameScmResult blame(ScmRepository repository, ScmFileSet fileSet, String filename) throws ScmException
Returns the blame of specified file.- Specified by:
blamein interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copyfilename- file- Returns:
- blame for specified file
- Throws:
ScmException- if any
-
blame
protected BlameScmResult blame(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Throws:
ScmException
-
blame
public BlameScmResult blame(BlameScmRequest blameScmRequest) throws ScmException
- Specified by:
blamein interfaceScmProvider- Parameters:
blameScmRequest- TODO- Returns:
- blame for the file specified in the request
- Throws:
ScmException- if any
-
info
public InfoScmResult info(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Specified by:
infoin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- location of your local copyparameters- some parameters (not use currently but for future use)- Returns:
- if the scm implementation doesn't support "info" result will
null - Throws:
ScmException- if any
-
remoteInfo
public RemoteInfoScmResult remoteInfo(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
- Specified by:
remoteInfoin interfaceScmProvider- Parameters:
repository- the source control systemfileSet- not use currently but for future useparameters- some parameters (not use currently but for future use)- Returns:
- if the scm implementation doesn't support "info" result will
null - Throws:
ScmException- if any
-
makeProviderScmRepository
public ScmProviderRepository makeProviderScmRepository(File path) throws ScmRepositoryException, UnknownRepositoryStructure
Try to create aScmProviderRepositoryfor this provider from the given working directory (created through a previous checkout). This is only successful if the working directory is recognized by this SCM provider.- Specified by:
makeProviderScmRepositoryin interfaceScmProvider- Parameters:
path- the checkout(working) directory- Returns:
- the repository bound to this provider
- Throws:
ScmRepositoryException- in case the given directory does not contain a valid working directory recognized by this providerUnknownRepositoryStructure- in case the provider does not support this way of initializing an ScmProviderRepository
-
-