Package javax.mail

Examples of javax.mail.Part


   
    protected static void extractFromMultipart(Multipart mp, Map<String, DataHandler> map)
        throws javax.mail.MessagingException, IOException {

        for (int i = 0; i < mp.getCount(); i++) {
            Part part = mp.getBodyPart(i);
            LOG.trace("Part #" + i + ": " + part);

            if (part.isMimeType("multipart/*")) {
                LOG.trace("Part #" + i + ": is mimetype: multipart/*");
                extractFromMultipart((Multipart)part.getContent(), map);
            } else {
                String disposition = part.getDisposition();
                if (LOG.isTraceEnabled()) {
                    LOG.trace("Part #" + i + ": Disposition: " + part.getDisposition());
                    LOG.trace("Part #" + i + ": Description: " + part.getDescription());
                    LOG.trace("Part #" + i + ": ContentType: " + part.getContentType());
                    LOG.trace("Part #" + i + ": FileName: " + part.getFileName());
                    LOG.trace("Part #" + i + ": Size: " + part.getSize());
                    LOG.trace("Part #" + i + ": LineCount: " + part.getLineCount());
                }

                if (disposition != null && (disposition.equalsIgnoreCase(Part.ATTACHMENT) || disposition.equalsIgnoreCase(Part.INLINE))) {
                    // only add named attachments
                    String fileName = part.getFileName();
                    if (fileName != null) {
                        LOG.debug("Mail contains file attachment: " + fileName);
                        // Parts marked with a disposition of Part.ATTACHMENT are clearly attachments
                        CollectionHelper.appendValue(map, fileName, part.getDataHandler());
                    }
                }
            }
        }
    }   
View Full Code Here


          bufInputStream.close();
          outputStream.flush();
          outputStream.close();
        }
        else {
          Part imagePart = findImagePart( msg );
          if ( imagePart != null ) {
            ContentType contentType = new ContentType( imagePart.getContentType() );
            response.setContentType( contentType.getBaseType() );

            BufferedInputStream bufInputStream = new BufferedInputStream( imagePart.getInputStream() );
            OutputStream outputStream = response.getOutputStream();

            byte[] inBuf = new byte[1024];
            int len = 0;
            int total = 0;
View Full Code Here

      else if ( parent.isMimeType( "multipart/*" ) ) {
        Multipart mp;
        mp = (Multipart) parent.getContent();
        int count = mp.getCount();
        for (int i = 0; i < count; i++) {
          Part subPart = findImagePart( mp.getBodyPart( i ) );
          if ( subPart != null ) {
            return subPart;
          }
        }
      }
View Full Code Here

      }
      else if ( part.isMimeType( "multipart/*" ) ) {
        Multipart mp = (Multipart) part.getContent();
        int count = mp.getCount();
        for (int i = 0; i < count; i++) {
          Part subPart = mp.getBodyPart( i );
          messageTextFromPart( subPart, messageHandler, loadImages, mode, preferences, level++ );
        }
      }
    }
    else if ( mode == MessageTextMode.REPLY ) {
      if ( !preferences.isCreateHtmlMsgs() && !StringUtils.isEmpty( messageHandler.getMessageTextPlain() ) ) {
        return;
      }
      else if ( preferences.isCreateHtmlMsgs() && !StringUtils.isEmpty( messageHandler.getMessageTextHtml() ) ) {
        return;
      }
      else if ( part.isMimeType( "text/plain" ) ) {
        String text = readPart( part );
        text = quotePlainText( text );
        if ( preferences.isCreateHtmlMsgs() ) {
          text = convertPlainText2Html( text, mode );
          messageHandler.setMessageTextHtml( text );
          messageHandler.setHtmlMessage( true );
        }
        else {
          messageHandler.setMessageTextPlain( text );
        }
      }
      else if ( part.isMimeType( "text/html" ) && StringUtils.isEmpty( messageHandler.getMessageTextPlain() ) ) {
        String text = readPart( part );
        text = convertHtml2PlainText( text );
        text = quotePlainText( text );
        if ( preferences.isCreateHtmlMsgs() ) {
          text = convertPlainText2Html( text, mode );
          messageHandler.setMessageTextHtml( text );
          messageHandler.setHtmlMessage( true );
        }
        else {
          messageHandler.setMessageTextPlain( text );
        }
      }
      else if ( part.isMimeType( "multipart/*" ) ) {
        Multipart mp = (Multipart) part.getContent();
        int count = mp.getCount();
        for (int i = 0; i < count; i++) {
          Part subPart = mp.getBodyPart( i );
          messageTextFromPart( subPart, messageHandler, loadImages, mode, preferences, level++ );
        }
      }
    }
  }
