public class EmailFormatterImpl extends Object implements EmailFormatter
Constructor and Description |
---|
EmailFormatterImpl(ApplicationProperties applicationProperties) |
Modifier and Type | Method and Description |
---|---|
boolean |
emailVisible(ApplicationUser 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(ApplicationUser user,
ApplicationUser currentUser)
Formats
user 's email address for the purpose of displaying it to currentUser ,
as determined by the
APKeys.JIRA_OPTION_EMAIL_VISIBLE setting. |
String |
formatEmail(String email,
ApplicationUser currentUser)
Formats an email address for the purpose of displaying it to a user
as determined by the
APKeys.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
APKeys.JIRA_OPTION_EMAIL_VISIBLE setting. |
String |
formatEmailAsLink(String email,
ApplicationUser currentUser)
Returns a HTML link for the e-mail if appropriate.
|
public EmailFormatterImpl(ApplicationProperties applicationProperties)
public boolean emailVisible(ApplicationUser user)
emailVisible
in interface EmailFormatter
user
- the user to which email addresses will be shown, or null
if
no user is logged in (browsing anonymously)true
if email addresses should be visible (even if they will be masked);
false
otherwisepublic String formatEmail(ApplicationUser user, ApplicationUser currentUser)
EmailFormatter
user
's email address for the purpose of displaying it to currentUser
,
as determined by the
APKeys.JIRA_OPTION_EMAIL_VISIBLE
setting.
This convenience method is exactly equivalent to
formatEmail(user.getEmailAddress(), currentUser != null)
,
except that it is null
-safe.
formatEmail
in interface EmailFormatter
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)null
if either user
is null
or currentUser
is not permitted to see email addressespublic String formatEmail(String email, boolean isCurrentUserLoggedIn)
EmailFormatter
APKeys.JIRA_OPTION_EMAIL_VISIBLE
setting.
Setting | Behaviour |
---|---|
"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 |
formatEmail
in interface EmailFormatter
email
- The email address to show/mask/hide.isCurrentUserLoggedIn
- true
if a user is currently logged in; false
if the user is browsing anonymouslynull
if either email
is null
or the user is not permitted to see email addressespublic String formatEmail(String email, @Nullable ApplicationUser currentUser)
EmailFormatter
APKeys.JIRA_OPTION_EMAIL_VISIBLE
setting.
This convenience method is exactly equivalent to
formatEmail(email, currentUser != null)
.
formatEmail
in interface EmailFormatter
email
- The email address to show/mask/hide.currentUser
- The user viewing the email address.null
if either email
is null
or the user is not permitted to see email addresses@Nonnull public String formatEmailAsLink(String email, @Nullable ApplicationUser currentUser)
formatEmailAsLink
in interface EmailFormatter
<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 addressesCopyright © 2002-2018 Atlassian. All Rights Reserved.