@PublicApi public interface

CommentPermissionManager

com.atlassian.jira.issue.comments.CommentPermissionManager
Known Indirect Subclasses

@PublicApi

This interface is designed for plugins to consume (call its methods).

Clients of @PublicApi can expect that programs compiled against a given version will remain binary compatible with later versions of the @PublicApi as per each product's API policy as long as the client does not implement/extend @PublicApi interfaces or classes (refer to each product's API policy for the exact guarantee---usually binary compatibility is guaranteed at least across minor versions).

Note: since @PublicApi interfaces and classes are not designed to be implemented or extended by clients, we may perform certain types of binary-incompatible changes to these classes and interfaces, but these will not affect well-behaved clients that do not extend/implement these types (in general, only classes and interfaces annotated with @PublicSpi are safe to extend/implement).

Class Overview

A unified way of checking whether a user can see a comment or not

Summary

Public Methods
boolean hasBrowsePermission(ApplicationUser user, Comment comment)
Return true if the user can see the comment.
boolean hasBrowsePermission(User user, Comment comment)
This method is deprecated. Use hasBrowsePermission(com.atlassian.jira.user.ApplicationUser, Comment) instead. Since v6.0. Return true if the user can see the comment. It does not check if the user has the permission to see the issue the comment is attached to however.
boolean hasDeleteAllPermission(User user, Issue issue)
This method is deprecated. Use hasDeleteAllPermission(com.atlassian.jira.user.ApplicationUser, com.atlassian.jira.issue.Issue) instead. Since v6.0. Returns true if the given User can delete all comments for the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

boolean hasDeleteAllPermission(ApplicationUser user, Issue issue)
Returns true if the given User can delete all comments for the given Issue.
boolean hasDeleteOwnPermission(ApplicationUser user, Issue issue)
Returns true if the given User can delete her own comments in the given Issue.
boolean hasDeleteOwnPermission(User user, Issue issue)
This method is deprecated. Use hasDeleteOwnPermission(com.atlassian.jira.user.ApplicationUser, com.atlassian.jira.issue.Issue) instead. Since v6.0. Returns true if the given User can delete her own comments in the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

boolean hasEditAllPermission(ApplicationUser user, Issue issue)
Returns true if user has permission to edit all comments in the given Issue.
boolean hasEditAllPermission(User user, Issue issue)
This method is deprecated. Use hasEditAllPermission(com.atlassian.jira.user.ApplicationUser, com.atlassian.jira.issue.Issue) instead. Since v6.0. Returns true if user has permission to edit all comments in the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

boolean hasEditOwnPermission(User user, Issue issue)
This method is deprecated. Use hasEditOwnPermission(com.atlassian.jira.user.ApplicationUser, com.atlassian.jira.issue.Issue) instead. Since v6.0. Returns true if user has permission to edit her own comments in the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

boolean hasEditOwnPermission(ApplicationUser user, Issue issue)
Returns true if user has permission to edit her own comments in the given Issue.
boolean hasEditPermission(User user, Comment comment)
This method is deprecated. Use hasEditPermission(com.atlassian.jira.user.ApplicationUser, Comment) instead. Since v6.0. Determines whether the given user has permission to edit the given comment. The user is granted permission if they have the COMMENT_EDIT_ALL permission or the COMMENT_EDIT_OWN permission in case the user is the author of the given comment.

NOTE: The permissions will be determined by the permission scheme associated to the project the comment is a part of and the entries for the above mentioned permissions.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

boolean hasEditPermission(ApplicationUser user, Comment comment)
Determines whether the given user has permission to edit the given comment.
boolean isUserCommentAuthor(User user, Comment comment)
This method is deprecated. Use isUserCommentAuthor(com.atlassian.jira.user.ApplicationUser, Comment) instead. Since v6.0. Returns true if the given user is the author of the given comment.

If the given Comment has a null author, this represents that it was created anonymously, and no-one is the author (returns false). If the given User is null, then this represents that the current user is anonymous, and the method will always return false.

boolean isUserCommentAuthor(ApplicationUser user, Comment comment)
Returns true if the given user is the author of the given comment.

Public Methods

public boolean hasBrowsePermission (ApplicationUser user, Comment comment)

Return true if the user can see the comment. It does not check if the user has the permission to see the issue the comment is attached to however.

Parameters
user user
comment comment
Returns
  • true if permission is granted, false otherwise

public boolean hasBrowsePermission (User user, Comment comment)

This method is deprecated.
Use hasBrowsePermission(com.atlassian.jira.user.ApplicationUser, Comment) instead. Since v6.0. Return true if the user can see the comment. It does not check if the user has the permission to see the issue the comment is attached to however.

Parameters
user user
comment comment
Returns
  • true if permission is granted, false otherwise

public boolean hasDeleteAllPermission (User user, Issue issue)

