Class InputData
- java.lang.Object
-
- jetbrains.buildServer.serverSide.impl.buildDistribution.InputData
-
- All Implemented Interfaces:
BuildDistributorInput
,BuildsInfo
,BuildDistributorInputEx
public class InputData extends Object implements BuildDistributorInputEx
Aggregates all input information needed for a build distribution algorithm- Author:
- Sergey.Anchipolevsky Date: 18.06.2007
-
-
Constructor Summary
Constructors Constructor Description InputData(List<QueuedBuildInfo> queue, Collection<RunningBuildInfo> runningBuilds, Collection<SBuildAgent> agents)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RunningBuildInfo
findRunningBuildById(long id)
Collection<SBuildAgent>
getAgents()
int
getAverageDistributionTime()
Set<SBuildAgent>
getBusyAgents()
<T> T
getCustomData(String id, Class<T> objectType)
Map<QueuedBuildInfo,SBuildAgent>
getDistributedBuilds()
List<QueuedBuildInfo>
getQueue()
Collection<RunningBuildInfo>
getRunningBuilds()
void
setAverageDistributionTime(int averageDistributionTime)
void
setCustomData(String id, Object object)
Stores custom data in distributor input to be used by subsequent pre-condition or filter.void
setDistributedBuilds(Map<QueuedBuildInfo,SBuildAgent> distributedBuilds)
String
toString()
-
-
-
Constructor Detail
-
InputData
public InputData(@NotNull List<QueuedBuildInfo> queue, @NotNull Collection<RunningBuildInfo> runningBuilds, @NotNull Collection<SBuildAgent> agents)
-
-
Method Detail
-
getQueue
@NotNull public List<QueuedBuildInfo> getQueue()
- Specified by:
getQueue
in interfaceBuildsInfo
- Returns:
- The build queue. The first element in the list is the first build in the queue
-
getRunningBuilds
@NotNull public Collection<RunningBuildInfo> getRunningBuilds()
- Specified by:
getRunningBuilds
in interfaceBuildsInfo
- Returns:
- the builds currently running
-
findRunningBuildById
@Nullable public RunningBuildInfo findRunningBuildById(long id)
- Specified by:
findRunningBuildById
in interfaceBuildDistributorInputEx
-
getAgents
@NotNull public Collection<SBuildAgent> getAgents()
- Specified by:
getAgents
in interfaceBuildDistributorInput
- Returns:
- all the agents registered in the system
-
getBusyAgents
@NotNull public Set<SBuildAgent> getBusyAgents()
- Specified by:
getBusyAgents
in interfaceBuildDistributorInput
- Returns:
- agents which are currently running builds
-
setCustomData
public void setCustomData(@NotNull String id, @Nullable Object object)
Description copied from interface:BuildDistributorInputEx
Stores custom data in distributor input to be used by subsequent pre-condition or filter.- Specified by:
setCustomData
in interfaceBuildDistributorInputEx
- Parameters:
id
- data idobject
- data to remember
-
getCustomData
@Nullable public <T> T getCustomData(@NotNull String id, @NotNull Class<T> objectType)
- Specified by:
getCustomData
in interfaceBuildDistributorInputEx
- Parameters:
id
- data id- Returns:
- remembered data by specified id
-
getDistributedBuilds
@NotNull public Map<QueuedBuildInfo,SBuildAgent> getDistributedBuilds()
- Specified by:
getDistributedBuilds
in interfaceBuildDistributorInputEx
- Returns:
- map of already distributed builds
-
setAverageDistributionTime
public void setAverageDistributionTime(int averageDistributionTime)
-
getAverageDistributionTime
public int getAverageDistributionTime()
- Specified by:
getAverageDistributionTime
in interfaceBuildDistributorInputEx
- Returns:
- average time in seconds spent on the build queue distribution during the last N distributions
-
setDistributedBuilds
public void setDistributedBuilds(@NotNull Map<QueuedBuildInfo,SBuildAgent> distributedBuilds)
-
-