Class LabelPermissionEnforcerImpl
java.lang.Object
com.atlassian.confluence.impl.labels.LabelPermissionEnforcerImpl
- All Implemented Interfaces:
LabelPermissionEnforcer
Performs permission checking for label editing actions
- Since:
- 6.9.0
-
Constructor Summary
ConstructorsConstructorDescriptionLabelPermissionEnforcerImpl(PermissionManager permissionManager, AccessModeService accessModeService, SiteSearchPermissionsQueryFactory siteSearchPermissionsQueryFactory, SearchManager searchManager) -
Method Summary
Modifier and TypeMethodDescriptionfilterAuthorizedLabels(List<Label> labels) Filters a list of label objects, removing any that the logged-in user is not authorized to access.filterLabelsByNamespace(List labelList, @Nullable com.atlassian.user.User user, Namespace namespace) Takes a list of label objects and filters out those not in the specified namespacefilterVisibleLabels(List labelList, @Nullable com.atlassian.user.User user, boolean hideSpecialLabels) Filters a list of label objects, removing any that are not visible to the specified user by checking the label's namespace.booleanisLabelableByUser(Labelable object) Checks that the object permits labels to be edited by the logged in user.booleanuserCanEditLabel(Label label, Labelable object) Check if the user can edit a label of an objectbooleanuserCanEditLabel(ParsedLabelName ref, Labelable object) Check if the user can edit a label of an objectbooleanuserCanEditLabelOrIsSpaceAdmin(Label label, SpaceContentEntityObject object) Check if the user can edit a label of a space object or a space adminbooleanuserCanViewLabel(Label label) Determines whether a given label is viewable by the logged-in user.booleanuserCanViewObject(Labelable object) Check if the user can view the labelable object
-
Constructor Details
-
LabelPermissionEnforcerImpl
public LabelPermissionEnforcerImpl(PermissionManager permissionManager, AccessModeService accessModeService, SiteSearchPermissionsQueryFactory siteSearchPermissionsQueryFactory, SearchManager searchManager)
-
-
Method Details
-
isLabelableByUser
Description copied from interface:LabelPermissionEnforcerChecks that the object permits labels to be edited by the logged in user.- Specified by:
isLabelableByUserin interfaceLabelPermissionEnforcer- Parameters:
object- - the object to be labelled, if null returns false.- Returns:
- true if permitted.
-
userCanEditLabel
Description copied from interface:LabelPermissionEnforcerCheck if the user can edit a label of an object- Specified by:
userCanEditLabelin interfaceLabelPermissionEnforcer- Parameters:
ref- the referen ce to the labelobject- the object associated with the label- Returns:
- true if permitted
-
userCanEditLabel
Description copied from interface:LabelPermissionEnforcerCheck if the user can edit a label of an object- Specified by:
userCanEditLabelin interfaceLabelPermissionEnforcer- Parameters:
label- the labelobject- the object associated with the label- Returns:
- true if permitted
-
userCanEditLabelOrIsSpaceAdmin
Description copied from interface:LabelPermissionEnforcerCheck if the user can edit a label of a space object or a space admin- Specified by:
userCanEditLabelOrIsSpaceAdminin interfaceLabelPermissionEnforcer- Parameters:
label- the labelobject- the space object- Returns:
- true if permitted
-
userCanViewObject
Description copied from interface:LabelPermissionEnforcerCheck if the user can view the labelable object- Specified by:
userCanViewObjectin interfaceLabelPermissionEnforcer- Parameters:
object- the labelable object- Returns:
- true if permitted
-
filterVisibleLabels
public List filterVisibleLabels(List labelList, @Nullable com.atlassian.user.User user, boolean hideSpecialLabels) Description copied from interface:LabelPermissionEnforcerFilters a list of label objects, removing any that are not visible to the specified user by checking the label's namespace. Also has an option to hide special labels.- Specified by:
filterVisibleLabelsin interfaceLabelPermissionEnforcer- Parameters:
labelList- a list of Label objectsuser- the User the labels are filtered forhideSpecialLabels- whether to hide special labels, such as favourites- Returns:
- a filtered list of Label objects
-
userCanViewLabel
Description copied from interface:LabelPermissionEnforcerDetermines whether a given label is viewable by the logged-in user.- Specified by:
userCanViewLabelin interfaceLabelPermissionEnforcer- Parameters:
label- The label to check for viewability.- Returns:
- true if the user can view the label; false otherwise.
-
filterAuthorizedLabels
Description copied from interface:LabelPermissionEnforcerFilters a list of label objects, removing any that the logged-in user is not authorized to access. Authorization is determined by checking if the user has access to any of the content associated with the label.- Specified by:
filterAuthorizedLabelsin interfaceLabelPermissionEnforcer- Parameters:
labels- a list of Label objects- Returns:
- a filtered list of Label objects
-
filterLabelsByNamespace
public List filterLabelsByNamespace(List labelList, @Nullable com.atlassian.user.User user, Namespace namespace) Description copied from interface:LabelPermissionEnforcerTakes a list of label objects and filters out those not in the specified namespace- Specified by:
filterLabelsByNamespacein interfaceLabelPermissionEnforcer- Parameters:
labelList- a list of Label objectsuser- the User the labels are filtered fornamespace- the Namespace to filter by- Returns:
- a filtered list of Label objects
-