Package jetbrains.buildServer.serverSide
Interface ModificationStateCalculator
-
- All Known Implementing Classes:
ModificationStateCalculatorImpl
public interface ModificationStateCalculator
- Author:
- Pavel.Sher Date: 28.05.2008
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description MergedVcsModificationInfo
createMergedVcsModificationInfo(SVcsModification modification)
Create an object which represents several duplicating modifications as a whole object.Map<SBuildType,BuildPromotion>
findDependentPromotionsFromTargetBuildTypes(Map<SBuildType,SBuild> buildsMap, Predicate<SBuildType> targetBuildTypeFilter)
For specified map of builds finds all promotions depending on these builds directly or transitively in the build types matched by specified predicate.Map<SBuildType,SBuild>
getFirstBuildsWithModificationFixed(SVcsModification modification)
For given VCS modification returns map of build configuration -> build where this modification was fixed (included into the successful build).Map<SBuildType,SBuild>
getFirstBuildsWithModificationIncluded(SVcsModification modification, boolean includeDependentBuilds)
For given VCS modification returns map of build configuration -> build where this modification was included for the first time.SBuild
getLastReachableBuild(SBuildType buildType, SVcsModification modification, String branch)
Returns last reachable build for non-personal modification.Map<SBuildType,SBuild>
getLastReachableBuilds(SVcsModification modification, Map<SBuildType,String> branches)
Returns a map (build type -> last build in this build type reachable from the given modification) (seegetLastReachableBuild(jetbrains.buildServer.serverSide.SBuildType, jetbrains.buildServer.vcs.SVcsModification, java.lang.String)
).Map<SBuildType,List<SQueuedBuild>>
getQueuedBuilds(Collection<SBuildType> buildTypes, SVcsModification modification)
Find out queued builds of the given buildTypes which are the first candidates (per branch) for containing modification.
-
-
-
Method Detail
-
getFirstBuildsWithModificationIncluded
@NotNull Map<SBuildType,SBuild> getFirstBuildsWithModificationIncluded(@NotNull SVcsModification modification, boolean includeDependentBuilds)
For given VCS modification returns map of build configuration -> build where this modification was included for the first time. Cancelled builds are ignored.- Parameters:
modification
- VCS modificationincludeDependentBuilds
- if true snapshot dependent builds with option "Show changes from dependencies" will be added to the result- Returns:
- see above
-
getFirstBuildsWithModificationFixed
@NotNull Map<SBuildType,SBuild> getFirstBuildsWithModificationFixed(@NotNull SVcsModification modification)
For given VCS modification returns map of build configuration -> build where this modification was fixed (included into the successful build). Cancelled builds are ignored.- Parameters:
modification
- VCS modification- Returns:
- see above
-
getQueuedBuilds
@NotNull Map<SBuildType,List<SQueuedBuild>> getQueuedBuilds(Collection<SBuildType> buildTypes, SVcsModification modification)
Find out queued builds of the given buildTypes which are the first candidates (per branch) for containing modification. Builds are sorted by their branch names.- Parameters:
buildTypes
- build types, can be personalmodification
- modification to be included into the build- Returns:
- see above
-
getLastReachableBuild
@Nullable SBuild getLastReachableBuild(@NotNull SBuildType buildType, @NotNull SVcsModification modification, @NotNull String branch)
Returns last reachable build for non-personal modification. For non-dag-based modifications does not calculate reachability, uses result ofSBuildType.getLastChangesStartedBuild()
. For dag-based modifications first tries to find a last build in the default branch, if not found - in the specified branch, if not found - return the latest build among reachable ones.- Parameters:
buildType
- buildType of interestmodification
- non-personal modification of interestbranch
- branch where to look for the last build when no build is found in the default branch- Returns:
- see above
-
getLastReachableBuilds
@NotNull Map<SBuildType,SBuild> getLastReachableBuilds(@NotNull SVcsModification modification, @NotNull Map<SBuildType,String> branches)
Returns a map (build type -> last build in this build type reachable from the given modification) (seegetLastReachableBuild(jetbrains.buildServer.serverSide.SBuildType, jetbrains.buildServer.vcs.SVcsModification, java.lang.String)
). Values in the map can be null, meaning no reachable build found. Call to this method with several buildTypes is faster than several calls togetLastReachableBuild(jetbrains.buildServer.serverSide.SBuildType, jetbrains.buildServer.vcs.SVcsModification, java.lang.String)
.- Parameters:
modification
- modification of interestbranches
- map (build type -> branch name)- Returns:
- see above
-
createMergedVcsModificationInfo
@NotNull MergedVcsModificationInfo createMergedVcsModificationInfo(@NotNull SVcsModification modification)
Create an object which represents several duplicating modifications as a whole object. The returned object is aware of the current context permissions, i.e. returned modifications are available to the current user.- Parameters:
modification
- modification candidate- Returns:
- see above
- Since:
- 8.1
-
findDependentPromotionsFromTargetBuildTypes
@NotNull Map<SBuildType,BuildPromotion> findDependentPromotionsFromTargetBuildTypes(@NotNull Map<SBuildType,SBuild> buildsMap, @NotNull Predicate<SBuildType> targetBuildTypeFilter)
For specified map of builds finds all promotions depending on these builds directly or transitively in the build types matched by specified predicate.- Parameters:
buildsMap
- - map of buildstargetBuildTypeFilter
-- Returns:
- Since:
- 2017.2
-
-