Package com.atlassian.bamboo.plan.cache
Class ImmutablePlanManagerImpl
- java.lang.Object
-
- com.atlassian.bamboo.plan.cache.ImmutablePlanManagerImpl
-
- All Implemented Interfaces:
ImmutablePlanManager
public class ImmutablePlanManagerImpl extends Object implements ImmutablePlanManager
- Since:
- v3.4
-
-
Constructor Summary
Constructors Constructor Description ImmutablePlanManagerImpl(PlanManager planManager, PlanDtoManager planDtoManager, ResultsSummaryManager resultsSummaryManager, BuildDefinitionManager buildDefinitionManager, BuildLoggerManager buildLoggerManager, LabelManager labelManager, RepositoryDefinitionManager repositoryDefinitionManager, TaskManager taskManager, TriggerManager triggerManager, VariableDefinitionManager variableDefinitionManager, BambooSpecsManager bambooSpecsManager, NotificationManager notificationManager, RequirementManager requirementManager, VersionDao versionDao)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @NotNull ImmutableChaincreateImmutableChain(@NotNull Chain chain)@NotNull ImmutableJobcreateImmutableJob(@NotNull ImmutableChain parent, @NotNull ImmutableChainStage stage, @NotNull Job job)@NotNull ImmutableJobcreateImmutableJobBasedOnDto(@NotNull ImmutableChain parent, @NotNull ImmutableChainStage stage, @NotNull EnrichedPlanDto jobDto, @NotNull Map<Long,EnrichedPlanDto> jobsGroupedById, boolean isLightWeight)Create immutableImmutableJob.ImmutableChainStagecreateImmutableStage(@NotNull ImmutableChain parent, @NotNull ChainStage stage)Create immutableChainStage.@NotNull ImmutableChainStagecreateImmutableStageBasedOnDto(@NotNull ImmutableChain parent, @NotNull FlatChainStageDto stageDto, @NotNull Map<Long,List<EnrichedPlanDto>> jobsGroupedByStageId, @NotNull Map<Long,EnrichedPlanDto> jobsGroupedById, boolean isLightWeight)Create immutableChainStage.ChainResultDetailsgetChainResultDetails(PlanResultKey planResultKey)@Nullable ImmutableResultsSummarygetLatestResultForPlan(@NotNull ImmutableChain immutableChain)@Nullable ImmutableResultsSummarygetLatestResultForPlan(PlanKey planKey)@Nullable ImmutableChaingetPlanByKey(@NotNull PlanKey planKey)@NotNull Map<Long,Long>getPlanVersions(@NotNull Set<Long> planIds)Gets the plans' versions corresponding to the given ids.@NotNull List<ImmutableChain>loadAllPlans(ForkJoinPool executorService)Get all available plans.
-
-
-
Constructor Detail
-
ImmutablePlanManagerImpl
public ImmutablePlanManagerImpl(PlanManager planManager, PlanDtoManager planDtoManager, ResultsSummaryManager resultsSummaryManager, BuildDefinitionManager buildDefinitionManager, BuildLoggerManager buildLoggerManager, LabelManager labelManager, RepositoryDefinitionManager repositoryDefinitionManager, TaskManager taskManager, TriggerManager triggerManager, VariableDefinitionManager variableDefinitionManager, BambooSpecsManager bambooSpecsManager, NotificationManager notificationManager, RequirementManager requirementManager, VersionDao versionDao)
-
-
Method Detail
-
getPlanByKey
@Nullable public @Nullable ImmutableChain getPlanByKey(@NotNull @NotNull PlanKey planKey)
- Specified by:
getPlanByKeyin interfaceImmutablePlanManager
-
getPlanVersions
@NotNull public @NotNull Map<Long,Long> getPlanVersions(@NotNull @NotNull Set<Long> planIds)
Description copied from interface:ImmutablePlanManagerGets the plans' versions corresponding to the given ids.- Specified by:
getPlanVersionsin interfaceImmutablePlanManager- Parameters:
planIds- list of plan ids- Returns:
- map of plan id to plan version
-
getLatestResultForPlan
@Nullable public @Nullable ImmutableResultsSummary getLatestResultForPlan(PlanKey planKey)
- Specified by:
getLatestResultForPlanin interfaceImmutablePlanManager
-
getLatestResultForPlan
@Nullable public @Nullable ImmutableResultsSummary getLatestResultForPlan(@NotNull @NotNull ImmutableChain immutableChain)
- Specified by:
getLatestResultForPlanin interfaceImmutablePlanManager
-
getChainResultDetails
public ChainResultDetails getChainResultDetails(PlanResultKey planResultKey)
- Specified by:
getChainResultDetailsin interfaceImmutablePlanManager
-
createImmutableChain
@NotNull public @NotNull ImmutableChain createImmutableChain(@NotNull @NotNull Chain chain)
- Specified by:
createImmutableChainin interfaceImmutablePlanManager
-
createImmutableJob
@NotNull public @NotNull ImmutableJob createImmutableJob(@NotNull @NotNull ImmutableChain parent, @NotNull @NotNull ImmutableChainStage stage, @NotNull @NotNull Job job)
- Specified by:
createImmutableJobin interfaceImmutablePlanManager- Parameters:
parent- instance of ImmutablePlanImplstage- instance of ImmutableChainStageImpl- Returns:
-
createImmutableStage
public ImmutableChainStage createImmutableStage(@NotNull @NotNull ImmutableChain parent, @NotNull @NotNull ChainStage stage)
Description copied from interface:ImmutablePlanManagerCreate immutableChainStage. Used to create immutable cached object from persisted entity.- Specified by:
createImmutableStagein interfaceImmutablePlanManager- Parameters:
parent-Chainobject (expecting an immutable object here as well)stage-ChainStageobject used as a source of all properties including jobs- Returns:
-
loadAllPlans
@NotNull public @NotNull List<ImmutableChain> loadAllPlans(ForkJoinPool executorService)
Description copied from interface:ImmutablePlanManagerGet all available plans. This method is a very heavy one and the execution may take a long time.- Specified by:
loadAllPlansin interfaceImmutablePlanManager
-
createImmutableStageBasedOnDto
@NotNull public @NotNull ImmutableChainStage createImmutableStageBasedOnDto(@NotNull @NotNull ImmutableChain parent, @NotNull @NotNull FlatChainStageDto stageDto, @NotNull @NotNull Map<Long,List<EnrichedPlanDto>> jobsGroupedByStageId, @NotNull @NotNull Map<Long,EnrichedPlanDto> jobsGroupedById, boolean isLightWeight)
Description copied from interface:ImmutablePlanManagerCreate immutableChainStage. Used to create immutable cached object from flat components - dto.- Specified by:
createImmutableStageBasedOnDtoin interfaceImmutablePlanManager- Parameters:
parent-Chainobject (expecting an immutable object here as well)stageDto-FlatChainStageDtoflat object used as a source of core attributesjobsGroupedByStageId- Map of flat job objects grouped by stage idjobsGroupedById- Map of flat job objects grouped by their main idisLightWeight- informs whether it is a derived stage from a lightweight branch or not- Returns:
-
createImmutableJobBasedOnDto
@NotNull public @NotNull ImmutableJob createImmutableJobBasedOnDto(@NotNull @NotNull ImmutableChain parent, @NotNull @NotNull ImmutableChainStage stage, @NotNull @NotNull EnrichedPlanDto jobDto, @NotNull @NotNull Map<Long,EnrichedPlanDto> jobsGroupedById, boolean isLightWeight)
Description copied from interface:ImmutablePlanManagerCreate immutableImmutableJob. Used to create immutable cached object from flat components - dto.- Specified by:
createImmutableJobBasedOnDtoin interfaceImmutablePlanManager- Parameters:
parent-Chainobject (expecting an immutable object here as well)stage-ChainStageobject (expecting an immutable object here as well)jobDto-EnrichedPlanDtoflat object used as a source of core attributesjobsGroupedById- Map of flat job objects grouped by their main idisLightWeight- informs whether it is a derived job from a lightweight branch or not- Returns:
-
-