This method is deprecated.
Use hasDeleteAllPermission(com.atlassian.jira.user.ApplicationUser, com.atlassian.jira.issue.Issue) instead. Since v6.0. Returns true if the given User can delete all comments for the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user User. A null value represents an anonymous User.
issue Issue. Must not be null.
Returns
  • true if user has permission to delete all comments in the given Issue.

public boolean hasDeleteAllPermission (ApplicationUser user, Issue issue)

Returns true if the given User can delete all comments for the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user User. A null value represents an anonymous User.
issue Issue. Must not be null.
Returns
  • true if user has permission to delete all comments in the given Issue.

public boolean hasDeleteOwnPermission (ApplicationUser user, Issue issue)

Returns true if the given User can delete her own comments in the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user User. A null value represents an anonymous User.
issue Issue. Must not be null.
Returns
  • true if the given User can delete her own comments in the given Issue.

public boolean hasDeleteOwnPermission (User user, Issue issue)

This method is deprecated.
Use hasDeleteOwnPermission(com.atlassian.jira.user.ApplicationUser, com.atlassian.jira.issue.Issue) instead. Since v6.0. Returns true if the given User can delete her own comments in the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user User. A null value represents an anonymous User.
issue Issue. Must not be null.
Returns
  • true if the given User can delete her own comments in the given Issue.

public boolean hasEditAllPermission (ApplicationUser user, Issue issue)

Returns true if user has permission to edit all comments in the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user ApplicationUser. A null value represents an anonymous User.
issue Issue. Must not be null.
Returns
  • true if user has permission to edit all comments in the given Issue.

public boolean hasEditAllPermission (User user, Issue issue)

This method is deprecated.
Use hasEditAllPermission(com.atlassian.jira.user.ApplicationUser, com.atlassian.jira.issue.Issue) instead. Since v6.0. Returns true if user has permission to edit all comments in the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user User. A null value represents an anonymous User.
issue Issue. Must not be null.
Returns
  • true if user has permission to edit all comments in the given Issue.

public boolean hasEditOwnPermission (User user, Issue issue)

This method is deprecated.
Use hasEditOwnPermission(com.atlassian.jira.user.ApplicationUser, com.atlassian.jira.issue.Issue) instead. Since v6.0. Returns true if user has permission to edit her own comments in the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user User. A null value represents an anonymous User.
issue Issue. Must not be null.
Returns
  • true if user has permission to edit all comments in the given Issue.

public boolean hasEditOwnPermission (ApplicationUser user, Issue issue)

Returns true if user has permission to edit her own comments in the given Issue.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user ApplicationUser. A null value represents an anonymous User.
issue Issue. Must not be null.
Returns
  • true if user has permission to edit all comments in the given Issue.

public boolean hasEditPermission (User user, Comment comment)

This method is deprecated.
Use hasEditPermission(com.atlassian.jira.user.ApplicationUser, Comment) instead. Since v6.0. Determines whether the given user has permission to edit the given comment. The user is granted permission if they have the COMMENT_EDIT_ALL permission or the COMMENT_EDIT_OWN permission in case the user is the author of the given comment.

NOTE: The permissions will be determined by the permission scheme associated to the project the comment is a part of and the entries for the above mentioned permissions.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user user
comment comment
Returns
  • true if permission is granted, false otherwise

public boolean hasEditPermission (ApplicationUser user, Comment comment)

Determines whether the given user has permission to edit the given comment. The user is granted permission if they have the COMMENT_EDIT_ALL permission or the COMMENT_EDIT_OWN permission in case the user is the author of the given comment.

NOTE: The permissions will be determined by the permission scheme associated to the project the comment is a part of and the entries for the above mentioned permissions.

NOTE: This method does not check whether the Issue the comment belongs to is in an editable workflow state.

Parameters
user user
comment comment
Returns
  • true if permission is granted, false otherwise

public boolean isUserCommentAuthor (User user, Comment comment)

This method is deprecated.
Use isUserCommentAuthor(com.atlassian.jira.user.ApplicationUser, Comment) instead. Since v6.0. Returns true if the given user is the author of the given comment.

If the given Comment has a null author, this represents that it was created anonymously, and no-one is the author (returns false). If the given User is null, then this represents that the current user is anonymous, and the method will always return false.

Parameters
user The User. Can be null to represent current user is not logged in (anonymous).
comment The Comment. Cannot be null.
Returns
  • true if the given user is the author of the given comment.

public boolean isUserCommentAuthor (ApplicationUser user, Comment comment)

Returns true if the given user is the author of the given comment.

If the given Comment has a null author, this represents that it was created anonymously, and no-one is the author (returns false). If the given User is null, then this represents that the current user is anonymous, and the method will always return false.

Parameters
user The User. Can be null to represent current user is not logged in (anonymous).
comment The Comment. Cannot be null.
Returns
  • true if the given user is the author of the given comment.