Package de.elo.mover.main.mail
Class MailProcessor
java.lang.Object
de.elo.mover.main.mail.MailProcessor
- Direct Known Subclasses:
- EMLProcessor,- MSGProcessor
public abstract class MailProcessor
extends java.lang.Object
Überschrift: MailProcessor.
Beschreibung: Interface für die Komponente zum Auslesen des E-Mail Inhaltes.
Copyright: Copyright ELO Digital Office GmbH 2018 - 2021
- 
Field SummaryFields Modifier and Type Field Description static java.lang.StringMAIL_CONTENT_ENDDient als Marker für das Ende des E-Mail Inhaltes.static java.lang.StringMAIL_CONTENT_STARTDient als Marker für den Anfang des E-Mail Inhaltes.
- 
Constructor SummaryConstructors Constructor Description MailProcessor()
- 
Method SummaryModifier and Type Method Description static java.lang.StringaddCharset(java.lang.String text, java.lang.String charset)Fügt dem HTML Code das angegebene Charset hinzu sofern nicht schon ein anderes Charset vorhanden ist.static java.lang.StringcleanExternalLinks(java.lang.String html)Ersetzt externe Links in E-Mails durch X.static java.io.FilecreateMailContentFile(java.io.File mailContentDir, java.lang.String fileName, java.lang.String mailContent)Erzeugt eine HTM-Datei mit dem E-Mail Inhalt und liefert die Datei zurück.protected static java.lang.StringformatDate(java.util.Date date)Formattiert das angegebene Datum für die Anzeige.abstract java.util.List<Attachment>getAttachments()Liefert die Attachments zurück.abstract java.util.Map<java.lang.String,java.lang.String>getFields()Liefert die Felder zurück, die ausgewertet wurden.static booleanisValidEMailAddress(java.lang.String mailAddress)Rudimentärer Test ob die angegebene E-Mail Adresse gültig ist.static java.lang.StringmakeValidHtml(java.lang.String mailContent)Fügt dem übergegbenen HTML-Code, falls noch nicht vorhanden die entsprechenden HTML-Tags hinzu damit valides HTML entsteht.abstract voidprocessFile(java.io.File file)Extrahiert die Felder aus der angegebenen E-Mail Datei.abstract voidprocessStream(java.io.InputStream stream)Extrahiert die Felder der angegebenen E-Mail im Stream.static java.lang.StringreplaceCids(java.lang.String html, java.util.List<Attachment> mailAttachments)Ersetzt vorhandene Cids durch Dateinamen.voidwriteEmbeddedPictures(java.util.List<Attachment> attachments, boolean overwrite, java.io.File mailContentDir)Schreibt die eingebetteten Bilder im temporären Verzeichnis.voidwriteToFile(Attachment attachment, java.io.File outFile)Schreibt den Anhanginhalt in die angegebene Datei.voidwriteToStream(java.io.InputStream inputStream, java.io.OutputStream outputStream)Schreibt den Inhalt des Anhangs in einen OutputStream.Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
- 
Field Details- 
MAIL_CONTENT_STARTpublic static java.lang.String MAIL_CONTENT_STARTDient als Marker für den Anfang des E-Mail Inhaltes.
- 
MAIL_CONTENT_ENDpublic static java.lang.String MAIL_CONTENT_ENDDient als Marker für das Ende des E-Mail Inhaltes.
 
- 
- 
Constructor Details- 
MailProcessorpublic MailProcessor()
 
- 
- 
Method Details- 
processFilepublic abstract void processFile(java.io.File file) throws java.lang.ExceptionExtrahiert die Felder aus der angegebenen E-Mail Datei.- Parameters:
- file- E-Mail Datei
- Throws:
- java.lang.Exception
 
- 
processStreampublic abstract void processStream(java.io.InputStream stream) throws java.lang.ExceptionExtrahiert die Felder der angegebenen E-Mail im Stream. Der Stream wird geschlossen.- Parameters:
- stream- E-Mail Datei als Stream
- Throws:
- java.lang.Exception
 
