Class RunningBuildsManagerImpl
- java.lang.Object
-
- jetbrains.buildServer.serverSide.impl.RunningBuildsManagerImpl
-
- All Implemented Interfaces:
RunningBuildsManagerEx
,RunningBuildsManager
public class RunningBuildsManagerImpl extends Object implements RunningBuildsManagerEx
Created 21.10.12 17:54- Author:
- Eugene Petrenko (eugene.petrenko@jetbrains.com)
-
-
Field Summary
Fields Modifier and Type Field Description static String
COMPOSITE_BUILD_DEPENDENCY_WAIT_TIMEOUT
static Comparator<SRunningBuild>
MOST_RECENT_FIRST_BUILDS_COMPARATOR
-
Constructor Summary
Constructors Constructor Description RunningBuildsManagerImpl(RunningBuildsCollectionImpl runningBuildsCollection, SecurityContextEx securityContext, EventDispatcher<BuildServerListener> dispatcher, ExecutorServices executorServices, DatabaseTimeProvider databaseTimeProvider, SQLRunnerEx sqlRunner)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addRunningBuild(RunningBuildEx runningBuild)
SBuild
findNextBuild(SBuild build, BuildDataFilter filter)
SBuild
findPreviousBuild(SBuild buildData)
SBuild
findPreviousBuild(SBuild buildData, BuildDataFilter filter)
RunningBuildEx
findRunningBuildById(long buildId)
Searches for a running build by specified build id.Collection<RunningBuildEx>
findRunningBuildsByIdsInternal(Collection<Long> buildIds)
List<SBuild>
getEntriesSince(SBuild build, SBuildType buildType)
SBuild
getLastStartedBuild(String buildTypeId)
int
getNumberOfRunningBuilds()
Returns total number of currently running builds.RunningBuildEx
getRunningBuildOnAgent(SBuildAgent agent)
Returns running build running on the specified agent or null if there are no build on the agent.List<SRunningBuild>
getRunningBuilds()
Same as getRunningBuilds(null, null) List of running builds is sorted by build id in reverse order (most recent build first).List<SRunningBuild>
getRunningBuilds(User user, BuildDataFilter filter)
Returns all running builds including personal builds according to settings of the specified user.List<SRunningBuild>
getRunningBuilds(User user, SBuildType buildType)
Returns all running builds including personal builds which belong to the specified build configuration.List<RunningBuildEx>
getRunningBuildsEx()
Map<SBuildType,List<SRunningBuild>>
getRunningStatus(User user, BuildDataFilter filter)
Returns map of running builds per build configuration.TimeService
getTimeService()
boolean
hasFinishingBuilds()
boolean
isBuildFinishing(long buildId)
boolean
isCompositeBuildReadyToFinish(CompositeRunningBuild rb)
void
processBuildDetachedOnOtherNode(long buildId)
void
processBuildFinishedOnOtherNode(long buildId, Runnable callback)
void
processBuildInterruptedOnOtherNode(long buildId, Runnable callback)
void
processBuildStartedOnOtherNode(long buildId)
void
processChangesLoadedOnOtherNode(long buildId)
void
removeRunningBuild(RunningBuildEx build)
void
scheduleBuildFinishing(RunningBuildEx rb)
void
setBuildPromotionManager(BuildPromotionManagerEx buildPromotionManager)
void
setHistory(BuildHistoryEx buildHistory)
void
setMultiNodeTasks(BuildsRelatedMultiNodeTasks buildsRelatedMultiNodeTasks)
void
setProjectManager(ProjectManagerEx projectManager)
void
setServerResponsibility(ServerResponsibility serverResponsibility)
void
setTimeService(TimeService timeService)
-
-
-
Field Detail
-
COMPOSITE_BUILD_DEPENDENCY_WAIT_TIMEOUT
public static final String COMPOSITE_BUILD_DEPENDENCY_WAIT_TIMEOUT
- See Also:
- Constant Field Values
-
MOST_RECENT_FIRST_BUILDS_COMPARATOR
public static final Comparator<SRunningBuild> MOST_RECENT_FIRST_BUILDS_COMPARATOR
-
-
Constructor Detail
-
RunningBuildsManagerImpl
public RunningBuildsManagerImpl(@NotNull RunningBuildsCollectionImpl runningBuildsCollection, @NotNull SecurityContextEx securityContext, @NotNull EventDispatcher<BuildServerListener> dispatcher, @NotNull ExecutorServices executorServices, @NotNull DatabaseTimeProvider databaseTimeProvider, @NotNull SQLRunnerEx sqlRunner)
-
-
Method Detail
-
setHistory
public void setHistory(@NotNull BuildHistoryEx buildHistory)
-
setProjectManager
public void setProjectManager(@NotNull ProjectManagerEx projectManager)
-
setTimeService
public void setTimeService(@NotNull TimeService timeService)
-
setServerResponsibility
public void setServerResponsibility(ServerResponsibility serverResponsibility)
-
setMultiNodeTasks
public void setMultiNodeTasks(BuildsRelatedMultiNodeTasks buildsRelatedMultiNodeTasks)
-
setBuildPromotionManager
public void setBuildPromotionManager(BuildPromotionManagerEx buildPromotionManager)
-
getTimeService
@NotNull public TimeService getTimeService()
- Specified by:
getTimeService
in interfaceRunningBuildsManagerEx
-
removeRunningBuild
public void removeRunningBuild(@NotNull RunningBuildEx build)
- Specified by:
removeRunningBuild
in interfaceRunningBuildsManagerEx
-
getRunningBuildsEx
@NotNull public List<RunningBuildEx> getRunningBuildsEx()
- Specified by:
getRunningBuildsEx
in interfaceRunningBuildsManagerEx
-
processBuildStartedOnOtherNode
public void processBuildStartedOnOtherNode(long buildId)
- Specified by:
processBuildStartedOnOtherNode
in interfaceRunningBuildsManagerEx
-
processChangesLoadedOnOtherNode
public void processChangesLoadedOnOtherNode(long buildId)
- Specified by:
processChangesLoadedOnOtherNode
in interfaceRunningBuildsManagerEx
-
processBuildFinishedOnOtherNode
public void processBuildFinishedOnOtherNode(long buildId, @NotNull Runnable callback)
- Specified by:
processBuildFinishedOnOtherNode
in interfaceRunningBuildsManagerEx
-
processBuildInterruptedOnOtherNode
public void processBuildInterruptedOnOtherNode(long buildId, @NotNull Runnable callback)
- Specified by:
processBuildInterruptedOnOtherNode
in interfaceRunningBuildsManagerEx
-
processBuildDetachedOnOtherNode
public void processBuildDetachedOnOtherNode(long buildId)
- Specified by:
processBuildDetachedOnOtherNode
in interfaceRunningBuildsManagerEx
-
findRunningBuildById
@Nullable public final RunningBuildEx findRunningBuildById(long buildId)
Description copied from interface:RunningBuildsManager
Searches for a running build by specified build id.- Specified by:
findRunningBuildById
in interfaceRunningBuildsManager
- Specified by:
findRunningBuildById
in interfaceRunningBuildsManagerEx
- Parameters:
buildId
- id of the build- Returns:
- running build with specified build id or null if there are no running build with such build id.
-
findRunningBuildsByIdsInternal
@NotNull public Collection<RunningBuildEx> findRunningBuildsByIdsInternal(@NotNull Collection<Long> buildIds)
-
getRunningBuildOnAgent
@Nullable public RunningBuildEx getRunningBuildOnAgent(SBuildAgent agent)
Description copied from interface:RunningBuildsManager
Returns running build running on the specified agent or null if there are no build on the agent.- Specified by:
getRunningBuildOnAgent
in interfaceRunningBuildsManager
- Specified by:
getRunningBuildOnAgent
in interfaceRunningBuildsManagerEx
- Parameters:
agent
- agent to search build- Returns:
- running build or null
-
getRunningBuilds
@NotNull public List<SRunningBuild> getRunningBuilds(@Nullable User user, @Nullable BuildDataFilter filter)
Description copied from interface:RunningBuildsManager
Returns all running builds including personal builds according to settings of the specified user. If user is not null then all non-personal builds and personal builds of this user will be returned. If user settings are configured to show all personal builds, then personal builds of other users will be returned as well. If user is null, then all personal and non-personal builds are returned. If filter is not null it will be applied to the result. List of running builds is sorted by build id in reverse order (most recent build first).- Specified by:
getRunningBuilds
in interfaceRunningBuildsManager
- Parameters:
user
- owner of personal builds, can be nullfilter
- filter to apply for builds, can be null- Returns:
- unmodifiable list of running builds
-
getRunningBuilds
@NotNull public List<SRunningBuild> getRunningBuilds(@Nullable User user, @NotNull SBuildType buildType)
Description copied from interface:RunningBuildsManager
Returns all running builds including personal builds which belong to the specified build configuration. If user is not null then all non-personal builds and personal builds of this user will be returned. If user settings are configured to show all personal builds, then personal builds of other users will be returned as well. If user is null, then all personal and non-personal builds are returned. List of running builds is sorted by build id in reverse order (most recent build first).- Specified by:
getRunningBuilds
in interfaceRunningBuildsManager
- Parameters:
user
- owner of personal builds or nullbuildType
- build configuration- Returns:
- see above
-
getRunningBuilds
@NotNull public List<SRunningBuild> getRunningBuilds()
Description copied from interface:RunningBuildsManager
Same as getRunningBuilds(null, null) List of running builds is sorted by build id in reverse order (most recent build first).- Specified by:
getRunningBuilds
in interfaceRunningBuildsManager
- Returns:
- see above
-
getNumberOfRunningBuilds
public int getNumberOfRunningBuilds()
Description copied from interface:RunningBuildsManager
Returns total number of currently running builds.- Specified by:
getNumberOfRunningBuilds
in interfaceRunningBuildsManager
- Returns:
- number of currently running builds.
-
getRunningStatus
public Map<SBuildType,List<SRunningBuild>> getRunningStatus(@Nullable User user, @Nullable BuildDataFilter filter)
Description copied from interface:RunningBuildsManager
Returns map of running builds per build configuration. Method returns all personal builds if user is null, otherwise only personal builds of this user are returned. If filter is not null it will be applied to the result. The resulting map will contain only those build configurations for which list or running builds is not empty. List of running builds is sorted by build id in reverse order (most recent build first).- Specified by:
getRunningStatus
in interfaceRunningBuildsManager
- Parameters:
user
- owner of personal builds, can be nullfilter
- filter to apply for builds, can be null- Returns:
- unmodifiable map of running builds per build type
-
isCompositeBuildReadyToFinish
public boolean isCompositeBuildReadyToFinish(@NotNull CompositeRunningBuild rb)
- Specified by:
isCompositeBuildReadyToFinish
in interfaceRunningBuildsManagerEx
-
scheduleBuildFinishing
public void scheduleBuildFinishing(@NotNull RunningBuildEx rb)
- Specified by:
scheduleBuildFinishing
in interfaceRunningBuildsManagerEx
-
hasFinishingBuilds
public boolean hasFinishingBuilds()
- Specified by:
hasFinishingBuilds
in interfaceRunningBuildsManagerEx
-
findPreviousBuild
@Nullable public SBuild findPreviousBuild(@NotNull SBuild buildData, @NotNull BuildDataFilter filter)
-
findNextBuild
@Nullable public SBuild findNextBuild(@NotNull SBuild build, @NotNull BuildDataFilter filter)
-
getEntriesSince
public List<SBuild> getEntriesSince(@Nullable SBuild build, SBuildType buildType)
-
getLastStartedBuild
@Nullable public SBuild getLastStartedBuild(String buildTypeId)
- Specified by:
getLastStartedBuild
in interfaceRunningBuildsManagerEx
-
addRunningBuild
public void addRunningBuild(@NotNull RunningBuildEx runningBuild)
- Specified by:
addRunningBuild
in interfaceRunningBuildsManagerEx
-
isBuildFinishing
public boolean isBuildFinishing(long buildId)
- Specified by:
isBuildFinishing
in interfaceRunningBuildsManagerEx
-
-