com.atlassian.bamboo.labels
Interface LabelManager

All Known Implementing Classes:
LabelManagerImpl

public interface LabelManager


Field Summary
static java.lang.String BUILDRESULT_LABEL_NAMESPACE
          Not really accurately named.
static int DEFAULT_MAX_RESULTS
           
static java.lang.String FAVOURITE_LABEL_NAME
           
static java.lang.String FAVOURITE_UNMARK_LABEL_NAME
           
static int LABEL_ADDED_TO_BUILD_RESULT
           
static int LABEL_CREATED
           
static int LABEL_DELETED
           
static int LABEL_REMOVED_FROM_BUILD_RESULT
           
static int NO_CHANGE
           
 
Method Summary
 int addFavourite(Plan plan, com.atlassian.user.User user)
          Adds a build to a user as favourite.
 int addLabel(java.lang.String labelName, PlanKey planKey, com.atlassian.user.User user)
          Creates a normal label for a plan
 int addLabel(java.lang.String labelName, PlanResultKey planResultKey, com.atlassian.user.User user)
          Add a label against a build result.
 java.util.List<ResultsSummary> findBuildResultsSummaryByLabel(java.lang.String labelName)
          Finds all ResultsSummary labelled with given labelname
 java.util.List<LabelCount> findLabels(java.lang.String namespace, int maxResults, Plan plan, Project project)
          Finds all labels in a given build, with namespace and maxResults.
 java.util.List<Label> findLabelsByMatchingString(java.lang.String match, java.lang.String escapeChar)
          Find all labels that match the specified string.
 java.util.Set<Label> getAllPlanLabels()
          All labels used on a plan level
 java.util.List<java.lang.String> getFavouritesForPlan(Plan plan)
          Retrieves a list of usernames which have the given plan set as a favourite.
 java.util.Collection<Label> getLabelsByName(java.util.List<java.lang.String> labelNames)
          Gets list of labels based on label names
 java.util.Set<Label> getPlanLabels(ImmutablePlan plan)
          Get labels defined for a plan
 boolean hasBuildResultsLabel(ResultsSummary buildResultsSummary, java.lang.String label)
          Checks whether the build results summary has a particular label
 boolean hasPlanLabel(Plan plan, java.lang.String label)
          Checks whether the build results summary has a particular label
 boolean isFavourite(ImmutablePlan plan, com.atlassian.user.User user)
          Determines if the build is a user's favourite Note that its more efficient to use PlanManager.filterFavouritedPlans(java.util.Collection, com.atlassian.user.User) if you are performing this operation over a collection of Plans
 boolean isManuallyUnmarkedFavourite(Plan plan, com.atlassian.user.User user)
          Flag which determines if the user has manually unmarked this build as favourite.
 int removeFavourite(Plan plan, com.atlassian.user.User user)
          Removes a build from a user's favourite.
 int removeLabel(java.lang.String labelName, PlanKey planKey, com.atlassian.user.User user)
          Remove the standard label for a plan (not all the labels for that plan)
 int removeLabel(java.lang.String labelName, PlanResultKey planResultKey, com.atlassian.user.User user)
          Removes a label against a build result.
 void saveLabelling(Labelling labelling)
          Saves a specific labelling - does not do any validation or checking.
 

Field Detail

NO_CHANGE

static final int NO_CHANGE
See Also:
Constant Field Values

LABEL_CREATED

static final int LABEL_CREATED
See Also:
Constant Field Values

LABEL_ADDED_TO_BUILD_RESULT

static final int LABEL_ADDED_TO_BUILD_RESULT
See Also:
Constant Field Values

LABEL_DELETED

static final int LABEL_DELETED
See Also:
Constant Field Values

LABEL_REMOVED_FROM_BUILD_RESULT

static final int LABEL_REMOVED_FROM_BUILD_RESULT
See Also:
Constant Field Values

BUILDRESULT_LABEL_NAMESPACE

static final java.lang.String BUILDRESULT_LABEL_NAMESPACE
Not really accurately named. Used for all labels types

See Also:
Constant Field Values

FAVOURITE_LABEL_NAME

static final java.lang.String FAVOURITE_LABEL_NAME
See Also:
Constant Field Values

FAVOURITE_UNMARK_LABEL_NAME

static final java.lang.String FAVOURITE_UNMARK_LABEL_NAME
See Also:
Constant Field Values

DEFAULT_MAX_RESULTS

static final int DEFAULT_MAX_RESULTS
See Also:
Constant Field Values
Method Detail

addLabel

int addLabel(@Nullable
             java.lang.String labelName,
             @Nullable
             PlanResultKey planResultKey,
             @Nullable
             com.atlassian.user.User user)
Add a label against a build result.

Parameters:
labelName -
planResultKey -
user -
Returns:
an int identifying result of add process

removeLabel