View Full Code Here

          bufInputStream.close();
          outputStream.flush();
          outputStream.close();
        }
        else {
          Part imagePart = findImagePart( msg );
          if ( imagePart != null ) {
            ContentType contentType = new ContentType( imagePart.getContentType() );
            response.setContentType( contentType.getBaseType() );

            BufferedInputStream bufInputStream = new BufferedInputStream( imagePart.getInputStream() );
            OutputStream outputStream = response.getOutputStream();

            byte[] inBuf = new byte[1024];
            int len = 0;
            int total = 0;
View Full Code Here

      else if ( parent.isMimeType( "multipart/*" ) ) {
        Multipart mp;
        mp = (Multipart) parent.getContent();
        int count = mp.getCount();
        for (int i = 0; i < count; i++) {
          Part subPart = findImagePart( mp.getBodyPart( i ) );
          if ( subPart != null ) {
            return subPart;
          }
        }
      }
View Full Code Here

      }
      else if ( part.isMimeType( "multipart/*" ) ) {
        Multipart mp = (Multipart) part.getContent();
        int count = mp.getCount();
        for (int i = 0; i < count; i++) {
          Part subPart = mp.getBodyPart( i );
          messageTextFromPart( subPart, messageHandler, loadImages, mode, preferences, level++ );
        }
      }
    }
    else if ( mode == MessageTextMode.REPLY ) {
      if ( !preferences.isCreateHtmlMsgs() && !StringUtils.isEmpty( messageHandler.getMessageTextPlain() ) ) {
        return;
      }
      else if ( preferences.isCreateHtmlMsgs() && !StringUtils.isEmpty( messageHandler.getMessageTextHtml() ) ) {
        return;
      }
      else if ( part.isMimeType( "text/plain" ) ) {
        String text = readPart( part );
        text = quotePlainText( text );
        if ( preferences.isCreateHtmlMsgs() ) {
          text = convertPlainText2Html( text, mode );
          messageHandler.setMessageTextHtml( text );
          messageHandler.setHtmlMessage( true );
        }
        else {
          messageHandler.setMessageTextPlain( text );
        }
      }
      else if ( part.isMimeType( "text/html" ) && StringUtils.isEmpty( messageHandler.getMessageTextPlain() ) ) {
        String text = readPart( part );
        text = convertHtml2PlainText( text );
        text = quotePlainText( text );
        if ( preferences.isCreateHtmlMsgs() ) {
          text = convertPlainText2Html( text, mode );
          messageHandler.setMessageTextHtml( text );
          messageHandler.setHtmlMessage( true );
        }
        else {
          messageHandler.setMessageTextPlain( text );
        }
      }
      else if ( part.isMimeType( "multipart/*" ) ) {
        Multipart mp = (Multipart) part.getContent();
        int count = mp.getCount();
        for (int i = 0; i < count; i++) {
          Part subPart = mp.getBodyPart( i );
          messageTextFromPart( subPart, messageHandler, loadImages, mode, preferences, level++ );
        }
      }
    }
  }
View Full Code Here

    public static void getAttachments(Multipart content, Map<String, Part> attachments) throws MessagingException, IOException
    {
        int x = 0;
        for(int i = 0; i < content.getCount(); i++)
        {
            Part part = content.getBodyPart(i);
            if (part.getContentType().indexOf("multipart/mixed") > -1)
            {
                Multipart m = (Multipart) part.getContent();
                getAttachments(m, attachments);
            }
            else
            {
                String key;
                if (StringUtils.isNotEmpty(part.getDescription()))
                {
                    key = part.getDescription();
                }
                else if (StringUtils.isNotEmpty(part.getFileName()))
                {
                    try
                    {
                        key = MimeUtility.decodeText(part.getFileName());
                    }
                    catch (UnsupportedEncodingException e)
                    {
                        key = part.getFileName();
                    }
                }
                else if (StringUtils.isNotEmpty(part.getDisposition()))
                {
                    key = part.getDisposition();
                }
                else
                {
                    key = String.valueOf(x++);
                }
View Full Code Here

            MailUtils.getAttachments(multipart, attachments);

            log.debug("Received Multipart message. Adding attachments");
            for (Map.Entry<String, Part> entry : attachments.entrySet())
            {
                Part part = entry.getValue();
                String name = entry.getKey();

                muleMessage.addInboundAttachment(name, part.getDataHandler());
                addAttachmentHeaders(name, part, muleMessage);
            }
        }
    }
View Full Code Here

   * (non-Javadoc)
   *
   * @see javax.mail.Part#getDataHandler()
   */
  public DataHandler getDataHandler() throws MessagingException {
    Part part = getPartOnFile();
    return part.getDataHandler();
  }
View Full Code Here

TOP

Related Classes of javax.mail.Part

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.