Package org.apache.camel.component.mail
Class MailBinding
- java.lang.Object
-
- org.apache.camel.component.mail.MailBinding
-
public class MailBinding extends Object
A Strategy used to convert between a CamelExchangeandMessageto and from a MailMimeMessage
-
-
Constructor Summary
Constructors Constructor Description MailBinding()MailBinding(org.apache.camel.spi.HeaderFilterStrategy headerFilterStrategy, ContentTypeResolver contentTypeResolver, boolean decodeFilename)Deprecated.MailBinding(org.apache.camel.spi.HeaderFilterStrategy headerFilterStrategy, ContentTypeResolver contentTypeResolver, boolean decodeFilename, boolean mapMailMessage)MailBinding(org.apache.camel.spi.HeaderFilterStrategy headerFilterStrategy, ContentTypeResolver contentTypeResolver, boolean decodeFilename, boolean mapMailMessage, boolean failOnDuplicateAttachment)MailBinding(org.apache.camel.spi.HeaderFilterStrategy headerFilterStrategy, ContentTypeResolver contentTypeResolver, boolean decodeFilename, boolean mapMailMessage, boolean failOnDuplicateAttachment, String generateMissingAttachmentNames, String handleDuplicateAttachmentNames)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddAttachmentsToMultipart(javax.mail.internet.MimeMultipart multipart, String partDisposition, AttachmentsContentTransferEncodingResolver encodingResolver, org.apache.camel.Exchange exchange)protected voidaddBodyToMultipart(MailConfiguration configuration, javax.mail.internet.MimeMultipart activeMultipart, org.apache.camel.Exchange exchange)protected voidappendAttachmentsFromCamel(javax.mail.internet.MimeMessage mimeMessage, MailConfiguration configuration, org.apache.camel.Exchange exchange)Appends the Mail attachments from the CamelMailMessageprotected voidappendHeadersFromCamelMessage(javax.mail.internet.MimeMessage mimeMessage, MailConfiguration configuration, org.apache.camel.Exchange exchange)Appends the Mail headers from the CamelMailMessageprotected voidcreateMultipartAlternativeMessage(javax.mail.internet.MimeMessage mimeMessage, MailConfiguration configuration, org.apache.camel.Exchange exchange)protected static StringdetermineCharSet(MailConfiguration configuration, org.apache.camel.Exchange exchange)protected StringdetermineContentType(MailConfiguration configuration, org.apache.camel.Exchange exchange)voidextractAttachmentsFromMail(javax.mail.Message message, Map<String,org.apache.camel.attachment.Attachment> map)Parses the attachments of the given mail message and adds them to the mapprotected voidextractAttachmentsFromMultipart(javax.mail.Multipart mp, Map<String,org.apache.camel.attachment.Attachment> map)ObjectextractBodyFromMail(org.apache.camel.Exchange exchange, MailMessage mailMessage)Extracts the body from the Mail messageprotected Map<String,Object>extractHeadersFromMail(javax.mail.Message mailMessage, org.apache.camel.Exchange exchange)protected static StringgetAlternativeBody(MailConfiguration configuration, org.apache.camel.Exchange exchange)StringgetGenerateMissingAttachmentNames()StringgetHandleDuplicateAttachmentNames()protected voidhandleDuplicateFileAttachment(javax.mail.Multipart mp, String duplicateFileName)Strategy for handling extracting mail message that has duplicate file attachmentsprotected static booleanhasAlternativeBody(MailConfiguration configuration, org.apache.camel.Exchange exchange)booleanisFailOnDuplicateAttachment()protected StringpopulateContentOnBodyPart(javax.mail.BodyPart part, MailConfiguration configuration, org.apache.camel.Exchange exchange)protected StringpopulateContentOnMimeMessage(javax.mail.internet.MimeMessage part, MailConfiguration configuration, org.apache.camel.Exchange exchange)voidpopulateMailMessage(MailEndpoint endpoint, javax.mail.internet.MimeMessage mimeMessage, org.apache.camel.Exchange exchange)protected voidresolveContentTransferEncoding(AttachmentsContentTransferEncodingResolver resolver, int i, javax.mail.BodyPart messageBodyPart)voidsetFailOnDuplicateAttachment(boolean failOnDuplicateAttachment)voidsetGenerateMissingAttachmentNames(String generateMissingAttachmentNames)voidsetHandleDuplicateAttachmentNames(String handleDuplicateAttachmentNames)protected voidsetRecipientFromEndpointConfiguration(javax.mail.internet.MimeMessage mimeMessage, MailEndpoint endpoint, org.apache.camel.Exchange exchange)Appends the Mail headers from the endpoint configuration.protected booleanshouldAddAttachment()Strategy to allow filtering of attachments which are added on the Mail message
-
-
-
Constructor Detail
-
MailBinding
public MailBinding()
-
MailBinding
@Deprecated public MailBinding(org.apache.camel.spi.HeaderFilterStrategy headerFilterStrategy, ContentTypeResolver contentTypeResolver, boolean decodeFilename)
Deprecated.
-
MailBinding
public MailBinding(org.apache.camel.spi.HeaderFilterStrategy headerFilterStrategy, ContentTypeResolver contentTypeResolver, boolean decodeFilename, boolean mapMailMessage)
-
MailBinding
public MailBinding(org.apache.camel.spi.HeaderFilterStrategy headerFilterStrategy, ContentTypeResolver contentTypeResolver, boolean decodeFilename, boolean mapMailMessage, boolean failOnDuplicateAttachment)
-
MailBinding
public MailBinding(org.apache.camel.spi.HeaderFilterStrategy headerFilterStrategy, ContentTypeResolver contentTypeResolver, boolean decodeFilename, boolean mapMailMessage, boolean failOnDuplicateAttachment, String generateMissingAttachmentNames, String handleDuplicateAttachmentNames)
-
-
Method Detail
-
isFailOnDuplicateAttachment
public boolean isFailOnDuplicateAttachment()
-
setFailOnDuplicateAttachment
public void setFailOnDuplicateAttachment(boolean failOnDuplicateAttachment)
-
populateMailMessage
public void populateMailMessage(MailEndpoint endpoint, javax.mail.internet.MimeMessage mimeMessage, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException, IOException
- Throws:
javax.mail.MessagingExceptionIOException
-
determineContentType
protected String determineContentType(MailConfiguration configuration, org.apache.camel.Exchange exchange)
-
determineCharSet
protected static String determineCharSet(MailConfiguration configuration, org.apache.camel.Exchange exchange)
-
populateContentOnMimeMessage
protected String populateContentOnMimeMessage(javax.mail.internet.MimeMessage part, MailConfiguration configuration, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException, IOException
- Throws:
javax.mail.MessagingExceptionIOException
-
populateContentOnBodyPart
protected String populateContentOnBodyPart(javax.mail.BodyPart part, MailConfiguration configuration, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException, IOException
- Throws:
javax.mail.MessagingExceptionIOException
-
extractBodyFromMail
public Object extractBodyFromMail(org.apache.camel.Exchange exchange, MailMessage mailMessage)
Extracts the body from the Mail message
-
extractAttachmentsFromMail
public void extractAttachmentsFromMail(javax.mail.Message message, Map<String,org.apache.camel.attachment.Attachment> map) throws javax.mail.MessagingException, IOExceptionParses the attachments of the given mail message and adds them to the map- Parameters:
message- the mail message with attachmentsmap- the map to add found attachments (attachmentFilename is the key)- Throws:
javax.mail.MessagingExceptionIOException
-
extractAttachmentsFromMultipart
protected void extractAttachmentsFromMultipart(javax.mail.Multipart mp, Map<String,org.apache.camel.attachment.Attachment> map) throws javax.mail.MessagingException, IOException- Throws:
javax.mail.MessagingExceptionIOException
-
handleDuplicateFileAttachment
protected void handleDuplicateFileAttachment(javax.mail.Multipart mp, String duplicateFileName) throws javax.mail.MessagingExceptionStrategy for handling extracting mail message that has duplicate file attachments- Parameters:
mp- the multipart entityduplicateFileName- the duplicated file name- Throws:
javax.mail.MessagingException- is thrown, failing with an error
-
appendHeadersFromCamelMessage
protected void appendHeadersFromCamelMessage(javax.mail.internet.MimeMessage mimeMessage, MailConfiguration configuration, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException, IOExceptionAppends the Mail headers from the CamelMailMessage- Throws:
javax.mail.MessagingExceptionIOException
-
setRecipientFromEndpointConfiguration
protected void setRecipientFromEndpointConfiguration(javax.mail.internet.MimeMessage mimeMessage, MailEndpoint endpoint, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException, IOExceptionAppends the Mail headers from the endpoint configuration.- Throws:
javax.mail.MessagingExceptionIOException
-
appendAttachmentsFromCamel
protected void appendAttachmentsFromCamel(javax.mail.internet.MimeMessage mimeMessage, MailConfiguration configuration, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException, IOExceptionAppends the Mail attachments from the CamelMailMessage- Throws:
javax.mail.MessagingExceptionIOException
-
addAttachmentsToMultipart
protected void addAttachmentsToMultipart(javax.mail.internet.MimeMultipart multipart, String partDisposition, AttachmentsContentTransferEncodingResolver encodingResolver, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException- Throws:
javax.mail.MessagingException
-
resolveContentTransferEncoding
protected void resolveContentTransferEncoding(AttachmentsContentTransferEncodingResolver resolver, int i, javax.mail.BodyPart messageBodyPart) throws javax.mail.MessagingException
- Throws:
javax.mail.MessagingException
-
createMultipartAlternativeMessage
protected void createMultipartAlternativeMessage(javax.mail.internet.MimeMessage mimeMessage, MailConfiguration configuration, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException, IOException- Throws:
javax.mail.MessagingExceptionIOException
-
addBodyToMultipart
protected void addBodyToMultipart(MailConfiguration configuration, javax.mail.internet.MimeMultipart activeMultipart, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException, IOException
- Throws:
javax.mail.MessagingExceptionIOException
-
shouldAddAttachment
protected boolean shouldAddAttachment()
Strategy to allow filtering of attachments which are added on the Mail message
-
extractHeadersFromMail
protected Map<String,Object> extractHeadersFromMail(javax.mail.Message mailMessage, org.apache.camel.Exchange exchange) throws javax.mail.MessagingException, IOException
- Throws:
javax.mail.MessagingExceptionIOException
-
hasAlternativeBody
protected static boolean hasAlternativeBody(MailConfiguration configuration, org.apache.camel.Exchange exchange)
-
getAlternativeBody
protected static String getAlternativeBody(MailConfiguration configuration, org.apache.camel.Exchange exchange)
-
getGenerateMissingAttachmentNames
public String getGenerateMissingAttachmentNames()
-
setGenerateMissingAttachmentNames
public void setGenerateMissingAttachmentNames(String generateMissingAttachmentNames)
-
getHandleDuplicateAttachmentNames
public String getHandleDuplicateAttachmentNames()
-
setHandleDuplicateAttachmentNames
public void setHandleDuplicateAttachmentNames(String handleDuplicateAttachmentNames)
-
-