Class MailUtil


  • public class MailUtil
    extends Object
    Utility methods for handling emails
    Since:
    7.6.4
    Author:
    Marco Meschieri - LogicalDOC
    • Constructor Detail

      • MailUtil

        public MailUtil()
    • Method Detail

      • emlContainsAttachments

        public static boolean emlContainsAttachments​(InputStream is)
      • countEmlAttachments

        public static int countEmlAttachments​(InputStream is)
      • msgToMail

        public static EMail msgToMail​(InputStream is,
                                      boolean extractAttachmentContent)
                               throws IOException,
                                      javax.mail.MessagingException,
                                      org.bouncycastle.cms.CMSException
        Builds an EMail from a .msg file
        Parameters:
        is - the input stream
        extractAttachmentContent - if the attachments have to be extracted
        Returns:
        the EMail object
        Throws:
        IOException - I/O error
        javax.mail.MessagingException - error reading the contents
        org.bouncycastle.cms.CMSException - error reading the contents
      • msgToMail

        public static EMail msgToMail​(File msgFile,
                                      boolean extractAttachmentContent)
                               throws FileNotFoundException,
                                      IOException,
                                      javax.mail.MessagingException,
                                      org.bouncycastle.cms.CMSException
        Builds an EMail from a .msg file.
        Parameters:
        msgFile - the input file
        extractAttachmentContent - if you want to extract the attachment files
        Returns:
        the EMail object
        Throws:
        IOException - I/O error
        FileNotFoundException - cannot open the file
        org.bouncycastle.cms.CMSException - cannot read the content
        javax.mail.MessagingException - cannot read the content
      • messageToMail

        public static EMail messageToMail​(InputStream is,
                                          boolean extractAttachmentContent)
                                   throws javax.mail.MessagingException,
                                          IOException
        Builds an EMail from a stream
        Parameters:
        is - the stream to read
        extractAttachmentContent - if you want to extract the attachment files
        Returns:
        the EMail object
        Throws:
        javax.mail.MessagingException - raised if the message cannot be read
        IOException - raised if case of I/O errors
      • readMime

        public static javax.mail.internet.MimeMessage readMime​(InputStream is)
                                                        throws javax.mail.MessagingException
        Constructs a MimeMessage from a stream
        Parameters:
        is - the input stream
        Returns:
        the creaed message
        Throws:
        javax.mail.MessagingException - the contents are invalid
      • messageToMail

        public static EMail messageToMail​(File emlFile,
                                          boolean extractAttachmentContent)
                                   throws javax.mail.MessagingException,
                                          IOException
        Builds an EMail from a .eml file.
        Parameters:
        emlFile - the input file
        extractAttachmentContent - if you want to extract the attachment files
        Returns:
        the EMail object
        Throws:
        javax.mail.MessagingException - if the source file cannot be read
        IOException - raised if case of I/O errors
      • messageToMail

        public static EMail messageToMail​(javax.mail.Message msg,
                                          boolean extractAttachmentContent)
                                   throws javax.mail.MessagingException,
                                          IOException
        Builds an EMail from a Message.
        Parameters:
        msg - the source message
        extractAttachmentContent - if the binary of the attachments has to be extracted
        Returns:
        The EMail instance
        Throws:
        javax.mail.MessagingException - error reading the message
        IOException - error in I/O operations
      • getAddressName

        public static String getAddressName​(javax.mail.Address a)
        Extracts the address name
        Parameters:
        a - the address
        Returns:
        the name
      • getAddressEmail

        public static String getAddressEmail​(javax.mail.Address a)
        Extracts the address email
        Parameters:
        a - the address
        Returns:
        the email
      • countMsgAttachments

        public static int countMsgAttachments​(File msgFile)
      • msgContainsAttachments

        public static boolean msgContainsAttachments​(File msgFile)
      • countMsgAttachments

        public static int countMsgAttachments​(InputStream is)
      • msgContainsAttachments

        public static boolean msgContainsAttachments​(InputStream is)
      • countEmlAttachments

        public static int countEmlAttachments​(File emlFile)
      • emlContainsAttachments

        public static boolean emlContainsAttachments​(File emlFile)
      • extractMessageText

        public static String extractMessageText​(javax.mail.Message message)
                                         throws javax.mail.MessagingException,
                                                IOException
        Extracts just the body of texts parts in the given email message
        Parameters:
        message - the email message
        Returns:
        the message text
        Throws:
        javax.mail.MessagingException - Error in traversing the part
        IOException - generic I/O error