Interface VcsSupportConfig

    • Method Detail

      • getName

        @NotNull
        String getName()
        Unique VCS identifier among other installed plugins.
        Returns:
        - unique version control name
      • getDisplayName

        @NotNull
        String getDisplayName()
        Returns name to be shown in the UI.
        Returns:
        name to be shown to user
      • getVcsPropertiesProcessor

        @Nullable
        PropertiesProcessor getVcsPropertiesProcessor()
        Validator for the version control settings as displayed on configuration page for the VCS root.
        Returns:
        - properties validator
        See Also:
        AbstractVcsPropertiesProcessor
      • getVcsSettingsJspFilePath

        @NotNull
        String getVcsSettingsJspFilePath()
        Version control settings editor page.
        Returns:
        path to configuration jsp page
      • describeVcsRoot

        @NotNull
        String describeVcsRoot​(@NotNull
                               VcsRoot vcsRoot)
        Returns presentable text describing specified vcs root, for example: svn: http://www.somehost.com/project/
        Parameters:
        vcsRoot - vcs root to describe
        Returns:
        vcs root description
      • getDefaultVcsProperties

        @Nullable
        Map<String,​String> getDefaultVcsProperties()
        Returns default VCS property values.
        Returns:
        default configuration values
      • getCheckoutProperties

        @NotNull
        default Map<String,​String> getCheckoutProperties​(@NotNull
                                                               VcsRoot root)
                                                        throws VcsException
        Must return a map of vcs root properties significant for checkout operation. If a property is not returned in the map, TeamCity will ignore change in this property for given VCS root. For example, if a property changed and this property is significant for checkout, TeamCity will perform clean checkout. In other words, plugin must return those properties whose change can affect source code on agent. Properties returned by this method also affect checkout directory name on agent. Default implementation in ServerVcsSupport returns all non-secure properties.
        Parameters:
        root - VCS root of interest
        Returns:
        see above
        Throws:
        VcsException - if properties cannot be calculated
        Since:
        7.1
      • getServerCheckoutProperties

        @NotNull
        default Map<String,​String> getServerCheckoutProperties​(@NotNull
                                                                     VcsRoot root)
                                                              throws VcsException
        This method is used to calculate caching key for VCSEntries when checkout on server mode is used. Affects:
        • Server side patch caching key
        • Hash code for checkout directory name calculation with server-side checkout
        Parameters:
        root - VCS root of interest
        Returns:
        see above
        Throws:
        VcsException - if properties cannot be calculated
        Since:
        9.0
      • getVersionDisplayName

        @Nullable
        String getVersionDisplayName​(@NotNull
                                     String version,
                                     @NotNull
                                     VcsRoot root)
                              throws VcsException
        Returns readable presentation of version (this format should be the same as DisplayVersion of VcsModification)
        Parameters:
        version - version in internal format
        root - root to get version display name for.
        Returns:
        display format of repository version
        Throws:
        VcsException - some problem with version control server occurred.
      • isAgentSideCheckoutAvailable

        default boolean isAgentSideCheckoutAvailable()
        Returns:
        boolean value indicating agent side checkout ability support
      • isDAGBased

        default boolean isDAGBased​(@NotNull
                                   VcsRoot root)
        Parameters:
        root - corresponding VCS Root
        Returns:
        true if given VCS Root is DAG-based
        Since:
        10.0
      • isDAGBasedVcs

        default boolean isDAGBasedVcs()
        Deprecated.
        Not used anymore since 10.0, use isDAGBased(VcsRoot) to provide actual implementation
        Returns:
        true if VCS is DAG-based