Package com.atlassian.bamboo.chains
Class ChainResultManagerImpl
- java.lang.Object
-
- com.atlassian.bamboo.chains.ChainResultManagerImpl
-
- All Implemented Interfaces:
ChainResultManager
public class ChainResultManagerImpl extends Object implements ChainResultManager
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.atlassian.bamboo.chains.ChainResultManager
ChainResultManager.JobResultInfoForRerun
-
-
Constructor Summary
Constructors Constructor Description ChainResultManagerImpl(BuildResultsSummaryManager buildResultsSummaryManager, ResultsSummaryManager resultsSummaryManager, LimitedConcurrencyCaller limitedConcurrencyCaller, ErrorUpdateHandler errorUpdateHandler, com.opensymphony.xwork2.TextProvider textProvider, ArtifactLinkManager artifactLinkManager, Persister persister, BuildContextBuilderFactory buildContextBuilderFactory, TriggerManager triggerManager, AuthorCreatorService authorCreatorService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @NotNull Map<PlanResultKey,ChainResultManager.JobResultInfoForRerun>
cleanForRerunBuild(@NotNull BuildContext chainBuildContext)
Removes all job and stage results.@NotNull ChainStateResult
create(@NotNull BuildContext chainBuildContext, @NotNull Map<ImmutableChainStage,Map<ImmutableJob,BuildContext>> jobBuildContexts, @NotNull Collection<? extends ImmutableChainStage> stagesToExecute)
void
createRepositorySpecFailedResult(@NotNull ImmutableChain plan, @NotNull VcsRepositoryData repositoryData, @NotNull BuildChanges buildChanges, int buildNumber, @NotNull VcsLocationBambooSpecsState specsState)
Create and save chain result for plan which was not updated when Repository stored specs execution was failedvoid
createRepositorySpecSuccessResult(@NotNull ImmutableChain plan, @NotNull VcsRepositoryData repositoryData, @NotNull BuildChanges buildChanges, int buildNumber)
Create and save chain result for plan which was updated when Repository stored specs executed@NotNull ChainStateResult
createStateForRerunBuild(@NotNull BuildContext chainBuildContext, @NotNull Map<ImmutableChainStage,Map<ImmutableJob,BuildContext>> jobBuildContexts, PlanExecutionConfig planExecutionConfig, @NotNull Map<PlanResultKey,ChainResultManager.JobResultInfoForRerun> jobResultInfoForRerunMap)
Creates aChainState
as well stage and job results for build already executed and being rerun.long
getAverageProgressDurationForStages(@NotNull PlanIdentifier chain, @NotNull Collection<ChainStageResult> stages, int numberOfResults)
Calculates average duration of provided stages execution@NotNull ChainStateResult
updateForContinuedBuild(@NotNull BuildContext chainBuildContext, @NotNull Collection<BuildContext> jobBuildContexts, @NotNull PlanExecutionConfig planExecutionConfig)
Creates aChainState
for build already executed and stopped on manual stage of failed@NotNull ChainStateResult
updateForRerunBuild(@NotNull BuildContext chainBuildContext, @NotNull Map<ImmutableChainStage,Map<ImmutableJob,BuildContext>> jobBuildContexts, @NotNull PlanExecutionConfig planExecutionConfig)
Creates aChainState
for build already executed and being rerun.void
updateStateToInProgress(@NotNull PlanResultKey chainResultKey, @NotNull Date startDate)
-
-
-
Constructor Detail
-
ChainResultManagerImpl
public ChainResultManagerImpl(BuildResultsSummaryManager buildResultsSummaryManager, ResultsSummaryManager resultsSummaryManager, LimitedConcurrencyCaller limitedConcurrencyCaller, ErrorUpdateHandler errorUpdateHandler, com.opensymphony.xwork2.TextProvider textProvider, ArtifactLinkManager artifactLinkManager, Persister persister, BuildContextBuilderFactory buildContextBuilderFactory, TriggerManager triggerManager, AuthorCreatorService authorCreatorService)
-
-
Method Detail
-
updateStateToInProgress
public void updateStateToInProgress(@NotNull @NotNull PlanResultKey chainResultKey, @NotNull @NotNull Date startDate)
- Specified by:
updateStateToInProgress
in interfaceChainResultManager
-
create
@NotNull public @NotNull ChainStateResult create(@NotNull @NotNull BuildContext chainBuildContext, @NotNull @NotNull Map<ImmutableChainStage,Map<ImmutableJob,BuildContext>> jobBuildContexts, @NotNull @NotNull Collection<? extends ImmutableChainStage> stagesToExecute)
Description copied from interface:ChainResultManager
- Specified by:
create
in interfaceChainResultManager
- Returns:
- chainResultState
-
updateForContinuedBuild
@NotNull public @NotNull ChainStateResult updateForContinuedBuild(@NotNull @NotNull BuildContext chainBuildContext, @NotNull @NotNull Collection<BuildContext> jobBuildContexts, @NotNull @NotNull PlanExecutionConfig planExecutionConfig) throws IOException
Description copied from interface:ChainResultManager
Creates aChainState
for build already executed and stopped on manual stage of failed- Specified by:
updateForContinuedBuild
in interfaceChainResultManager
planExecutionConfig
- - controls the continue/restart execution- Returns:
- Throws:
IOException
-
cleanForRerunBuild
@NotNull public @NotNull Map<PlanResultKey,ChainResultManager.JobResultInfoForRerun> cleanForRerunBuild(@NotNull @NotNull BuildContext chainBuildContext)
Description copied from interface:ChainResultManager
Removes all job and stage results.- Specified by:
cleanForRerunBuild
in interfaceChainResultManager
- Returns:
- re
-
createStateForRerunBuild
@NotNull public @NotNull ChainStateResult createStateForRerunBuild(@NotNull @NotNull BuildContext chainBuildContext, @NotNull @NotNull Map<ImmutableChainStage,Map<ImmutableJob,BuildContext>> jobBuildContexts, PlanExecutionConfig planExecutionConfig, @NotNull @NotNull Map<PlanResultKey,ChainResultManager.JobResultInfoForRerun> jobResultInfoForRerunMap) throws IOException
Description copied from interface:ChainResultManager
Creates aChainState
as well stage and job results for build already executed and being rerun. Must be called afterChainResultManager.cleanForRerunBuild(BuildContext)
- Specified by:
createStateForRerunBuild
in interfaceChainResultManager
- Throws:
IOException
-
updateForRerunBuild
@NotNull public @NotNull ChainStateResult updateForRerunBuild(@NotNull @NotNull BuildContext chainBuildContext, @NotNull @NotNull Map<ImmutableChainStage,Map<ImmutableJob,BuildContext>> jobBuildContexts, @NotNull @NotNull PlanExecutionConfig planExecutionConfig) throws IOException
Description copied from interface:ChainResultManager
Creates aChainState
for build already executed and being rerun. This means all succeeding manual stages that won't be executed should have their results wiped out.- Specified by:
updateForRerunBuild
in interfaceChainResultManager
planExecutionConfig
- - controls the continue/restart execution- Throws:
IOException
-
getAverageProgressDurationForStages
public long getAverageProgressDurationForStages(@NotNull @NotNull PlanIdentifier chain, @NotNull @NotNull Collection<ChainStageResult> stages, int numberOfResults)
Description copied from interface:ChainResultManager
Calculates average duration of provided stages execution- Specified by:
getAverageProgressDurationForStages
in interfaceChainResultManager
stages
- stages for current execution of plan included in calculationnumberOfResults
- number of previous executions included in calculations- Returns:
-
createRepositorySpecFailedResult
public void createRepositorySpecFailedResult(@NotNull @NotNull ImmutableChain plan, @NotNull @NotNull VcsRepositoryData repositoryData, @NotNull @NotNull BuildChanges buildChanges, int buildNumber, @NotNull @NotNull VcsLocationBambooSpecsState specsState)
Description copied from interface:ChainResultManager
Create and save chain result for plan which was not updated when Repository stored specs execution was failed- Specified by:
createRepositorySpecFailedResult
in interfaceChainResultManager
-
createRepositorySpecSuccessResult
public void createRepositorySpecSuccessResult(@NotNull @NotNull ImmutableChain plan, @NotNull @NotNull VcsRepositoryData repositoryData, @NotNull @NotNull BuildChanges buildChanges, int buildNumber)
Description copied from interface:ChainResultManager
Create and save chain result for plan which was updated when Repository stored specs executed- Specified by:
createRepositorySpecSuccessResult
in interfaceChainResultManager
-
-