/** * File: TestClient.java * Project: CMSC 202 Project #, Fall 2010 * Author: John Park * Date: Dec 5, 2010 * Section: 14 * E-mail: park@umbc.edu * Class Invariants: * None. */ package proj5; import proj5Lib.*; /** * @author park * */ public class TestClient { public static void main(String[] args) throws Exception { NetworkMailbox mbox; int numMessages; String mboxName; String headerAll, headerFrom, headerTo, headerSubject, headerSentDate; String body; int i = -1; boolean isPop = false; try { if (isPop) { mboxName = "INBOX"; // POP3 doesn't allow any other! mbox = NetworkMailbox.openNetworkMailbox("nexusgenomics.com", NetworkMailbox.POP3, 110, "INBOX", null, null); // mbox = NetworkMailbox.openNetworkMailbox("pop.umbc.edu", // NetworkMailbox.POP3, 0, mboxName, null, null); // mbox = NetworkMailbox.openNetworkMailbox("pop.gmail.com", // NetworkMailbox.POP3, 0, mboxName, null, null); { isPop = true; } } else { //mboxName = "PROJ5-TEST"; mboxName = "INBOX"; //mboxName = "INBOX-FOOBAR"; mbox = NetworkMailbox.openNetworkMailbox("nexusgenomics.com", NetworkMailbox.IMAP, 143, "INBOX", null, null); // mbox = NetworkMailbox.openNetworkMailbox("imap.umbc.edu", // NetworkMailbox.IMAP, 0, mboxName, null, null); // mbox = NetworkMailbox.openNetworkMailbox("imap.gmail.com", // NetworkMailbox.IMAP, 0, mboxName, null, null); } numMessages = mbox.getNumMessages(); for (i = 0; i < numMessages; i++) { MailMessage msg = mbox.getMessage(i); if (i < 20) { System.out.println("Message " + (i + 1) + ":"); } else { System.out.print(i % 10 == 9 ? "|" : "."); if (i % 100 == 99) System.out.println(); } if (isPop) { headerAll = msg.getHeaderText(); if (i < 20) { System.out.print("Headers:\n" + headerAll); } } else { headerFrom = msg.getFromAddr(); headerTo = msg.getToAddrs(); headerSentDate = msg.getSentDate(); headerSubject = msg.getSubject(); if (i < 20) { System.out.println("From: " + headerFrom + "\nTo: " + headerTo + "\nSent: " + headerSentDate + "\nSubject: " + headerSubject); } } try { body = msg.getBodyText(); } catch (MailboxContentException e) { body = "\n"; // This is enough recovery--continue; } if (i < 20) { if (numMessages > 20 && i > 0) { System.out.println(""); } else { System.out.println("Message contents:\n" + body); } } } } catch (MailboxOpenException e) { System.err.println("Problem opening mailbox: " + e.getMessage()); System.exit(1); } catch (MailboxException e) { System.err.println("Problems with getting mail item #" + (i + 1) + ": "+ e.getMessage()); System.exit(1); } } }