Class BuildTimeStatisticProvider
- java.lang.Object
-
- jetbrains.buildServer.serverSide.statistics.buildtime.BuildTimeStatisticProvider
-
- All Implemented Interfaces:
BuildTimeProvider,FairBuildDistributorDataProvider
public class BuildTimeStatisticProvider extends Object implements BuildTimeProvider, FairBuildDistributorDataProvider
-
-
Constructor Summary
Constructors Constructor Description BuildTimeStatisticProvider(TimeStatisticsProvider provider, HistoricalPathProvider historicalPathProvider, ProjectManager projectManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BuildTimeInfogetBuildTimeInfo(SBuildType requested, DateRange dateRange)Returns build time statistic for particular build type.Map<Key,BuildTimeInfo>getBuildTimeInfoByAgents(SProject project, DateRange dateRange)Returns build time statistic for all builds belongs to particular project in requested period of time grouped by agentsMap<String,BuildTimeInfo>getBuildTimeInfos(SProject project, DateRange dateRange)Returns build time statistic for all builds belongs to particular project in requested period of timeMap<String,BuildTimeInfo>getBuildTimeInfos(SProject project, DateRange dateRange, Collection<Integer> agentIds)Returns build time statistic for all builds from specific agents belongs to particular project in requested period of timeDategetLastUpdated()BuildTimeInfogetProjectBuildTimeInfo(SProject project, DateRange dateRange)Map<CacheKey,Long>getProjectsBuildTime(DateRange.DateRangeType type)Collection<ProjectAgentBuildValue>getRawData(DateRange dateRange)
-
-
-
Constructor Detail
-
BuildTimeStatisticProvider
public BuildTimeStatisticProvider(@NotNull TimeStatisticsProvider provider, @NotNull HistoricalPathProvider historicalPathProvider, @NotNull ProjectManager projectManager)
-
-
Method Detail
-
getProjectsBuildTime
@NotNull public Map<CacheKey,Long> getProjectsBuildTime(@NotNull DateRange.DateRangeType type)
- Specified by:
getProjectsBuildTimein interfaceFairBuildDistributorDataProvider
-
getRawData
@NotNull public Collection<ProjectAgentBuildValue> getRawData(@NotNull DateRange dateRange)
- Specified by:
getRawDatain interfaceBuildTimeProvider
-
getProjectBuildTimeInfo
@NotNull public BuildTimeInfo getProjectBuildTimeInfo(@NotNull SProject project, @NotNull DateRange dateRange)
- Specified by:
getProjectBuildTimeInfoin interfaceBuildTimeProvider
-
getBuildTimeInfos
@NotNull public Map<String,BuildTimeInfo> getBuildTimeInfos(@NotNull SProject project, @NotNull DateRange dateRange)
Returns build time statistic for all builds belongs to particular project in requested period of time- Specified by:
getBuildTimeInfosin interfaceBuildTimeProvider- Parameters:
project-dateRange-- Returns:
- aggregated build time info for build types belong to requested project {build.getBuildTypeId(), BuildTimeInfo}
-
getBuildTimeInfos
@NotNull public Map<String,BuildTimeInfo> getBuildTimeInfos(@NotNull SProject project, @NotNull DateRange dateRange, @Nullable Collection<Integer> agentIds)
Returns build time statistic for all builds from specific agents belongs to particular project in requested period of time- Specified by:
getBuildTimeInfosin interfaceBuildTimeProvider- Parameters:
project-dateRange-agentIds-- Returns:
- aggregated build time info for build types belong to requested project {build.getBuildTypeId(), BuildTimeInfo}
-
getBuildTimeInfoByAgents
@NotNull public Map<Key,BuildTimeInfo> getBuildTimeInfoByAgents(@NotNull SProject project, @NotNull DateRange dateRange)
Description copied from interface:BuildTimeProviderReturns build time statistic for all builds belongs to particular project in requested period of time grouped by agents- Specified by:
getBuildTimeInfoByAgentsin interfaceBuildTimeProvider- Returns:
-
getLastUpdated
@NotNull public Date getLastUpdated()
- Specified by:
getLastUpdatedin interfaceBuildTimeProvider
-
getBuildTimeInfo
public BuildTimeInfo getBuildTimeInfo(@Nullable SBuildType requested, @NotNull DateRange dateRange)
Returns build time statistic for particular build type. If you need data for several build types usegetBuildTimeInfos(jetbrains.buildServer.serverSide.SProject, jetbrains.buildServer.serverSide.statistics.buildtime.DateRange)to obtain all data with only one db request and then filter it in according to your needs- Parameters:
requested- - requested build typedateRange- - required period- Returns:
- build time info for requested build type
-
-