- 
getFieldspublic abstract java.util.Map<java.lang.String,java.lang.String> getFields()Liefert die Felder zurück, die ausgewertet wurden. Die Methode "processFile" sollte vorher aufgerufen werden.- Returns:
- Hashmap mit den ausgewerteten Feldern
 
- 
getAttachmentsLiefert die Attachments zurück. Die Methode "processFile" sollte vorher aufgerufen werden.- Returns:
- Liste mit E-Mail Anhängen
 
- 
writeEmbeddedPicturespublic void writeEmbeddedPictures(java.util.List<Attachment> attachments, boolean overwrite, java.io.File mailContentDir) throws java.lang.ExceptionSchreibt die eingebetteten Bilder im temporären Verzeichnis.- Parameters:
- attachments- Liste mit E-Mail Anhängen
- overwrite- Gibt an ob Daten überschrieben werden sollen oder unique Dateinamen generiert werden sollen
- mailContentDir- Tempverzeichnis für Maildaten
- Throws:
- java.lang.Exception
 
- 
writeToFileSchreibt den Anhanginhalt in die angegebene Datei.- Parameters:
- attachment- E-Mail Anhang
- outFile- Datei, in der geschrieben wird
- Throws:
- java.lang.Exception
 
- 
writeToStreampublic void writeToStream(java.io.InputStream inputStream, java.io.OutputStream outputStream) throws java.lang.ExceptionSchreibt den Inhalt des Anhangs in einen OutputStream.- Parameters:
- inputStream- InputStream
- outputStream- OutputStream
- Throws:
- java.lang.Exception
 
- 
createMailContentFilepublic static java.io.File createMailContentFile(java.io.File mailContentDir, java.lang.String fileName, java.lang.String mailContent)Erzeugt eine HTM-Datei mit dem E-Mail Inhalt und liefert die Datei zurück.- Parameters:
- mailContentDir- Temporäres Verzeichnis für Maildaten
- fileName- Dateinamen
- mailContent- E-Mail Inhalt
- Returns:
- HTML-Mail-Datei
 
- 
makeValidHtmlpublic static java.lang.String makeValidHtml(java.lang.String mailContent)Fügt dem übergegbenen HTML-Code, falls noch nicht vorhanden die entsprechenden HTML-Tags hinzu damit valides HTML entsteht.- Parameters:
- mailContent- HTML-Code
- Returns:
- Gültiger HTML-Code
 
- 
addCharsetpublic static java.lang.String addCharset(java.lang.String text, java.lang.String charset)Fügt dem HTML Code das angegebene Charset hinzu sofern nicht schon ein anderes Charset vorhanden ist.- Parameters:
- text- HTML-Code
- charset- Charset, das hinzugefügt werden soll
- Returns:
- HTML Code mit Charset
 
- 
cleanExternalLinkspublic static java.lang.String cleanExternalLinks(java.lang.String html)Ersetzt externe Links in E-Mails durch X.- Parameters:
- html- HTML Code, der bereinigt werden soll
- Returns:
- bereinigter HTML Code
 
- 
replaceCidspublic static java.lang.String replaceCids(java.lang.String html, java.util.List<Attachment> mailAttachments) throws java.lang.ExceptionErsetzt vorhandene Cids durch Dateinamen.- Parameters:
- html- HTML Code
- mailAttachments- Liste mit E-Mail Anhängen
- Returns:
- bereinigter HTML Code
- Throws:
- java.lang.Exception
 
- 
isValidEMailAddresspublic static boolean isValidEMailAddress(java.lang.String mailAddress)Rudimentärer Test ob die angegebene E-Mail Adresse gültig ist.- Parameters:
- mailAddress- Zu testende E-Mail Adresse
- Returns:
- E-Mail Adresse ist gültig
 
- 
formatDateprotected static java.lang.String formatDate(java.util.Date date)Formattiert das angegebene Datum für die Anzeige.- Parameters:
- date- Datum
- Returns:
- Formattierter Datumsstring für die Anzeige
 
 
-