com.atlassian.bamboo.plan.artifact
Class ArtifactDefinitionManagerImpl

java.lang.Object
  extended by com.atlassian.bamboo.plan.artifact.ArtifactDefinitionManagerImpl
All Implemented Interfaces:
ArtifactDefinitionManager

public class ArtifactDefinitionManagerImpl
extends java.lang.Object
implements ArtifactDefinitionManager


Constructor Summary
ArtifactDefinitionManagerImpl(ArtifactDefinitionDao artifactDefinitionDao)
           
 
Method Summary
 java.util.Map<ArtifactDefinition,ArtifactDefinition> cloneArtifactDefinitions(Job sourcePlan, Job targetPlan)
          Creates artifact definitions objects for a Buildable plan based according to definitions associated with input Buildable plan.
 java.util.Map<ArtifactDefinition,ArtifactDefinition> cloneArtifactDefinitions(Job sourcePlan, Job targetPlan, boolean preserveSharedFlag)
          Creates artifact definitions objects for a Buildable plan based according to definitions associated with input Buildable plan.
 ArtifactDefinition findArtifactDefinition(long id)
          Get artifact definition of specified id
 ArtifactDefinition findArtifactDefinition(Plan plan, java.lang.String label)
          Get artifact definition associated with a plan of a given label
 java.util.List<ArtifactDefinition> findArtifactDefinitionsByPlan(ImmutablePlan plan)
          Get list of artifact definitions associated with a plan
 com.google.common.collect.Multimap<Job,ArtifactDefinition> getArtifactDefinitionsByJob(Chain chain, com.google.common.base.Predicate<ArtifactDefinitionBase> predicate)
          Get ArtifactDefinition grouped by Job
 boolean isArtifactDefinitionNameUniqueInChain(ArtifactDefinition artifactDefinition)
          Test if artifact definition's name is unique within a chain that producer plan belongs to.
 boolean isArtifactDefinitionNameUniqueInJob(ArtifactDefinition artifactDefinition)
          Test if artifact definition's name is unique within a producer job.
 void removeArtifactDefinition(ArtifactDefinition artifactDefinition)
          Remove artifact definition.
 void removeArtifactDefinitionsByPlan(Plan plan)
          Remove all artifact definitions associated with a plan.
 void saveArtifactDefinition(ArtifactDefinition artifactDefinition)
          Save artifact definition.
 void saveArtifactDefinitions(java.util.Collection<ArtifactDefinition> artifactsDefinitions)
          Save all artifact definitions in a collection.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ArtifactDefinitionManagerImpl

public ArtifactDefinitionManagerImpl(ArtifactDefinitionDao artifactDefinitionDao)
Method Detail

findArtifactDefinition

@Nullable
public ArtifactDefinition findArtifactDefinition(long id)
Description copied from interface: ArtifactDefinitionManager
Get artifact definition of specified id

Specified by:
findArtifactDefinition in interface ArtifactDefinitionManager
Parameters:
id - id of artifact definition
Returns:
artifact definition of specified id or null if not found

findArtifactDefinition

@Nullable
public ArtifactDefinition findArtifactDefinition(@NotNull
                                                          Plan plan,
                                                          @NotNull
                                                          java.lang.String label)
Description copied from interface: ArtifactDefinitionManager
Get artifact definition associated with a plan of a given label

Specified by:
findArtifactDefinition in interface ArtifactDefinitionManager
Parameters:
plan - plan which associated artifact definition should be retrieved
label - label to search among plan's artifact definitions
Returns:
artifact definition matching plan and label or null if not found

findArtifactDefinitionsByPlan

@NotNull
public java.util.List<ArtifactDefinition> findArtifactDefinitionsByPlan(@NotNull
                                                                                ImmutablePlan plan)
Description copied from interface: ArtifactDefinitionManager
Get list of artifact definitions associated with a plan

Specified by:
findArtifactDefinitionsByPlan in interface ArtifactDefinitionManager
Parameters:
plan - plan which associated artifact definitions should be retrieved
Returns:
list of artifact definitions

removeArtifactDefinition

public void removeArtifactDefinition(@NotNull
                                     ArtifactDefinition artifactDefinition)
Description copied from interface: ArtifactDefinitionManager
Remove artifact definition.

Specified by:
removeArtifactDefinition in interface ArtifactDefinitionManager
Parameters:
artifactDefinition - ArtifactDefinition to be removed

