|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.atlassian.jira.mail.MailThreadManagerImpl
public class MailThreadManagerImpl
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface com.atlassian.jira.mail.MailThreadManager |
|---|
MailThreadManager.MailAction |
| Field Summary |
|---|
| Constructor Summary | |
|---|---|
MailThreadManagerImpl(OfBizDelegator ofBizDelegator,
IssueManager issueManager,
EventTypeManager eventTypeManager)
|
|
| Method Summary | |
|---|---|
void |
createMailThread(String type,
Long source,
String emailAddress,
String messageId)
Remembers the given incoming MessageID. |
org.ofbiz.core.entity.GenericValue |
getAssociatedIssue(javax.mail.Message message)
Looks for an issue associated with the given message. |
Issue |
getAssociatedIssueObject(javax.mail.Message message)
Looks for an issue associated with the given message by inspecting the "In-Reply-To" header of the message. |
String |
getThreadType(Long eventTypeId)
No longer used because we don't use store all outgoing notifications (see JRA-9979). |
int |
removeAssociatedEntries(Long issueId)
Removes rows from NotificationInstance table associated with the given issue. |
void |
storeIncomingMessageId(String messageId,
String senderAddress,
Issue issue,
MailThreadManager.MailAction action)
Remembers the given incoming MessageID. |
void |
threadNotificationEmail(Email email,
Issue issue)
Thread the given email which is related to the given issue. |
void |
threadNotificationEmail(Email email,
Long issueId)
Thread the given email which is related to the given issue. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public MailThreadManagerImpl(OfBizDelegator ofBizDelegator,
IssueManager issueManager,
EventTypeManager eventTypeManager)
| Method Detail |
|---|
public void storeIncomingMessageId(String messageId,
String senderAddress,
Issue issue,
MailThreadManager.MailAction action)
MailThreadManagerThis is used when someone emails JIRA and CCs some else, and that person in turn does a reply-all. Such an email will not have the Issue Key in the subject.
storeIncomingMessageId in interface MailThreadManagermessageId - The incoming Message-IDsenderAddress - The senderissue - the issue that was affected (created or commented)action - Issue created or Issue commented
public void createMailThread(String type,
Long source,
String emailAddress,
String messageId)
MailThreadManagerAs of v5.2, this should only be used for incoming messages, outgoing "Notification" messages are ignored. Instead we craft a special Message-ID that we can parse the Issue ID out of if someone replies to the notification.
createMailThread in interface MailThreadManager
public void threadNotificationEmail(Email email,
Long issueId)
MailThreadManager
threadNotificationEmail in interface MailThreadManageremail - the email to be sentissueId - the issue that the email is about
public void threadNotificationEmail(Email email,
Issue issue)
MailThreadManager
threadNotificationEmail in interface MailThreadManageremail - the email to be sentissue - the issue that the email is aboutpublic String getThreadType(Long eventTypeId)
MailThreadManager
getThreadType in interface MailThreadManagereventTypeId - eventTypeIdpublic org.ofbiz.core.entity.GenericValue getAssociatedIssue(javax.mail.Message message)
MailThreadManagerThe "In-Reply-To" header of the message is parsed to see if it was sent by this JIRA server and if so we retrieve the Issue ID from it.
getAssociatedIssue in interface MailThreadManagermessage - message to analyse
@Nullable public Issue getAssociatedIssueObject(javax.mail.Message message)
MailThreadManagerNotifications sent from JIRA have a special form that allows us to parse out the Issue ID. We also remember the incoming Message-IDs so we can tell if another recipient replies to that message.
getAssociatedIssueObject in interface MailThreadManagermessage - message to analyse
public int removeAssociatedEntries(Long issueId)
MailThreadManager
removeAssociatedEntries in interface MailThreadManagerissueId - the issue
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||