Class PlanDependencyManagerImpl

java.lang.Object
com.atlassian.bamboo.build.PlanDependencyManagerImpl
All Implemented Interfaces:
PlanDependencyManager

public class PlanDependencyManagerImpl extends Object implements PlanDependencyManager
  • Constructor Details

  • Method Details

    • getAllDependencies

      @NotNull public @NotNull Set<PlanDependency> getAllDependencies()
      Retrieves all dependency relationships in the system regardless of the plan involved
      Specified by:
      getAllDependencies in interface PlanDependencyManager
      Returns:
      all plan dependencies.
    • getChildPlanDependencies

      @NotNull public @NotNull Set<PlanDependency> getChildPlanDependencies(@NotNull @NotNull PlanIdentifier plan)
      Description copied from interface: PlanDependencyManager
      Retrieves all plan dependencies in which the given plan features as a parent
      Specified by:
      getChildPlanDependencies in interface PlanDependencyManager
      Parameters:
      plan - - the parent
      Returns:
      set of all children of the given plan
    • getParentChainKeys

      @NotNull public @NotNull Set<String> getParentChainKeys(@NotNull @NotNull PlanIdentifier plan)
      Description copied from interface: PlanDependencyManager
      Retrieves all chain that are children of the current plan
      Specified by:
      getParentChainKeys in interface PlanDependencyManager
      Parameters:
      plan - - the parent
      Returns:
      set of chain keys representing all children of the given plan
    • getChildChainKeys

      @NotNull public @NotNull Set<String> getChildChainKeys(@NotNull @NotNull PlanIdentifier plan)
      Description copied from interface: PlanDependencyManager
      Retrieves all chain that are children of the current plan
      Specified by:
      getChildChainKeys in interface PlanDependencyManager
      Parameters:
      plan - - the parent
      Returns:
      set of chain keys representing all children of the given plan
    • getNotEditableChildKeys

      @NotNull public @NotNull Set<String> getNotEditableChildKeys(@NotNull @NotNull PlanIdentifier plan)
      Description copied from interface: PlanDependencyManager
      Retrieves a list of keys representing the children that are not editable of the given plan
      Specified by:
      getNotEditableChildKeys in interface PlanDependencyManager
      Parameters:
      plan - parent
      Returns:
      Set of un-editable dependencies representing the children of the given plan
    • getNotEditableParentKeys

      @NotNull public @NotNull Set<String> getNotEditableParentKeys(@NotNull @NotNull PlanIdentifier plan)
      Description copied from interface: PlanDependencyManager
      Retrieves a list of keys representing the children that are not editable of the given plan
      Specified by:
      getNotEditableParentKeys in interface PlanDependencyManager
      Parameters:
      plan - parent
      Returns:
      Set of un-editable dependencies representing the children of the given plan
    • getParentPlanDependencies

      @NotNull public @NotNull Set<PlanDependency> getParentPlanDependencies(@NotNull @NotNull PlanIdentifier plan)
      Description copied from interface: PlanDependencyManager
      Retrieves all plan dependencies in which the given plan features as a child
      Specified by:
      getParentPlanDependencies in interface PlanDependencyManager
      Parameters:
      plan - - the child
      Returns:
      newly created set of all parents to the given plan
    • removeAllDependenciesForPlan

      public void removeAllDependenciesForPlan(@NotNull @NotNull PlanIdentifier plan)
      Description copied from interface: PlanDependencyManager
      Deletes any existing dependency featuring the given plan. Used when deleting a plan.
      Specified by:
      removeAllDependenciesForPlan in interface PlanDependencyManager
      Parameters:
      plan - to be removed
    • getChildPlanKeys

      @NotNull public @NotNull Set<String> getChildPlanKeys(@NotNull @NotNull PlanIdentifier plan)
      Description copied from interface: PlanDependencyManager
      Retrievs all plan that are children of the current plan
      Specified by:
      getChildPlanKeys in interface PlanDependencyManager
      Parameters:
      plan - - the parent
      Returns:
      set of plan keys representing all children of the given plan
    • getParentPlanKeys

      @NotNull public @NotNull Set<String> getParentPlanKeys(@NotNull @NotNull PlanIdentifier plan)
      Description copied from interface: PlanDependencyManager
      Retrievs all plans that are a parent of the current plan
      Specified by:
      getParentPlanKeys in interface PlanDependencyManager
      Parameters:
      plan - - the child
      Returns:
      set of plan keys representing all parents of the given plan
    • validateChildDependencyList

      @NotNull public @NotNull ErrorCollection validateChildDependencyList(@NotNull @NotNull String dependencyType, @NotNull @NotNull Plan plan, @NotNull @NotNull Set<PlanKey> newChildPlanKeys, boolean overwriteExisting)
      Description copied from interface: PlanDependencyManager
      Validate child dependency list
      Specified by:
      validateChildDependencyList in interface PlanDependencyManager
    • adjustChildDependencyList

      public void adjustChildDependencyList(@NotNull @NotNull String dependencyType, @NotNull @NotNull Plan plan, @NotNull @NotNull Set<PlanKey> newChildPlanKeys, boolean overwriteExisting)
      Description copied from interface: PlanDependencyManager
      Update the existing children dependencies of the given plan and dependency Type to match the provided list of new children.
      Specified by:
      adjustChildDependencyList in interface PlanDependencyManager
      Parameters:
      dependencyType - of the dependencies being adjusted
      plan - parent
      newChildPlanKeys - the new list of parents (as plan keys)
      overwriteExisting - whether or not to overwrite any existing dependencies (of a different type) with one of the new type
    • adjustParentDependencyList

      public void adjustParentDependencyList(@NotNull @NotNull String dependencyKey, @NotNull @NotNull Plan childPlan, @NotNull @NotNull Set<PlanKey> newParentPlanKeys, boolean overwriteExisting)
      Description copied from interface: PlanDependencyManager
      Update the existing parent dependencies of the given plan and dependency Type to match the provided list of new parents.
      Specified by:
      adjustParentDependencyList in interface PlanDependencyManager
      Parameters:
      dependencyKey - of the dependencies being adjusted
      childPlan - parent
      newParentPlanKeys - the new list of parents (as plan keys)
      overwriteExisting - whether or not to overwrite any existing dependencies (of a different type) with one of the new type
    • savePlanDependency

      public boolean savePlanDependency(@Nullable @Nullable PlanDependency dependency)
      Description copied from interface: PlanDependencyManager
      Save the given dependency. Will check if it exists or if the dependency is invalid.
      Specified by:
      savePlanDependency in interface PlanDependencyManager
      Parameters:
      dependency - to save
      Returns:
      true if it saved it, false otherwise
    • getEffectiveChildPlans

      public Set<ImmutablePlan> getEffectiveChildPlans(@NotNull @NotNull ImmutablePlan chain)
      Specified by:
      getEffectiveChildPlans in interface PlanDependencyManager
    • getEffectiveParentPlans

      public Set<ImmutablePlan> getEffectiveParentPlans(@NotNull @NotNull ImmutablePlan chain)
      Specified by:
      getEffectiveParentPlans in interface PlanDependencyManager