MainClass.java Source code

Java tutorial

Introduction

Here is the source code for MainClass.java

Source

import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.URLName;
import javax.mail.internet.InternetAddress;

public class MainClass {

    public static void main(String[] args) throws Exception {
        URLName server = new URLName("protocol://username@host/foldername");

        Session session = Session.getDefaultInstance(new Properties(), new MailAuthenticator());

        Folder folder = session.getFolder(server);
        if (folder == null) {
            System.out.println("Folder " + server.getFile() + " not found.");
            System.exit(1);
        }
        folder.open(Folder.READ_ONLY);

        Message[] messages = folder.getMessages();
        for (int i = 0; i < messages.length; i++) {
            System.out.println("Message " + (i + 1));

            System.out.println("From: " + InternetAddress.toString(messages[i].getFrom()));
            System.out.println("Reply-to: " + InternetAddress.toString(messages[i].getReplyTo()));
            String to = InternetAddress.toString(messages[i].getRecipients(Message.RecipientType.TO));
            System.out.println("To: " + to);
            String cc = InternetAddress.toString(messages[i].getRecipients(Message.RecipientType.CC));
            System.out.println("Cc: " + cc);
            String bcc = InternetAddress.toString(messages[i].getRecipients(Message.RecipientType.BCC));
            System.out.println("Bcc: " + bcc);
            System.out.println("Subject: " + messages[i].getSubject());
            System.out.println("Sent: " + messages[i].getSentDate());
            System.out.println("Received: " + messages[i].getReceivedDate());
        }
        folder.close(false);
    }
}

class MailAuthenticator extends Authenticator {

    public MailAuthenticator() {
    }

    public PasswordAuthentication getPasswordAuthentication() {
        return new PasswordAuthentication("username", "password");
    }
}