Package com.atlassian.bamboo.plan
Interface PlanFavouriteService
-
- All Known Implementing Classes:
PlanFavouriteServiceImpl
@PublicApi public interface PlanFavouriteService
Service for managing the plan 'favourite' flag. Methods of this service should not be called from within transaction.- Since:
- 3.1
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description int
addFavourite(@NotNull Plan plan, @Nullable com.atlassian.user.User user, boolean honourManuallyUnmarked)
Mark plan as a favourite for a user.boolean
isFavourite(@NotNull ImmutablePlan plan, @Nullable com.atlassian.user.User user)
Test if plan is set as favourite for a user.int
removeFavourite(@NotNull Plan plan, @Nullable com.atlassian.user.User user)
Remove plan from the user's favourite list and mark it "manually marked not favourite"int
toggleFavourite(@NotNull Plan plan, @Nullable com.atlassian.user.User user)
Toggle the plan's favourite status for a user.
-
-
-
Method Detail
-
isFavourite
boolean isFavourite(@NotNull @NotNull ImmutablePlan plan, @Nullable @Nullable com.atlassian.user.User user)
Test if plan is set as favourite for a user.- Parameters:
plan
- Plan to be testeduser
- User whose favourite plans would be examined- Returns:
- True if plan is marked as favourite for a user, false otherwise.
-
addFavourite
int addFavourite(@NotNull @NotNull Plan plan, @Nullable @Nullable com.atlassian.user.User user, boolean honourManuallyUnmarked)
Mark plan as a favourite for a user. If the honourManuallyUnmarked flag is set, plan is verified if it is not "manually marked not favourite". If the latter is true then plan is not marked favourite.- Parameters:
plan
- Plan to be marked as a favouriteuser
- User whose favourites will be modifiedhonourManuallyUnmarked
- If this flag is set then additional check is per- Returns:
- Status of operation as specified in LabelManager
-
removeFavourite
int removeFavourite(@NotNull @NotNull Plan plan, @Nullable @Nullable com.atlassian.user.User user)
Remove plan from the user's favourite list and mark it "manually marked not favourite"- Parameters:
plan
- Plan to be marked as a favouriteuser
- User whose favourites will be modified- Returns:
- Status of operation as specified in LabelManager
-
toggleFavourite
int toggleFavourite(@NotNull @NotNull Plan plan, @Nullable @Nullable com.atlassian.user.User user)
Toggle the plan's favourite status for a user. Depending on the current 'favourite' status either addFavourite or removeFavourite is executed internally. This operation was pulled to this service to make it atomic.- Parameters:
plan
- Plan which favourite status will be set/cleareduser
- User whose favourites will be modified- Returns:
- Status of operation as specified in LabelManager
-
-