Package javax.mail

Examples of javax.mail.Folder


        // connect to mailbox
        Mailbox.clearAll();
        JavaMailSender sender = new DefaultJavaMailSender();
        Store store = sender.getSession().getStore("pop3");
        store.connect("localhost", 25, "bill", "secret");
        Folder folder = store.getFolder("INBOX");
        folder.open(Folder.READ_WRITE);
        folder.expunge();

        // inserts 3 messages, one with earlier, one with later sent date and one with invalid subject (not returned in search)
        Message[] messages = new Message[3];
        messages[0] = new MimeMessage(sender.getSession());
        messages[0].setText("Earlier date");
        messages[0].setSentDate(new Date(10000));
        messages[0].setSubject("Camel");

        messages[1] = new MimeMessage(sender.getSession());
        messages[1].setText("Later date");
        messages[1].setSentDate(new Date(20000));
        messages[1].setSubject("Camel");

        messages[2] = new MimeMessage(sender.getSession());
        messages[2].setText("Even later date");
        messages[2].setSentDate(new Date(30000));
        messages[2].setSubject("Invalid");

        folder.appendMessages(messages);
        folder.close(true);
    }
View Full Code Here


            // Copy message into different imap folder if asked
            if (config.getProtocol().equals(MailUtils.PROTOCOL_IMAP) || config.getProtocol().equals(MailUtils.PROTOCOL_IMAPS)) {
                if (copyTo != null) {
                    LOG.trace("IMAP message needs to be copied to {}", copyTo);
                    Folder destFolder = store.getFolder(copyTo);
                    if (!destFolder.exists()) {
                        destFolder.create(Folder.HOLDS_MESSAGES);
                    }
                    folder.copyMessages(new Message[]{mail}, destFolder);
                    LOG.trace("IMAP message {} copied to {}", mail, copyTo);
                }
            }
View Full Code Here

            // Copy message into different imap folder if asked
            if (config.getProtocol().equals(MailUtils.PROTOCOL_IMAP) || config.getProtocol().equals(MailUtils.PROTOCOL_IMAPS)) {
                if (copyTo != null) {
                    LOG.trace("IMAP message needs to be copied to {}", copyTo);
                    Folder destFolder = store.getFolder(copyTo);
                    if (!destFolder.exists()) {
                        destFolder.create(Folder.HOLDS_MESSAGES);
                    }
                    folder.copyMessages(new Message[]{mail}, destFolder);
                    LOG.trace("IMAP message {} copied to {}", mail, copyTo);
                }
            }
View Full Code Here

    throws MessagingException
  {
    if (newFolder==null)
      newFolder = "INBOX";

    Folder folder  = getStore().getFolder(newFolder);
    FolderData fdata = new FolderData(this, folder);
    setCurrentFolder(fdata);
  }
View Full Code Here

            // Copy message into different imap folder if asked
            if (config.getProtocol().equals(MailUtils.PROTOCOL_IMAP) || config.getProtocol().equals(MailUtils.PROTOCOL_IMAPS)) {
                if (copyTo != null) {
                    LOG.trace("IMAP message needs to be copied to {}", copyTo);
                    Folder destFolder = store.getFolder(copyTo);
                    if (!destFolder.exists()) {
                        destFolder.create(Folder.HOLDS_MESSAGES);
                    }
                    folder.copyMessages(new Message[]{mail}, destFolder);
                    LOG.trace("IMAP message {} copied to {}", mail, copyTo);
                }
            }
