Vector Mails = new Vector(0,1);
System.out.println("In Funktion");
Session session = Session.getInstance( props, new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication( props.getProperty( "mail.imap.user" ),
props.getProperty( "mail.imap.password" ) );
}
} );
//session.setDebug( true );
try{
Store store = session.getStore( "imap" );
javax.mail.Provider p = session.getProvider("imap");
System.out.println(p.getType()+p.getProtocol());
store.connect();
Folder folder = store.getFolder( "INBOX" );
//folder.addMessageCountListener(this);
folder.open( Folder.READ_ONLY );
Message message[] = folder.getMessages();
for ( int i = 0; i < message.length; i++ )
{
Message m = message[i];
System.out.println(m.getSubject());
//Mail anlegen, die dann bei jedem Durchlauf an den Vector gehängt wird.
Mail tempMail = new Mail();
tempMail.From = m.getFrom()[0].toString();
tempMail.FromRipped = Mailbox.parseEmail(m.getFrom()[0].toString());
tempMail.Subject = m.getSubject();
tempMail.To = m.getRecipients(Message.RecipientType.TO)[0].toString();
tempMail.SentDate =m.getSentDate();
tempMail.ReceivedDate = m.getReceivedDate();
tempMail.size = m.getSize();
tempMail.LineCount = m.getLineCount();
tempMail.MessageNumber = m.getMessageNumber();
tempMail.ContentType = m.getContentType();
//Wenn Mail vom Typ Multipart ist, Inhalt Zeilenweise auslesen und immer an ContentString anhängen. Andernfalls, den INhalt einfach direkt in Content schreiben
if(m.isMimeType("multipart/mixed") || m.isMimeType("multipart/alternative"))
{
//StringBuffer mit dem die einzelnen Zeilen der MultiPart Nachricht zusammengesetzt werden
//Unten wird der StringBuffer dem Content String zugewiesen.
StringBuffer sb = new StringBuffer();
Multipart mp = (Multipart) m.getContent();
for (int j = 0; j < mp.getCount(); j++)
{
Part part = mp.getBodyPart(j);
String disposition = part.getDisposition();
if (disposition == null)
{
MimeBodyPart mimePart = (MimeBodyPart) part;
if (mimePart.isMimeType("text/plain"))
{
BufferedReader in = new BufferedReader(new InputStreamReader(mimePart.getInputStream()));
for (String line = ""; (line = in.readLine()) != null; )
{
sb.append(line);
sb.append("\n");
}//for
}//if
} //if
} //for
tempMail.Content = sb.toString();
}//if
else
{
tempMail.Content = m.getContent().toString();
}
tempMail.Content = Tools.escapeCodes(tempMail.Content);
Mails.addElement(tempMail);
System.out.print("x");
//if ( m.isMimeType("text/plain") ) System.out.println( m.getContent() );
} //FOR
folder.close( false );
store.close();
}//TRY
catch(Exception e)
{
e.printStackTrace();
}