int removeLabel(java.lang.String labelName,
                PlanResultKey planResultKey,
                com.atlassian.user.User user)
Removes a label against a build result. Will delete the Label entity if there are no more build results tied to it.

Parameters:
labelName -
planResultKey -
user -
Returns:
an int identifying result of delete process

findBuildResultsSummaryByLabel

@NotNull
java.util.List<ResultsSummary> findBuildResultsSummaryByLabel(java.lang.String labelName)
Finds all ResultsSummary labelled with given labelname

Parameters:
labelName -
Returns:
List of ResultsSummary

findLabels

@NotNull
java.util.List<LabelCount> findLabels(@NotNull
                                              java.lang.String namespace,
                                              int maxResults,
                                              @Nullable
                                              Plan plan,
                                              @Nullable
                                              Project project)
Finds all labels in a given build, with namespace and maxResults.

Parameters:
namespace -
maxResults -
plan -
project - @return List of LabelCount objects, mapping (Label to count of occurrences.

findLabelsByMatchingString

java.util.List<Label> findLabelsByMatchingString(java.lang.String match,
                                                 java.lang.String escapeChar)
Find all labels that match the specified string. Uses wildcard matching, eg LIKE %name%

Parameters:
match -
escapeChar -
Returns:
list of labels

addFavourite

int addFavourite(Plan plan,
                 com.atlassian.user.User user)
Adds a build to a user as favourite. Adds a label to the build, with namespace = user name, and label name = ":favourite".

Parameters:
plan -
user -
Returns:
an int identifying result of add process

removeFavourite

int removeFavourite(@NotNull
                    Plan plan,
                    @Nullable
                    com.atlassian.user.User user)
Removes a build from a user's favourite. Removes labelling object, where namespace = user name, and label name=":favourite".

Parameters:
plan -
user -
Returns:
an int identifying result of removal process

isFavourite

boolean isFavourite(ImmutablePlan plan,
                    com.atlassian.user.User user)
Determines if the build is a user's favourite Note that its more efficient to use PlanManager.filterFavouritedPlans(java.util.Collection, com.atlassian.user.User) if you are performing this operation over a collection of Plans

Parameters:
plan -
user -
Returns:
boolean yes or no

isManuallyUnmarkedFavourite

boolean isManuallyUnmarkedFavourite(@NotNull
                                    Plan plan,
                                    @Nullable
                                    com.atlassian.user.User user)
Flag which determines if the user has manually unmarked this build as favourite.

Parameters:
plan -
user -
Returns:
boolean flag

getFavouritesForPlan

java.util.List<java.lang.String> getFavouritesForPlan(Plan plan)
Retrieves a list of usernames which have the given plan set as a favourite.

Parameters:
plan -
Returns:
list of usernames (as Strings)

hasBuildResultsLabel

boolean hasBuildResultsLabel(ResultsSummary buildResultsSummary,
                             java.lang.String label)
Checks whether the build results summary has a particular label

Parameters:
buildResultsSummary - @NotNull
label - @NotNull . could be empty
Returns:
Returns true if there is a label object within the correct namespace and a labelling for the ResultsSummary

hasPlanLabel

boolean hasPlanLabel(Plan plan,
                     java.lang.String label)
Checks whether the build results summary has a particular label

Parameters:
plan - @NotNull
label - @NotNull . could be empty
Returns:
Returns true if there is a label object within the correct namespace and a labelling for the Plan

getLabelsByName

java.util.Collection<Label> getLabelsByName(java.util.List<java.lang.String> labelNames)
Gets list of labels based on label names

Parameters:
labelNames -
Returns:
list of labels for all existing labels specified in parameter

saveLabelling

void saveLabelling(Labelling labelling)
Saves a specific labelling - does not do any validation or checking. If not sure - please use addLabel or addFavourite instead

Parameters:
labelling - to save

addLabel

int addLabel(@Nullable
             java.lang.String labelName,
             @Nullable
             PlanKey planKey,
             @Nullable
             com.atlassian.user.User user)
Creates a normal label for a plan

Parameters:
labelName -
planKey -
user -
Returns:

removeLabel

int removeLabel(@Nullable
                java.lang.String labelName,
                @Nullable
                PlanKey planKey,
                @Nullable
                com.atlassian.user.User user)
Remove the standard label for a plan (not all the labels for that plan)

Parameters:
labelName -
planKey -
user -
Returns:

getAllPlanLabels

@NotNull
java.util.Set<Label> getAllPlanLabels()
All labels used on a plan level

Returns:
Set of Label related to any plan

getPlanLabels

java.util.Set<Label> getPlanLabels(@NotNull
                                   ImmutablePlan plan)
Get labels defined for a plan

Parameters:
plan - Plan to filter labels with
Returns:
Set of Label related to the plan


Copyright © 2012 Atlassian. All Rights Reserved.