/** * Setzt die Properties einen existierenden DisplayMessage-Objektes aus der uebergebenen * javax.mail.Message. * * @param displayMessage Bereits existierende Display-Message * @param content Message, aus der das DisplayMessage-Objekt gebaut werden soll. */ public static DisplayMessageModel refurbishGivenDisplayMessage( DisplayMessageModel displayMessage, Message message) throws MessageRetrieveException { displayMessage.setOriginMessage(message); // Parts aus der Message in eine flache ArrayList (DisplayParts) und // eine // HashMap (InlineParts) packen. Ausserdem die Parts von // Multipart-Objekten // in einer Map merken (Key: Multipart-Objekt / Value: List) List<Part> displayParts = new ArrayList<Part>(); Map<String, Part> inlineParts = new HashMap<String, Part>(); Map<Multipart, List<Integer>> multiparts = new HashMap<Multipart, List<Integer>>(); try { deflateMessageParts(message, displayParts, inlineParts, multiparts); } catch (Exception e) { try { assemblePartsForFaultySourceMessage( message, displayMessage, displayParts, inlineParts, multiparts, e); } catch (MessagingException me) { e.printStackTrace(); me.printStackTrace(); throw (new MessageRetrieveException("Konnte Message-Parts nicht beziehen", e)); } } displayMessage.setDisplayParts(displayParts); displayMessage.setInlineParts(inlineParts); displayMessage.setMultiparts(multiparts); return (displayMessage); }