View Full Code Here

  /* Utility routine to retrieve and open a folder */

  private static void selectFolder(RewriteContext hr,EmailConnection tmpEmailConn,
                                   String folderName) throws MessagingException {
    Folder tmpFldr = null;
    Properties props = hr.request.props;
    String connHandle = getConnHandle(hr);

    if (folderName != null) {
      /* Get the selected folder */
 
View Full Code Here

    EmailConnection tmpEmailConn;
    String folderName;
    String tmpDefDir;
    Folder[] mailFolders;
    Message[] tmpMsgs;
    Folder tmpFldr;

    hr.killToken();

    /* Get a copy of the requested server connection */

    tmpEmailConn = (EmailConnection) serverConnections.get(connHandle);

    if (tmpEmailConn == null) {
      handleFatalError(hr,"Couldn't find a server connection to retrieve!");
      return;
    }

    /* Check to see if we are still authenticated */

    if (!tmpEmailConn.isAuthenticated) {
      handleFatalError(hr,"Not Authenticated");
      return;
    }

    /* Check to see if we have a mailbox dir specified */

    tmpDefDir = hr.get("dir");

    if (tmpDefDir != null) {
      tmpEmailConn.defaultDir = tmpDefDir;

      hr.request.log(Server.LOG_DIAGNOSTIC,connHandle,"Setting defaultDir in <folder> tag = " +                     tmpEmailConn.defaultDir);

      try {
        tmpEmailConn.folderRoot = tmpEmailConn.userMsgStore.getFolder(
                                  tmpEmailConn.defaultDir);
      } catch (MessagingException e) {
        handleFatalError(hr,"Folder directory: " + tmpDefDir, e);
        return;
      }
    }

    // XXX if we never defined a folder directory We're dead here!

    /* Check to see if we just want to list folders */

   
    if ("list".equals(hr.get("action"))) {
      String delim = hr.get("delim", "/");
      String glob = hr.get("glob");
      StringBuffer sb = new StringBuffer("INBOX");
      try {
        /* Get an array of the Folders under folderRoot */

        mailFolders = tmpEmailConn.folderRoot.list();

        /* Parse through that list, getting the names of the folders */

        for (int i=0;i<mailFolders.length;i++) {
          String name = mailFolders[i].getName();
    if (glob!= null && !Glob.match(glob, name)) {
        continue;
    }
    try {
             mailFolders[i].getMessageCount();
       sb.append(delim).append(name);
    } catch (Exception ex) {
       // System.out.println("  BAD: " + name);
             hr.request.log(Server.LOG_ERROR,connHandle,
                       ex.getMessage());
    }
        }
        props.put(connHandle + "folders",sb.toString());
  // System.out.println("Got: " + connHandle + ".folders" + " => " + sb.toString());
      } catch (FolderNotFoundException e) {
        props.put(connHandle + "mailError","Couldn't find default mail folder dir for: " +
                  tmpEmailConn.user);

        hr.request.log(Server.LOG_ERROR,connHandle,
                       "Couldn't find default mail folder dir for: " + tmpEmailConn.user);
      } catch (MessagingException e) {
        handleFatalError(hr,"Looking for folders", e);
      }
      return;
    }

    /* Get the folder name to operate on */

    folderName = hr.get("foldername");

    if (folderName == null) {
      debug(hr,"NULL foldername passed to the folder tag!");
      return;
    }

    /* Check our special case (INBOX) */

    if (!("INBOX".equalsIgnoreCase(folderName)) && (tmpEmailConn.defaultDir != null)) {
      folderName = tmpEmailConn.defaultDir + "/" + folderName;
    }

    hr.request.log(Server.LOG_DIAGNOSTIC,connHandle,"folderName in <folder> tag = " +
                   folderName);
    hr.request.log(Server.LOG_DIAGNOSTIC,connHandle,"defaultDir in <folder> tag = " +
                   tmpEmailConn.defaultDir);
    /* Check to see if we are creating a new folder.               */
    /*                         */
    /* Note: the JavaMail API is a little weird here with regard   */
    /*       to how folders are created.  The getFolder() method   */
    /*       of the Store object does not create a folder on the   */
    /*       server - it only retrieves a 'handle' to a folder.    */
    /*       To create a folder, you must first check if it exists */
    /*       already, then call the create() method on the object  */
    /*       returned from the getFolder() call.                   */

    if ("create".equals(hr.get("action"))) {
      try {
        tmpFldr = tmpEmailConn.userMsgStore.getFolder(folderName);

        if (!tmpFldr.exists()) {
            tmpFldr.create(Folder.HOLDS_MESSAGES);
        } else {
          props.put(connHandle + "mailError","Folder: " + folderName + " already exists");

          hr.request.log(Server.LOG_DIAGNOSTIC,connHandle,
                         "Folder: " + folderName + " already exists!");
View Full Code Here

  public void tag_message(RewriteContext hr) {
    String connHandle = getConnHandle(hr);
    EmailConnection tmpEmailConn;
    String folderName;
    Object msgContent,tmpMsgContent;
    Folder tmpFolder;
    String msgNum;
    int partCount,partIndex;
    StringTokenizer msglist;
    String headerlist,startmsg,msglimit;
    String[] tmpHdr;
View Full Code Here

    String connHandle = getConnHandle(hr);
    Properties props = hr.request.props;
    Enumeration keys = null;
    RefileInfo tmpRefile = null;
    String tmpKey = null;
    Folder tmpFolder = null;
    Message[] tmpMsgs = null;

    /* Check to see if we need to process any pending msg refiles */

    if (!refileFolders.isEmpty()) {
View Full Code Here

        // connect to mailbox
        Mailbox.clearAll();
        JavaMailSenderImpl sender = new JavaMailSenderImpl();
        Store store = sender.getSession().getStore("pop3");
        store.connect("localhost", 25, "bill", "secret");
        Folder folder = store.getFolder("INBOX");
        folder.open(Folder.READ_WRITE);
        folder.expunge();

        // inserts 5 new messages
        Message[] messages = new Message[5];
        for (int i = 0; i < 5; i++) {
            messages[i] = new MimeMessage(sender.getSession());
            messages[i].setText("Message " + i);
        }
        folder.appendMessages(messages);
        folder.close(true);
    }
View Full Code Here

TOP

Related Classes of javax.mail.Folder

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.