@PublicApi
public interface FavouritesManager<S extends SharedEntity>
Modifier and Type | Method and Description |
---|---|
void |
addFavourite(ApplicationUser user,
S entity)
Add the given entity as a favourite of the user passed in add to favourites count if necessary.
|
void |
addFavouriteInPosition(ApplicationUser user,
S entity,
long position)
Add the given entity as a favourite of the user passed in, in the specified position, add to favourites count if necessary.
|
void |
decreaseFavouriteSequence(ApplicationUser user,
S entity)
Decreases the position of the
SharedEntity relative to the user's set of all other entities of the same type. |
Collection<Long> |
getFavouriteIds(ApplicationUser user,
SharedEntity.TypeDescriptor<S> entityType)
Get the ids of a user's favourite Entities for a given entity type
|
void |
increaseFavouriteSequence(ApplicationUser user,
S entity)
Increases the position of the
SharedEntity relative to the user's set of all other entities of the same type. |
boolean |
isFavourite(ApplicationUser user,
S entity)
Check to see if the given entity is a favourite of the user passed in.
|
void |
moveToEndFavouriteSequence(ApplicationUser user,
S entity)
Moves the position of the
SharedEntity to the end relative to the user's set of all other entities of the same type. |
void |
moveToStartFavouriteSequence(ApplicationUser user,
S entity)
Moves the position of the
SharedEntity to the start relative to the user's set of all other entities of the same type. |
void |
removeFavourite(ApplicationUser user,
S entity)
Remove the given entity as a favourite of the user passed in.
|
void |
removeFavouritesForEntityDelete(SharedEntity entity)
Remove all favourite associations for a given entity for entity deletion.
|
void |
removeFavouritesForUser(ApplicationUser user,
SharedEntity.TypeDescriptor<S> entityType)
Remove the favourite associations for the given User and the given type
|
void addFavourite(ApplicationUser user, S entity) throws PermissionException
user
- The user adding the favouriteentity
- The entity to favouritePermissionException
- when trying to add a filter as favourite when you have no permissionsvoid addFavouriteInPosition(ApplicationUser user, S entity, long position) throws PermissionException
user
- The user adding the favouriteentity
- The entity to favouriteposition
- the position in which this entity should be added in the favourites order.PermissionException
- when trying to add a filter as favourite when you have no permissionsvoid removeFavourite(ApplicationUser user, S entity)
user
- The user removing the favouriteentity
- The entity to favouriteboolean isFavourite(ApplicationUser user, S entity) throws PermissionException
user
- The user checking the favouriteentity
- The entity to favouritePermissionException
- when checking a filter with no permissionCollection<Long> getFavouriteIds(ApplicationUser user, SharedEntity.TypeDescriptor<S> entityType)
user
- The user for the associated entities. Can not be null.entityType
- The type of entities to get. E.g. SearchRequest.ENTITY_TYPE. Can not be null.IllegalArgumentException
- for null user or entity typevoid removeFavouritesForUser(ApplicationUser user, SharedEntity.TypeDescriptor<S> entityType)
user
- The ApplicationUser
with whom to disassociate entitiesentityType
- The type of entity to disassociate user with.void removeFavouritesForEntityDelete(SharedEntity entity)
entity
- The entity that is being deletedvoid increaseFavouriteSequence(ApplicationUser user, S entity) throws PermissionException
SharedEntity
relative to the user's set of all other entities of the same type.user
- the user whom the entity belongs toentity
- The entity in questionPermissionException
- when the user does not have permission to perform the action.void decreaseFavouriteSequence(ApplicationUser user, S entity) throws PermissionException
SharedEntity
relative to the user's set of all other entities of the same type.user
- the user whom the entity belongs toentity
- The entity in questionPermissionException
- when the user does not have permission to perform the action.void moveToStartFavouriteSequence(ApplicationUser user, S entity) throws PermissionException
SharedEntity
to the start relative to the user's set of all other entities of the same type.user
- the user whom the entity belongs toentity
- The entity in questionPermissionException
- when the user does not have permission to perform the action.void moveToEndFavouriteSequence(ApplicationUser user, S entity) throws PermissionException
SharedEntity
to the end relative to the user's set of all other entities of the same type.user
- the user whom the entity belongs toentity
- The entity in questionPermissionException
- when the user does not have permission to perform the action.Copyright © 2002-2021 Atlassian. All Rights Reserved.