jetbrains.buildServer.vcs
Class ServerVcsSupport

java.lang.Object
  extended by jetbrains.buildServer.vcs.ServerVcsSupport
All Implemented Interfaces:
VcsSupportConfig, VcsSupportContext, VcsSupportCore
Direct Known Subclasses:
VcsSupport

public abstract class ServerVcsSupport
extends java.lang.Object
implements VcsSupportContext, VcsSupportCore

Base class for all VCS support implementations. Don't implement VcsSupportContext directly to avoid backward compatibility issues.

Since:
4.5

Constructor Summary
ServerVcsSupport()
           
 
Method Summary
 boolean allowSourceCaching()
           
 VcsSupportCore getCore()
           
 LabelingSupport getLabelingSupport()
           
 VcsPersonalSupport getPersonalSupport()
           
 RootMerger getRootMerger()
           
 TestConnectionSupport getTestConnectionSupport()
           
 UrlSupport getUrlSupport()
           
 boolean isAgentSideCheckoutAvailable()
           
 boolean isCurrentVersionExpensive()
          If the obtaining current version is an expensive operation (see VcsSupportCore.getCurrentVersion(VcsRoot)) the implementation may optimize performance by returning true.
 boolean isDAGBasedVcs()
           
 
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.VcsSupportContext
getBuildPatchPolicy, getCollectChangesPolicy, getContentProvider
 
Methods inherited from interface jetbrains.buildServer.vcs.VcsSupportCore
getCurrentVersion, sourcesUpdatePossibleIfChangesNotFound
 
Methods inherited from interface jetbrains.buildServer.vcs.VcsSupportConfig
describeVcsRoot, getDefaultVcsProperties, getDisplayName, getName, getVcsPropertiesProcessor, getVcsSettingsJspFilePath, getVersionComparator, getVersionDisplayName
 

Constructor Detail

ServerVcsSupport

public ServerVcsSupport()
Method Detail

getPersonalSupport

public VcsPersonalSupport getPersonalSupport()
Specified by:
getPersonalSupport in interface VcsSupportContext
Returns:
null by default

getLabelingSupport

public LabelingSupport getLabelingSupport()
Specified by:
getLabelingSupport in interface VcsSupportContext
Returns:
null by default

getTestConnectionSupport

public TestConnectionSupport getTestConnectionSupport()
Specified by:
getTestConnectionSupport in interface VcsSupportContext
Returns:
null by default

getRootMerger

public RootMerger getRootMerger()
Specified by:
getRootMerger in interface VcsSupportContext
Returns:
null by default

isCurrentVersionExpensive

public boolean isCurrentVersionExpensive()
Description copied from interface: VcsSupportCore
If the obtaining current version is an expensive operation (see VcsSupportCore.getCurrentVersion(VcsRoot)) the implementation may optimize performance by returning true. In this case collecting changes for the current version will be done without specifying upper version. Otherwise VcsSupportCore.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 interface VcsSupportCore
Returns:
false by default
See Also:
CollectChangesPolicy

allowSourceCaching

public boolean allowSourceCaching()
Specified by:
allowSourceCaching in interface VcsSupportCore
Returns:
true by default

isAgentSideCheckoutAvailable

public boolean isAgentSideCheckoutAvailable()
Specified by:
isAgentSideCheckoutAvailable in interface VcsSupportConfig
Returns:
false by default

getCore

@NotNull
public VcsSupportCore getCore()
Specified by:
getCore in interface VcsSupportContext
Returns:
the object with the core functions

getUrlSupport

@Nullable
public UrlSupport getUrlSupport()
Specified by:
getUrlSupport in interface VcsSupportContext

isDAGBasedVcs

public boolean isDAGBasedVcs()
Specified by:
isDAGBasedVcs in interface VcsSupportConfig
Returns:
true if VCS is DAG-based