@Override public TypeCode getInLineType() { return TypeCode.from(mailet.getInitParameter("inline", "none")); }
private boolean keepMessageId() { return mailet.getInitParameters().getInLineType().equals(TypeCode.UNALTERED); }
private MimeBodyPart createAttachedOriginal(Mail originalMail, TypeCode attachmentType) throws MessagingException { MimeBodyPart part = new MimeBodyPart(); MimeMessage originalMessage = originalMail.getMessage(); if (attachmentType.equals(TypeCode.HEADS)) { part.setContent(new MimeMessageUtils(originalMessage).getMessageHeaders(), "text/plain"); part.setHeader("Content-Type", "text/rfc822-headers"); } else { part.setContent(originalMessage, "message/rfc822"); } if ((originalMessage.getSubject() != null) && (originalMessage.getSubject().trim().length() > 0)) { part.setFileName(originalMessage.getSubject().trim()); } else { part.setFileName("No Subject"); } part.setDisposition("Attachment"); return part; }
@Override public TypeCode getAttachmentType() { return defaultAttachmentType.orElse(TypeCode.from(mailet.getInitParameter("attachment", "none"))); }
private MimeMultipart generateMultipartContent(MimeMessage originalMessage, String head) throws Exception { // Create the message body MimeMultipart multipart = new MimeMultipart("mixed"); // Create the message MimeMultipart mpContent = new MimeMultipart("alternative"); mpContent.addBodyPart(getBodyPart(originalMail, originalMessage, head)); MimeBodyPart contentPartRoot = new MimeBodyPart(); contentPartRoot.setContent(mpContent); multipart.addBodyPart(contentPartRoot); if (mailet.getInitParameters().isDebug()) { LOGGER.debug("attachmentType:{}", mailet.getInitParameters().getAttachmentType()); } if (!mailet.getInitParameters().getAttachmentType().equals(TypeCode.NONE)) { multipart.addBodyPart(getAttachmentPart(originalMessage, head)); } if (mailet.getInitParameters().isAttachError() && originalMail.getErrorMessage() != null) { multipart.addBodyPart(getErrorPart(originalMail)); } return multipart; }
@Override public TypeCode getInLineType() { return defaultInLineType.orElse(TypeCode.from(mailet.getInitParameter("inline", "unaltered"))); }
private MimeMultipartReport createMultipart(Mail originalMail) throws MessagingException { MimeMultipartReport multipart = new MimeMultipartReport(); multipart.setReportType("delivery-status"); multipart.addBodyPart(createTextMsg(originalMail)); multipart.addBodyPart(createDSN(originalMail)); if (!getInitParameters().getAttachmentType().equals(TypeCode.NONE)) { multipart.addBodyPart(createAttachedOriginal(originalMail, getInitParameters().getAttachmentType())); } return multipart; }
@Override public TypeCode getAttachmentType() { return TypeCode.from(mailet.getInitParameter("attachment", "message")); }