Interface FirstBranchRevisionTracker

  • All Known Implementing Classes:
    CDSFirstBranchRevisionTracker

    public interface FirstBranchRevisionTracker
    Tracks first detected revision in branch for buildType, root instance, and checkout rules.
    • Method Detail

      • deleteRevisions

        void deleteRevisions​(@NotNull
                             SBuildType buildType,
                             @NotNull
                             SVcsRoot root,
                             boolean implicitSettingsVcsRoot)
        Removes all revisions for the specified buildType and VCS root
        Parameters:
        buildType - buildType of interest
        root - VCS root of interest
      • deleteRevisions

        void deleteRevisions​(@NotNull
                             SBuildType buildType,
                             long parentVcsRootId,
                             boolean implicitSettingsVcsRoot)
      • deleteRevisions

        void deleteRevisions​(@NotNull
                             SBuildType buildType)
        Removes all revisions stored for the specified build type
        Parameters:
        buildType -
      • updateRevisions

        void updateRevisions​(@NotNull
                             VcsRootInstance root,
                             @NotNull
                             Map<SBuildType,​CheckoutRules> usages,
                             boolean implicitSettingsRootUsages,
                             @NotNull
                             RepositoryState fromState,
                             @NotNull
                             RepositoryState toState,
                             @NotNull
                             Set<SBuildType> forceRevisionUpdateBuildTypes)
        Updates first detected revision for specified root and its usages after collecting changes from the fromSate to the toState. Detects the case when currently stored first revision is not reachable from the new branch head and updates the first revision with the branch head
      • getFirstRevision

        @Nullable
        String getFirstRevision​(@NotNull
                                SBuildType buildType,
                                @NotNull
                                VcsRootInstanceEntry entry,
                                @NotNull
                                String vcsBranch)
        Returns a first revision detected in branch for the given buildType, VCS root entry and the vcs branch. Returns null if no revision is found.
        Parameters:
        buildType - buildType of interest
        entry - root entry of interest
        vcsBranch - vcs branch name
        Returns:
        see above
      • getVcsRootsWithBranchRevisions

        @NotNull
        Set<Long> getVcsRootsWithBranchRevisions​(@NotNull
                                                 SBuildType buildType,
                                                 boolean implicitSettingsRoot)
        Set of ids of VCS roots which have first branch revisions remembered for the specified build configuration
        Parameters:
        buildType -
        implicitSettingsRoot - if true then only ids of settings VCS roots will be returned, if false, then only ids of regular VCS roots will be returned
        Returns: