com.atlassian.confluence.it.mail
Class MailUtils

java.lang.Object
  extended by com.atlassian.confluence.it.mail.MailUtils

public class MailUtils
extends java.lang.Object

Static methods for interacting with email messages.

Since:
v4.2

Constructor Summary
MailUtils()
           
 
Method Summary
static javax.mail.internet.MimeMessage extractFirstEmailAddressedTo(User user, java.util.List<javax.mail.internet.MimeMessage> allMessages)
           
static java.util.Collection<javax.mail.internet.MimeMessage> filterBySubject(java.util.Collection<javax.mail.internet.MimeMessage> messages, java.lang.String subject)
           
static java.lang.String getBody(javax.mail.internet.MimeMessage smtpMessage)
           
static org.w3c.dom.Document getDocument(javax.mail.internet.MimeMessage message)
           
static java.lang.Iterable<javax.mail.internet.MimeMessage> getEmailAddressedToUser(User user, java.util.List<javax.mail.internet.MimeMessage> allMessages)
           
static java.lang.String getFirstRecipient(javax.mail.internet.MimeMessage smtpMessage)
           
static java.util.List<SimpleLink> getFooterLinks(javax.mail.internet.MimeMessage message, java.lang.String footerId)
           
static java.util.List<SimpleLink> getLinksInElementWithId(javax.mail.internet.MimeMessage message, java.lang.String id)
          Locates all links inside a container with the specified id and returns them as an ordered list of SimpleLinks.
static SimpleLink getLinkWithId(javax.mail.internet.MimeMessage message, java.lang.String id)
          Locates a link with the specified id and returns it as a SimpleLink.
static SimpleLink getLinkWithText(javax.mail.internet.MimeMessage message, java.lang.String linkText)
          Returns the first link that matches the provided link text
static java.lang.String getPrefixedSubject(java.lang.String subject)
           
static java.lang.String getSender(javax.mail.internet.MimeMessage smtpMessage)
           
static JSoupTester getSoup(javax.mail.internet.MimeMessage message)
          JSoup for you! Ask Fabian why this is better than using a DOM, or the plain text of the message body :)
static com.google.common.base.Function<javax.mail.internet.MimeMessage,java.lang.String> toDiagnosticString()
           
static java.lang.String toDiagnosticString(javax.mail.internet.MimeMessage mimeMessage)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MailUtils

public MailUtils()
Method Detail

getPrefixedSubject

public static java.lang.String getPrefixedSubject(java.lang.String subject)

getBody

public static java.lang.String getBody(javax.mail.internet.MimeMessage smtpMessage)

getFirstRecipient

public static java.lang.String getFirstRecipient(javax.mail.internet.MimeMessage smtpMessage)

getSender

public static java.lang.String getSender(javax.mail.internet.MimeMessage smtpMessage)
                                  throws javax.mail.MessagingException
Throws:
javax.mail.MessagingException

getLinksInElementWithId

public static java.util.List<SimpleLink> getLinksInElementWithId(javax.mail.internet.MimeMessage message,
                                                                 java.lang.String id)
Locates all links inside a container with the specified id and returns them as an ordered list of SimpleLinks. Will fail with a null-pointer exception if no matching node is found.

Parameters:
message - the mime message
id - the id to search for links within
Returns:
a list of SimpleLink objects

getFooterLinks

public static java.util.List<SimpleLink> getFooterLinks(javax.mail.internet.MimeMessage message,
                                                        java.lang.String footerId)

getLinkWithId

public static SimpleLink getLinkWithId(javax.mail.internet.MimeMessage message,
                                       java.lang.String id)
Locates a link with the specified id and returns it as a SimpleLink. Will fail with a null-pointer exception if no matching node is found. ) content; }

Parameters:
message - the mime message to search within
id - the id of the link to return
Returns:
a SimpleLink object

getLinkWithText

public static SimpleLink getLinkWithText(javax.mail.internet.MimeMessage message,
                                         java.lang.String linkText)
Returns the first link that matches the provided link text

Parameters:
message - the mime message to search within
linkText - the text of the link to match against to determine which link to return
Returns:
a SimpleLink object if found, otherwise null

getSoup

public static JSoupTester getSoup(javax.mail.internet.MimeMessage message)
JSoup for you! Ask Fabian why this is better than using a DOM, or the plain text of the message body :)

Parameters:
message - the message to get the HTML body from
Returns:
a Jsoup test helper object

getDocument

public static org.w3c.dom.Document getDocument(javax.mail.internet.MimeMessage message)

getEmailAddressedToUser

public static java.lang.Iterable<javax.mail.internet.MimeMessage> getEmailAddressedToUser(User user,
                                                                                          java.util.List<javax.mail.internet.MimeMessage> allMessages)

toDiagnosticString

public static com.google.common.base.Function<javax.mail.internet.MimeMessage,java.lang.String> toDiagnosticString()

toDiagnosticString

public static java.lang.String toDiagnosticString(javax.mail.internet.MimeMessage mimeMessage)
                                           throws javax.mail.MessagingException
Throws:
javax.mail.MessagingException

extractFirstEmailAddressedTo

public static javax.mail.internet.MimeMessage extractFirstEmailAddressedTo(User user,
                                                                           java.util.List<javax.mail.internet.MimeMessage> allMessages)

filterBySubject

public static java.util.Collection<javax.mail.internet.MimeMessage> filterBySubject(java.util.Collection<javax.mail.internet.MimeMessage> messages,
                                                                                    java.lang.String subject)


Copyright © 2003-2014 Atlassian. All Rights Reserved.