|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjetbrains.buildServer.vcs.VcsSupport
public abstract class VcsSupport
This class should be implemented in order to support any version control system in TeamCity server. Each particular implementation can implement any of interfaces:
AgentSideCheckoutAbility marker indicates that the support allows to check sources out on agent.
VcsPersonalSupport produces possibility to match full version control file path into relative one.
RootMerger allows to merge several vcs roots into one if it is possible.
| Constructor Summary | |
|---|---|
VcsSupport()
|
|
| Method Summary | |
|---|---|
abstract void |
buildPatch(jetbrains.buildServer.vcs.VcsRoot root,
java.lang.String fromVersion,
java.lang.String toVersion,
PatchBuilder builder,
jetbrains.buildServer.vcs.CheckoutRules checkoutRules)
Called to retreive detailed info on modification between two given revisions. |
abstract java.util.List<jetbrains.buildServer.vcs.ModificationData> |
collectBuildChanges(jetbrains.buildServer.vcs.VcsRoot root,
java.lang.String fromVersion,
java.lang.String currentVersion,
jetbrains.buildServer.vcs.CheckoutRules checkoutRules)
Returns list of the changes between two revisions given. |
abstract java.lang.String |
describeVcsRoot(jetbrains.buildServer.vcs.VcsRoot vcsRoot)
Returns presentable text describing specified vcs root, for example: svn: http://www.somehost.com/project/ |
abstract byte[] |
getContent(java.lang.String filePath,
jetbrains.buildServer.vcs.VcsRoot versionedRoot,
java.lang.String version)
Get binary content of the single file in modification set. |
abstract byte[] |
getContent(VcsModification vcsModification,
jetbrains.buildServer.vcs.VcsChangeInfo change,
jetbrains.buildServer.vcs.VcsChangeInfo.ContentType contentType,
jetbrains.buildServer.vcs.VcsRoot vcsRoot)
Get binary content of the single file in modification set. |
abstract java.lang.String |
getCurrentVersion(jetbrains.buildServer.vcs.VcsRoot root)
Returns version mark version control is currenly in (like last committed change list number for Perforce, or current date for CVS). |
abstract java.util.Map<java.lang.String,java.lang.String> |
getDefaultVcsProperties()
Returns default VCS property values. |
abstract java.lang.String |
getDisplayName()
Returns name to be shown in the UI. |
LabelingSupport |
getLabelingSupport()
Return LabelingSupport implementation to enabel vcs labeling |
abstract java.lang.String |
getName()
Unquie VCS identifier among other installed plugins. |
VcsPersonalSupport |
getPersonalSupport()
Return VcsPersonalSupport implementation if vcs has to provide remote run functionality |
abstract PropertiesProcessor |
getVcsPropertiesProcessor()
Validator for the version control settings as displayed on configuration page for the VCS root. |
abstract java.lang.String |
getVcsSettingsJspFilePath()
Version control settings editor page. |
abstract java.util.Comparator<java.lang.String> |
getVersionComparator()
Returns comparator which allows to sort modifications by their version. |
abstract java.lang.String |
getVersionDisplayName(java.lang.String version,
jetbrains.buildServer.vcs.VcsRoot root)
Returns readable presentation of version (this format should be the same as DisplayVersion of VcsModification) |
boolean |
ignoreServerCachesFor(jetbrains.buildServer.vcs.VcsRoot root)
Return true to disable caching of patches built with fromVersion = null for specified VCS root. |
abstract boolean |
isTestConnectionSupported()
Returns true if test connection is supported |
boolean |
sourcesUpdatePossibleIfChangesNotFound(jetbrains.buildServer.vcs.VcsRoot root)
Must return true if source files in the build checkout directory can be updated even if no changes were detected between some versions. |
abstract java.lang.String |
testConnection(jetbrains.buildServer.vcs.VcsRoot vcsRoot)
Called to test connection to the given VCS root. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public VcsSupport()
| Method Detail |
|---|
public abstract java.util.List<jetbrains.buildServer.vcs.ModificationData> collectBuildChanges(jetbrains.buildServer.vcs.VcsRoot root,
@NotNull
java.lang.String fromVersion,
@NotNull
java.lang.String currentVersion,
jetbrains.buildServer.vcs.CheckoutRules checkoutRules)
throws jetbrains.buildServer.vcs.VcsException
root - current settings.fromVersion - collect changes from this version.currentVersion - collect changes up to this version.checkoutRules - checkout rules built on union of all checkout rules of all configurations connected to the root.
Include rules have 'from' part the same as 'to' one so you can don't map file pathes according to include rules.
VcsException - throw this exception if some problem occurred while
collecting chanegs or changes cannot be collected because of invalid configuration.
Localized message will be shown on the web page for the corresponding projectservice method, which allows you to collect changes for each root include rule.
public abstract void buildPatch(jetbrains.buildServer.vcs.VcsRoot root,
@Nullable
java.lang.String fromVersion,
@NotNull
java.lang.String toVersion,
PatchBuilder builder,
jetbrains.buildServer.vcs.CheckoutRules checkoutRules)
throws java.io.IOException,
jetbrains.buildServer.vcs.VcsException
root - current settingsfromVersion - collect files, changed since this version. If it is null,
collect all project files to the moment on 'toVersion' parameter.toVersion - collect files, changed between 'fromVersion' and this versionbuilder - call methods of this interface in order to build patch.checkoutRules - checkout rules for sources to be gotten.
java.io.IOException - rethrow this exception, if it will be thrown from some PatchBuilder method
VcsException - throw this exception if some problem occurred while
collecting chanegs or changes cannot be collected because of invalid configuration.
Localized message will be shown on the web page for the corresponding project.service class prevents you from manual mapping of file pathes.
@NotNull
public abstract byte[] getContent(VcsModification vcsModification,
jetbrains.buildServer.vcs.VcsChangeInfo change,
jetbrains.buildServer.vcs.VcsChangeInfo.ContentType contentType,
jetbrains.buildServer.vcs.VcsRoot vcsRoot)
throws jetbrains.buildServer.vcs.VcsException
vcsModification - - modification set.change - - specified change of file.contentType - - specified what content should be return - before modicication or after it.vcsRoot - - current settings.
VcsException - - throw this exception if some problem occurred while
collecting chanegs or changes cannot be collected because of invalid configuration.
@NotNull
public abstract byte[] getContent(java.lang.String filePath,
jetbrains.buildServer.vcs.VcsRoot versionedRoot,
java.lang.String version)
throws jetbrains.buildServer.vcs.VcsException
filePath - - relative file path regarding to the project root,
"checkout root" from vcs root should not be includedversionedRoot - - current settings.version - - version of the repository.
VcsException - - throw this exception if some problem occurred while
collecting changes or changes cannot be collected because of invalid configuration, or
if file, corresponding to specified path cannot be found.public abstract java.lang.String getName()
public abstract java.lang.String getDisplayName()
public abstract PropertiesProcessor getVcsPropertiesProcessor()
AbstractVcsPropertiesProcessorpublic abstract java.lang.String getVcsSettingsJspFilePath()
@NotNull
public abstract java.lang.String getCurrentVersion(jetbrains.buildServer.vcs.VcsRoot root)
throws jetbrains.buildServer.vcs.VcsException
root - - current configuration
VcsException - throw this exception if some problem occurred while
collecting chanegs or changes cannot be collected because of invalid configuration.
Localized message will be shown on the web page for the corresponding project.public abstract java.lang.String describeVcsRoot(jetbrains.buildServer.vcs.VcsRoot vcsRoot)
vcsRoot - vcs root to describe
public abstract boolean isTestConnectionSupported()
public abstract java.lang.String testConnection(jetbrains.buildServer.vcs.VcsRoot vcsRoot)
throws jetbrains.buildServer.vcs.VcsException
vcsRoot - root to be tested
null if no additional information shall be displayed to the user in case
of successful connection.
VcsException - - throw this exception if connection failed@Nullable public abstract java.util.Map<java.lang.String,java.lang.String> getDefaultVcsProperties()
public abstract java.lang.String getVersionDisplayName(java.lang.String version,
jetbrains.buildServer.vcs.VcsRoot root)
throws jetbrains.buildServer.vcs.VcsException
version - version in internal formatroot - root to get version display name for.
VcsException - some problem with version control server occurred.@NotNull public abstract java.util.Comparator<java.lang.String> getVersionComparator()
Service comparator for dates,
service comparator for integer versions,
service comparator for string versionspublic VcsPersonalSupport getPersonalSupport()
null if this version control does not
support remote run.public LabelingSupport getLabelingSupport()
null if this version control does not
support labeling.
public boolean ignoreServerCachesFor(@NotNull
jetbrains.buildServer.vcs.VcsRoot root)
root - VCS root
public boolean sourcesUpdatePossibleIfChangesNotFound(@NotNull
jetbrains.buildServer.vcs.VcsRoot root)
root - VCS root
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||