Package de.elo.mover.main.mail
Class MailProcessor
java.lang.Object
de.elo.mover.main.mail.MailProcessor
- Direct Known Subclasses:
EMLProcessor,MSGProcessor
Überschrift: MailProcessor.
Beschreibung: Interface für die Komponente zum Auslesen des E-Mail Inhaltes.
Copyright: Copyright ELO Digital Office GmbH 2018 - 2021
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic StringaddCharset(String text, String charset) Fügt dem HTML Code das angegebene Charset hinzu sofern nicht schon ein anderes Charset vorhanden ist.static StringcleanExternalLinks(String html) Ersetzt externe Links in E-Mails durch X.static FilecreateMailContentFile(File mailContentDir, String fileName, String mailContent) Erzeugt eine HTM-Datei mit dem E-Mail Inhalt und liefert die Datei zurück.protected static StringformatDate(Date date) Formattiert das angegebene Datum für die Anzeige.abstract List<Attachment> Liefert die Attachments zurück.Liefert die Felder zurück, die ausgewertet wurden.static booleanisValidEMailAddress(String mailAddress) Rudimentärer Test ob die angegebene E-Mail Adresse gültig ist.static StringmakeValidHtml(String mailContent) Fügt dem übergegbenen HTML-Code, falls noch nicht vorhanden die entsprechenden HTML-Tags hinzu damit valides HTML entsteht.abstract voidprocessFile(File file) Extrahiert die Felder aus der angegebenen E-Mail Datei.abstract voidprocessStream(InputStream stream) Extrahiert die Felder der angegebenen E-Mail im Stream.static StringreplaceCids(String html, List<Attachment> mailAttachments) Ersetzt vorhandene Cids durch Dateinamen.voidwriteEmbeddedPictures(List<Attachment> attachments, boolean overwrite, File mailContentDir) Schreibt die eingebetteten Bilder im temporären Verzeichnis.voidwriteToFile(Attachment attachment, File outFile) Schreibt den Anhanginhalt in die angegebene Datei.voidwriteToStream(InputStream inputStream, OutputStream outputStream) Schreibt den Inhalt des Anhangs in einen OutputStream.
-
Field Details
-
MAIL_CONTENT_START
Dient als Marker für den Anfang des E-Mail Inhaltes. -
MAIL_CONTENT_END
Dient als Marker für das Ende des E-Mail Inhaltes.
-
-
Constructor Details
-
MailProcessor
public MailProcessor()
-
-
Method Details
-
processFile
Extrahiert die Felder aus der angegebenen E-Mail Datei.- Parameters:
file- E-Mail Datei- Throws:
Exception
-
processStream
Extrahiert die Felder der angegebenen E-Mail im Stream. Der Stream wird geschlossen.- Parameters:
stream- E-Mail Datei als Stream- Throws:
Exception
-
getFields
Liefert die Felder zurück, die ausgewertet wurden. Die Methode "processFile" sollte vorher aufgerufen werden.- Returns:
- Hashmap mit den ausgewerteten Feldern
-
getAttachments
Liefert die Attachments zurück. Die Methode "processFile" sollte vorher aufgerufen werden.- Returns:
- Liste mit E-Mail Anhängen
-
writeEmbeddedPictures
public void writeEmbeddedPictures(List<Attachment> attachments, boolean overwrite, File mailContentDir) throws Exception Schreibt die eingebetteten Bilder im temporären Verzeichnis.- Parameters:
attachments- Liste mit E-Mail Anhängenoverwrite- Gibt an ob Daten überschrieben werden sollen oder unique Dateinamen generiert werden sollenmailContentDir- Tempverzeichnis für Maildaten- Throws:
Exception
-
writeToFile
Schreibt den Anhanginhalt in die angegebene Datei.- Parameters:
attachment- E-Mail AnhangoutFile- Datei, in der geschrieben wird- Throws:
Exception
-
writeToStream
Schreibt den Inhalt des Anhangs in einen OutputStream.- Parameters:
inputStream- InputStreamoutputStream- OutputStream- Throws:
Exception
-
createMailContentFile
Erzeugt eine HTM-Datei mit dem E-Mail Inhalt und liefert die Datei zurück.- Parameters:
mailContentDir- Temporäres Verzeichnis für MaildatenfileName- DateinamenmailContent- E-Mail Inhalt- Returns:
- HTML-Mail-Datei
-
makeValidHtml
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
-
addCharset
Fügt dem HTML Code das angegebene Charset hinzu sofern nicht schon ein anderes Charset vorhanden ist.- Parameters:
text- HTML-Codecharset- Charset, das hinzugefügt werden soll- Returns:
- HTML Code mit Charset
-
cleanExternalLinks
Ersetzt externe Links in E-Mails durch X.- Parameters:
html- HTML Code, der bereinigt werden soll- Returns:
- bereinigter HTML Code
-
replaceCids
Ersetzt vorhandene Cids durch Dateinamen.- Parameters:
html- HTML CodemailAttachments- Liste mit E-Mail Anhängen- Returns:
- bereinigter HTML Code
- Throws:
Exception
-
isValidEMailAddress
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
-
formatDate
Formattiert das angegebene Datum für die Anzeige.- Parameters:
date- Datum- Returns:
- Formattierter Datumsstring für die Anzeige
-