public class

EmailFormatterImpl

extends Object
implements EmailFormatter
java.lang.Object
   ↳ com.atlassian.jira.util.EmailFormatterImpl

Summary

Public Constructors
EmailFormatterImpl(ApplicationProperties applicationProperties)
Public Methods
boolean emailVisible(User user)
Emails are visible by user if email visibility is set to show (public) or mask (masked) or user (show to logged in users only)
String formatEmail(User user, User currentUser)
Formats user's email address for the purpose of displaying it to currentUser, as determined by the JIRA_OPTION_EMAIL_VISIBLE setting.
String formatEmail(String email, User currentUser)
Formats an email address for the purpose of displaying it to a user as determined by the JIRA_OPTION_EMAIL_VISIBLE setting.
String formatEmail(String email, boolean isCurrentUserLoggedIn)
Formats an email address for the purpose of displaying it to a user as determined by the JIRA_OPTION_EMAIL_VISIBLE setting.
@Nonnull String formatEmailAsLink(String email, User currentUser)
Returns a HTML link for the e-mail if appropriate.
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.atlassian.jira.util.EmailFormatter

Public Constructors

public EmailFormatterImpl (ApplicationProperties applicationProperties)

Public Methods

public boolean emailVisible (User user)

Emails are visible by user if email visibility is set to show (public) or mask (masked) or user (show to logged in users only)

Parameters
user the user to which email addresses will be shown, or null if no user is logged in (browsing anonymously)
Returns
  • true if email addresses should be visible (even if they will be masked); false otherwise

public String formatEmail (User user, User currentUser)

Formats user's email address for the purpose of displaying it to currentUser, as determined by the JIRA_OPTION_EMAIL_VISIBLE setting.

This convenience method is exactly equivalent to formatEmail(user.getEmailAddress(), currentUser != null), except that it is null-safe.

Parameters
user owner of the email address to format and display (null is permitted)
currentUser the user to which email addresses will be shown, or null if no user is logged in (browsing anonymously)
Returns
  • the formatted email address; null if either user is null or currentUser is not permitted to see email addresses

public String formatEmail (String email, User currentUser)

Formats an email address for the purpose of displaying it to a user as determined by the JIRA_OPTION_EMAIL_VISIBLE setting.

This convenience method is exactly equivalent to formatEmail(email, currentUser != null).

Parameters
email The email address to show/mask/hide.
currentUser The user viewing the email address.
Returns
  • the formatted email address; null if either email is null or the user is not permitted to see email addresses

public String formatEmail (String email, boolean isCurrentUserLoggedIn)

Formats an email address for the purpose of displaying it to a user as determined by the JIRA_OPTION_EMAIL_VISIBLE setting.

SettingBehaviour
"show"The email is shown as-is to everyone.
"user"The email is shown as-is to users that are logged in, but not shown to anonymous users.
"mask"The email is shown to all users with the e-mail address slightly obscured, such that "user@example.com" appears as "user at example dot com", instead

Parameters
email The email address to show/mask/hide.
isCurrentUserLoggedIn true if a user is currently logged in; false if the user is browsing anonymously
Returns
  • the formatted email address; null if either email is null or the user is not permitted to see email addresses

@Nonnull public String formatEmailAsLink (String email, User currentUser)

Returns a HTML link for the e-mail if appropriate. REMEMBER not to escape the string returned by this method as this method does this already!

Returns
  • <a href="foo@bar.com">foo@bar.com</a> (public), foo at bar.com (masked), or an empty string ("") if either email is null or the user is not permitted to see email addresses