Package jetbrains.buildServer.vcs
Class VcsSupport
- java.lang.Object
-
- jetbrains.buildServer.vcs.ServerVcsSupport
-
- jetbrains.buildServer.vcs.VcsSupport
-
- All Implemented Interfaces:
BuildPatchByCheckoutRules
,BuildPatchPolicy
,CollectChangesPolicy
,CollectSingleStateChangesByCheckoutRules
,CollectSingleStatePolicy
,TestConnectionSupport
,VcsExtension
,VcsFileContentProvider
,VcsSupportConfig
,VcsSupportContext
,VcsSupportCore
@Deprecated public abstract class VcsSupport extends ServerVcsSupport implements CollectSingleStateChangesByCheckoutRules, BuildPatchByCheckoutRules, VcsFileContentProvider, VcsSupportConfig, TestConnectionSupport
Deprecated.implementServerVcsSupport
insteadThis 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.
-
-
Constructor Summary
Constructors Constructor Description VcsSupport()
Deprecated.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
allowSourceCaching()
Deprecated.This method is a part of the new VCS support API and isn't called for derivatives of VcsSupport.abstract List<ModificationData>
collectBuildChanges(VcsRoot root, String fromVersion, String currentVersion, CheckoutRules checkoutRules)
Deprecated.List<ModificationData>
collectChanges(VcsRoot root, String fromVersion, String currentVersion, CheckoutRules checkoutRules)
Deprecated.Returns list of the changes between two revisions given.BuildPatchByCheckoutRules
getBuildPatchPolicy()
Deprecated.CollectChangesPolicy
getCollectChangesPolicy()
Deprecated.VcsFileContentProvider
getContentProvider()
Deprecated.TestConnectionSupport
getTestConnectionSupport()
Deprecated.boolean
isAgentSideCheckoutAvailable()
Deprecated.boolean
isCurrentVersionExpensive()
Deprecated.If the obtaining current version is an expensive operation (see CollectSingleStatePolicy#getCurrentVersion(VcsRoot)}) the implementation may optimize performance by returningtrue
.abstract boolean
isTestConnectionSupported()
Deprecated.Returns true if test connection is supportedboolean
sourcesUpdatePossibleIfChangesNotFound(VcsRoot root)
Deprecated.Must return true if source files in the build checkout directory can be updated even if no changes were detected between some versions.-
Methods inherited from class jetbrains.buildServer.vcs.ServerVcsSupport
getCore, getCurrentVersion, getVcsCustomExtension, getVcsExtension
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jetbrains.buildServer.vcs.BuildPatchByCheckoutRules
buildPatch
-
Methods inherited from interface jetbrains.buildServer.vcs.CollectSingleStatePolicy
getCurrentVersion
-
Methods inherited from interface jetbrains.buildServer.vcs.TestConnectionSupport
testConnection
-
Methods inherited from interface jetbrains.buildServer.vcs.VcsFileContentProvider
getContent, getContent
-
Methods inherited from interface jetbrains.buildServer.vcs.VcsSupportConfig
describeVcsRoot, getCheckoutProperties, getDefaultVcsProperties, getDisplayName, getName, getServerCheckoutProperties, getVcsPropertiesProcessor, getVcsSettingsJspFilePath, getVersionComparator, getVersionDisplayName, isDAGBased, isDAGBasedVcs
-
Methods inherited from interface jetbrains.buildServer.vcs.VcsSupportContext
getLabelingSupport, getListFilesPolicy, getPersonalSupport, getUrlSupport
-
-
-
-
Method Detail
-
isCurrentVersionExpensive
public boolean isCurrentVersionExpensive()
Deprecated.Description copied from interface:VcsSupportCore
If the obtaining current version is an expensive operation (see CollectSingleStatePolicy#getCurrentVersion(VcsRoot)}) the implementation may optimize performance by returningtrue
. In this case collecting changes for the current version will be done without specifying upper version. OtherwiseCollectSingleStatePolicy.getCurrentVersion(VcsRoot)
will be called first and then the result will be passed to the change collector as the upper version.- Specified by:
isCurrentVersionExpensive
in interfaceVcsSupportCore
- Returns:
- true if the obtaining current version is an expensive operation.
- See Also:
CollectChangesPolicy
-
getContentProvider
@NotNull public VcsFileContentProvider getContentProvider()
Deprecated.- Specified by:
getContentProvider
in interfaceVcsSupportContext
- Returns:
- implementation for file content operations
-
getCollectChangesPolicy
@NotNull public CollectChangesPolicy getCollectChangesPolicy()
Deprecated.- Specified by:
getCollectChangesPolicy
in interfaceVcsSupportContext
- Returns:
- change collecting policy implementation
-
collectBuildChanges
public abstract List<ModificationData> collectBuildChanges(VcsRoot root, @NotNull String fromVersion, @NotNull String currentVersion, CheckoutRules checkoutRules) throws VcsException
Deprecated.- Throws:
VcsException
-
collectChanges
public List<ModificationData> collectChanges(@NotNull VcsRoot root, @NotNull String fromVersion, @Nullable String currentVersion, @NotNull CheckoutRules checkoutRules) throws VcsException
Deprecated.Description copied from interface:CollectSingleStateChangesByCheckoutRules
Returns list of the changes between two revisions given. CheckVcsSupportCore.isCurrentVersionExpensive()
if you like to have null for currentVersion- Specified by:
collectChanges
in interfaceCollectSingleStateChangesByCheckoutRules
- Parameters:
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 paths according to include rules. see jetbrains.buildServer.vcs.VcsSupportUtil#collectBuildChanges(jetbrains.buildServer.vcs.VcsRoot, String, String, jetbrains.buildServer.vcs.CheckoutRules, jetbrains.buildServer.CollectChangesByIncludeRules) service method, which allows you to collect changes for each root include rule.- Returns:
- list of changes between specified versions.
- Throws:
VcsException
- throw this exception if some problem occurred while collecting changes or changes cannot be collected because of invalid configuration. Localized message will be shown on the web page for the corresponding project
-
getBuildPatchPolicy
@NotNull public BuildPatchByCheckoutRules getBuildPatchPolicy()
Deprecated.- Specified by:
getBuildPatchPolicy
in interfaceVcsSupportContext
- Returns:
- patch building policy implementation
-
getTestConnectionSupport
public TestConnectionSupport getTestConnectionSupport()
Deprecated.- Specified by:
getTestConnectionSupport
in interfaceVcsSupportContext
- Returns:
- test connection provider. Null if the implementation doesn't support test connections.
-
isTestConnectionSupported
public abstract boolean isTestConnectionSupported()
Deprecated.Returns true if test connection is supported- Returns:
- if test connection supported
-
isAgentSideCheckoutAvailable
public boolean isAgentSideCheckoutAvailable()
Deprecated.- Specified by:
isAgentSideCheckoutAvailable
in interfaceVcsSupportConfig
- Returns:
- boolean value indicating agent side checkout ability support
-
sourcesUpdatePossibleIfChangesNotFound
public boolean sourcesUpdatePossibleIfChangesNotFound(@NotNull VcsRoot root)
Deprecated.Description copied from interface:VcsSupportCore
Must return true if source files in the build checkout directory can be updated even if no changes were detected between some versions. This is possible for example if VCS support plugin can't detect changes when a tag/label is moved. Note that if true is returned for some VCS root, plugin should be able to correctly build patch for this VCS root.
For example, if plugin performs changes collecting in the buildPatch method and then creates patch by detected changes, it should create clean patch for VCS root for which it returned true in this method.- Specified by:
sourcesUpdatePossibleIfChangesNotFound
in interfaceVcsSupportCore
- Parameters:
root
- VCS root- Returns:
- always true by default
-
allowSourceCaching
public boolean allowSourceCaching()
Deprecated.This method is a part of the new VCS support API and isn't called for derivatives of VcsSupport. Don't override it.- Specified by:
allowSourceCaching
in interfaceVcsSupportCore
- Returns:
- see javadoc for
VcsSupportCore.allowSourceCaching()
-
-