removeArtifactDefinitionsByPlan

public void removeArtifactDefinitionsByPlan(@NotNull
                                            Plan plan)
Description copied from interface: ArtifactDefinitionManager
Remove all artifact definitions associated with a plan.

Specified by:
removeArtifactDefinitionsByPlan in interface ArtifactDefinitionManager
Parameters:
plan - plan which associated artifact definitions should be removed

saveArtifactDefinition

public void saveArtifactDefinition(@NotNull
                                   ArtifactDefinition artifactDefinition)
Description copied from interface: ArtifactDefinitionManager
Save artifact definition.

Specified by:
saveArtifactDefinition in interface ArtifactDefinitionManager
Parameters:
artifactDefinition - object to be saved/updated

saveArtifactDefinitions

public void saveArtifactDefinitions(@NotNull
                                    java.util.Collection<ArtifactDefinition> artifactsDefinitions)
Description copied from interface: ArtifactDefinitionManager
Save all artifact definitions in a collection.

Specified by:
saveArtifactDefinitions in interface ArtifactDefinitionManager
Parameters:
artifactsDefinitions - collection of objects to be saved/updated

cloneArtifactDefinitions

@NotNull
public java.util.Map<ArtifactDefinition,ArtifactDefinition> cloneArtifactDefinitions(@NotNull
                                                                                             Job sourcePlan,
                                                                                             @NotNull
                                                                                             Job targetPlan)
Description copied from interface: ArtifactDefinitionManager
Creates artifact definitions objects for a Buildable plan based according to definitions associated with input Buildable plan. This method does not persist the objects. SharedArtifact flags are copied.

Specified by:
cloneArtifactDefinitions in interface ArtifactDefinitionManager
Parameters:
sourcePlan - plan which associated artifact definitions should be cloned
targetPlan - plan for which artifacts should be created
Returns:
map of original and cloned artifact definitions

cloneArtifactDefinitions

@NotNull
public java.util.Map<ArtifactDefinition,ArtifactDefinition> cloneArtifactDefinitions(@NotNull
                                                                                             Job sourcePlan,
                                                                                             @NotNull
                                                                                             Job targetPlan,
                                                                                             boolean preserveSharedFlag)
Description copied from interface: ArtifactDefinitionManager
Creates artifact definitions objects for a Buildable plan based according to definitions associated with input Buildable plan. This method does not persist the objects.

Specified by:
cloneArtifactDefinitions in interface ArtifactDefinitionManager
Parameters:
sourcePlan - plan which associated artifact definitions should be cloned
targetPlan - plan for which artifacts should be created
preserveSharedFlag - false will degrade all the artifacts to job level artifacts
Returns:
map of original and cloned artifact definitions

isArtifactDefinitionNameUniqueInChain

public boolean isArtifactDefinitionNameUniqueInChain(@NotNull
                                                     ArtifactDefinition artifactDefinition)
Description copied from interface: ArtifactDefinitionManager
Test if artifact definition's name is unique within a chain that producer plan belongs to. That check is performed only if ArtifactDefinitionBase.isSharedArtifact() returns true. If ArtifactDefinitionBase.isSharedArtifact() returns false this method will always return true.

Specified by:
isArtifactDefinitionNameUniqueInChain in interface ArtifactDefinitionManager
Parameters:
artifactDefinition - artifact definition to be validated
Returns:
true if name is unique or sharedArtifact flag is set to false

isArtifactDefinitionNameUniqueInJob

public boolean isArtifactDefinitionNameUniqueInJob(@NotNull
                                                   ArtifactDefinition artifactDefinition)
Description copied from interface: ArtifactDefinitionManager
Test if artifact definition's name is unique within a producer job.

Specified by:
isArtifactDefinitionNameUniqueInJob in interface ArtifactDefinitionManager
Parameters:
artifactDefinition - artifact definition to be validated
Returns:
true if name is unique

getArtifactDefinitionsByJob

public com.google.common.collect.Multimap<Job,ArtifactDefinition> getArtifactDefinitionsByJob(@NotNull
                                                                                              Chain chain,
                                                                                              com.google.common.base.Predicate<ArtifactDefinitionBase> predicate)
Get ArtifactDefinition grouped by Job

Specified by:
getArtifactDefinitionsByJob in interface ArtifactDefinitionManager
Parameters:
chain -
predicate - for filtering definition types
Returns:


Copyright © 2012 Atlassian. All Rights Reserved.