Package org.apache.maven.scm.provider
Class AbstractScmProvider
java.lang.Object
org.apache.maven.scm.provider.AbstractScmProvider
- All Implemented Interfaces:
ScmProvider
- Direct Known Subclasses:
AbstractGitScmProvider
,AbstractSvnScmProvider
,HgScmProvider
,LocalScmProvider
- Author:
- Trygve Laugstøl, Emmanuel Venisse, Olivier Lamy
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionadd
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) TODO: why public? This should be protected, no?add
(ScmRepository repository, ScmFileSet fileSet) Adds the given files to the source control systemadd
(ScmRepository repository, ScmFileSet fileSet, String message) Adds the given files to the source control systemadd
(ScmRepository repository, ScmFileSet fileSet, CommandParameters parameters) Adds the given files to the source control systemblame
(BlameScmRequest blameScmRequest) protected BlameScmResult
blame
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) blame
(ScmRepository repository, ScmFileSet fileSet, String filename) Returns the blame of specified fileprotected BranchScmResult
branch
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) 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 namebranch
(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 namebranch
(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 nameprotected ChangeLogScmResult
changelog
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) changeLog
(ChangeLogScmRequest request) Returns the changes that have happened in the source control system in a certain period of time.changeLog
(ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag) Deprecated.changeLog
(ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag, String datePattern) Deprecated.changeLog
(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, String branch) Deprecated.changeLog
(ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, int numDays, String branch, String datePattern) Deprecated.changeLog
(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.changeLog
(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.changeLog
(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion) Returns the changes that have happened in the source control system between two tags.changeLog
(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 CheckInScmResult
checkin
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) checkIn
(ScmRepository repository, ScmFileSet fileSet, String message) Save the changes you have done into the repository.checkIn
(ScmRepository repository, ScmFileSet fileSet, String tag, String message) Deprecated.checkIn
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, String message) Save the changes you have done into the repository.protected CheckOutScmResult
checkout
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) checkOut
(ScmRepository repository, ScmFileSet fileSet) Create a copy of the repository on your local machinecheckOut
(ScmRepository repository, ScmFileSet fileSet, boolean recursive) Create a copy of the repository on your local machine.checkOut
(ScmRepository repository, ScmFileSet fileSet, String tag) Deprecated.checkOut
(ScmRepository repository, ScmFileSet fileSet, String tag, boolean recursive) Deprecated.checkOut
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion) Create a copy of the repository on your local machinecheckOut
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, boolean recursive) Create a copy of the repository on your local machine.checkOut
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, CommandParameters commandParameters) Create a copy of the repository on your local machine.protected DiffScmResult
diff
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) diff
(ScmRepository repository, ScmFileSet fileSet, String startRevision, String endRevision) Deprecated.diff
(ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion, ScmVersion endVersion) Create a diff between two branch/tag/revision.protected EditScmResult
edit
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) edit
(ScmRepository repository, ScmFileSet fileSet) Make a file editable.protected ExportScmResult
export
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) export
(ScmRepository repository, ScmFileSet fileSet) Create an exported copy of the repository on your local machineexport
(ScmRepository repository, ScmFileSet fileSet, String tag) Deprecated.export
(ScmRepository repository, ScmFileSet fileSet, String tag, String outputDirectory) Deprecated.export
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion) Create an exported copy of the repository on your local machineexport
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, String outputDirectory) Create an exported copy of the repository on your local machineReturns the scm reserved file name where the SCM stores information like '.git', '.svn'.info
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) protected ListScmResult
list
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) List each element (files and directories) of fileSet as they exist in the repository.list
(ScmRepository repository, ScmFileSet fileSet, boolean recursive, String tag) List each element (files and directories) of fileSet as they exist in the repository.list
(ScmRepository repository, ScmFileSet fileSet, boolean recursive, ScmVersion scmVersion) List each element (files and directories) of fileSet as they exist in the repository.protected LoginScmResult
login
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) protected MkdirScmResult
mkdir
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) Create directory/directories in the repository.mkdir
(ScmRepository repository, ScmFileSet fileSet, String message, boolean createInLocal) Create directory/directories in the repository.remoteInfo
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) protected RemoveScmResult
remove
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) remove
(ScmRepository repository, ScmFileSet fileSet, String message) Removes the given files from the source control systemboolean
sanitizeTagName
(String tag) Given a tag name, make it suitable for this SCM provider.protected StatusScmResult
status
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) status
(ScmRepository repository, ScmFileSet fileSet) Returns the status of the files in the source control system.protected TagScmResult
tag
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) tag
(ScmRepository repository, ScmFileSet fileSet, String tagName) Tag (or label in some systems) will tag the source file with a certain tagtag
(ScmRepository repository, ScmFileSet fileSet, String tagName, String message) Tag (or label in some systems) will tag the source file with a certain tagtag
(ScmRepository repository, ScmFileSet fileSet, String tagName, ScmTagParameters scmTagParameters) Tag (or label in some systems) will tag the source file with a certain tagprotected UnEditScmResult
unedit
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) unedit
(ScmRepository repository, ScmFileSet fileSet) Make a file no longer editable.untag
(ScmRepository repository, ScmFileSet fileSet, CommandParameters parameters) Deletes a tag.protected UpdateScmResult
update
(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) update
(ScmRepository repository, ScmFileSet fileSet) Updates the copy on the local machine with the changes in the repositoryupdate
(ScmRepository repository, ScmFileSet fileSet, boolean runChangelog) Updates the copy on the local machine with the changes in the repositoryupdate
(ScmRepository repository, ScmFileSet fileSet, String tag) Deprecated.update
(ScmRepository repository, ScmFileSet fileSet, String tag, boolean runChangelog) Deprecated.update
(ScmRepository repository, ScmFileSet fileSet, String tag, String datePattern) Deprecated.update
(ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate) Deprecated.update
(ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate, String datePattern) Deprecated.update
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion) Updates the copy on the local machine with the changes in the repositoryupdate
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, boolean runChangelog) Updates the copy on the local machine with the changes in the repositoryupdate
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, String datePattern) Updates the copy on the local machine with the changes in the repositoryupdate
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, Date lastUpdate) Updates the copy on the local machine with the changes in the repositoryupdate
(ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, Date lastUpdate, String datePattern) Updates the copy on the local machine with the changes in the repositoryvalidateScmUrl
(String scmSpecificUrl, char delimiter) Validate the scm url.boolean
validateTagName
(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 Details
-
logger
-
-
Constructor Details
-
AbstractScmProvider
public AbstractScmProvider()
-
-
Method Details
-
getScmSpecificFilename
Returns the scm reserved file name where the SCM stores information like '.git', '.svn'.- Specified by:
getScmSpecificFilename
in interfaceScmProvider
- Returns:
- the scm reserved file name
-
sanitizeTagName
Given a tag name, make it suitable for this SCM provider.- Specified by:
sanitizeTagName
in interfaceScmProvider
- Parameters:
tag
- input tag name- Returns:
- sanitized tag name
-
validateTagName
Check if this tag is valid for this SCM provider.- Specified by:
validateTagName
in interfaceScmProvider
- Parameters:
tag
- tag name to check- Returns:
- true if tag is valid
-
validateScmUrl
Validate the scm url.- Specified by:
validateScmUrl
in interfaceScmProvider
- Parameters:
scmSpecificUrl
- The SCM urldelimiter
- The delimiter used in the SCM url- Returns:
- Returns a list of messages if the validation failed
-
requiresEditMode
- Specified by:
requiresEditMode
in interfaceScmProvider
-
add
Adds the given files to the source control system- Specified by:
add
in interfaceScmProvider
- Parameters:
repository
- the source control systemfileSet
- the files to be added- Returns:
- an
AddScmResult
that 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:
add
in 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
AddScmResult
that 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:ScmProvider
Adds the given files to the source control system- Specified by:
add
in interfaceScmProvider
- Parameters:
repository
- the source control systemfileSet
- the files to be addedparameters
-CommandParameters
- Returns:
- an
AddScmResult
that 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:
branch
in 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:
branch
in 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:ScmProvider
Branch (or label in some systems) will create a branch of the source file with a certain branch name- Specified by:
branch
in 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:
changeLog
in 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:
changeLog
in 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:
changeLog
in 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:
changeLog
in 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
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:
changeLog
in 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:
changeLog
in 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:
changeLog
in 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:
changeLog
in 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:
changeLog
in 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:
checkIn
in 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:
checkIn
in 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:
checkIn
in 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
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:
checkOut
in 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:
checkOut
in 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
Create a copy of the repository on your local machine- Specified by:
checkOut
in 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:
checkOut
in 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:
checkOut
in 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:
checkOut
in 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:ScmProvider
Create a copy of the repository on your local machine.- Specified by:
checkOut
in 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:
diff
in 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:
diff
in 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
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 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:
export
in 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:
export
in 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
Create an exported copy of the repository on your local machine- Specified by:
export
in 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:
export
in 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:
export
in 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:
list
in 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:
list
in 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:
mkdir
in 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:
remove
in 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
Returns the status of the files in the source control system. The state of each file can be one of theScmFileStatus
flags.- Specified by:
status
in 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:
tag
in 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:
tag
in 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:
tag
in 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
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:
unedit
in 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:
untag
in 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:
update
in 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:
update
in 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
Updates the copy on the local machine with the changes in the repository- Specified by:
update
in 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:
update
in 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:
update
in 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:
update
in 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:
update
in 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:
update
in 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:
update
in 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:
update
in 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:
update
in 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:
update
in 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:
blame
in 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
- Specified by:
blame
in 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:
info
in 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:
remoteInfo
in 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 - Specified by:
makeProviderScmRepository
in interfaceScmProvider
- Throws:
ScmRepositoryException
UnknownRepositoryStructure
-