Package com.consol.citrus.mail.message
Class MailMessageConverter
- java.lang.Object
-
- com.consol.citrus.mail.message.MailMessageConverter
-
- All Implemented Interfaces:
MessageConverter<org.springframework.mail.javamail.MimeMailMessage,org.springframework.mail.javamail.MimeMailMessage,MailEndpointConfiguration>
public class MailMessageConverter extends Object implements MessageConverter<org.springframework.mail.javamail.MimeMailMessage,org.springframework.mail.javamail.MimeMailMessage,MailEndpointConfiguration>
- Since:
- 2.0
- Author:
- Christoph Deppisch, Christian Guggenmos
-
-
Constructor Summary
Constructors Constructor Description MailMessageConverter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MailMessageconvertInbound(org.springframework.mail.javamail.MimeMailMessage message, MailEndpointConfiguration endpointConfiguration, TestContext context)org.springframework.mail.javamail.MimeMailMessageconvertOutbound(Message message, MailEndpointConfiguration endpointConfiguration, TestContext context)voidconvertOutbound(org.springframework.mail.javamail.MimeMailMessage mimeMailMessage, Message message, MailEndpointConfiguration endpointConfiguration, TestContext context)protected MailMessagecreateMailRequest(Map<String,Object> messageHeaders, BodyPart bodyPart, MailEndpointConfiguration endpointConfiguration)Creates a new mail message model object from message headers.protected Map<String,Object>createMessageHeaders(org.springframework.mail.javamail.MimeMailMessage msg)Reads basic message information such as sender, recipients and mail subject to message headers.protected BodyParthandleApplicationContentPart(javax.mail.internet.MimePart applicationData, String contentType)Construct body part form special application data.protected BodyParthandleBinaryPart(javax.mail.internet.MimePart mediaPart, String contentType)Construct simple body part from binary data just adding file name as content.protected BodyParthandleImageBinaryPart(javax.mail.internet.MimePart image, String contentType)Construct base64 body part from image data.protected BodyParthandlePart(javax.mail.internet.MimePart part)Process message part.protected BodyParthandleTextPart(javax.mail.internet.MimePart textPart, String contentType)Construct simple binary body part with base64 data.
-
-
-
Method Detail
-
convertOutbound
public org.springframework.mail.javamail.MimeMailMessage convertOutbound(Message message, MailEndpointConfiguration endpointConfiguration, TestContext context)
- Specified by:
convertOutboundin interfaceMessageConverter<org.springframework.mail.javamail.MimeMailMessage,org.springframework.mail.javamail.MimeMailMessage,MailEndpointConfiguration>
-
convertOutbound
public void convertOutbound(org.springframework.mail.javamail.MimeMailMessage mimeMailMessage, Message message, MailEndpointConfiguration endpointConfiguration, TestContext context)- Specified by:
convertOutboundin interfaceMessageConverter<org.springframework.mail.javamail.MimeMailMessage,org.springframework.mail.javamail.MimeMailMessage,MailEndpointConfiguration>
-
convertInbound
public MailMessage convertInbound(org.springframework.mail.javamail.MimeMailMessage message, MailEndpointConfiguration endpointConfiguration, TestContext context)
- Specified by:
convertInboundin interfaceMessageConverter<org.springframework.mail.javamail.MimeMailMessage,org.springframework.mail.javamail.MimeMailMessage,MailEndpointConfiguration>
-
createMailRequest
protected MailMessage createMailRequest(Map<String,Object> messageHeaders, BodyPart bodyPart, MailEndpointConfiguration endpointConfiguration)
Creates a new mail message model object from message headers.- Parameters:
messageHeaders-bodyPart-endpointConfiguration-- Returns:
-
createMessageHeaders
protected Map<String,Object> createMessageHeaders(org.springframework.mail.javamail.MimeMailMessage msg) throws javax.mail.MessagingException, IOException
Reads basic message information such as sender, recipients and mail subject to message headers.- Parameters:
msg-- Returns:
- Throws:
javax.mail.MessagingExceptionIOException
-
handlePart
protected BodyPart handlePart(javax.mail.internet.MimePart part) throws IOException, javax.mail.MessagingException
Process message part. Can be a text, binary or multipart instance.- Parameters:
part-- Returns:
- Throws:
IOExceptionjavax.mail.MessagingException
-
handleApplicationContentPart
protected BodyPart handleApplicationContentPart(javax.mail.internet.MimePart applicationData, String contentType) throws IOException, javax.mail.MessagingException
Construct body part form special application data. Based on known application content types delegate to text, image or binary body construction.- Parameters:
applicationData-contentType-- Returns:
- Throws:
IOExceptionjavax.mail.MessagingException
-
handleImageBinaryPart
protected BodyPart handleImageBinaryPart(javax.mail.internet.MimePart image, String contentType) throws IOException, javax.mail.MessagingException
Construct base64 body part from image data.- Parameters:
image-contentType-- Returns:
- Throws:
IOExceptionjavax.mail.MessagingException
-
handleBinaryPart
protected BodyPart handleBinaryPart(javax.mail.internet.MimePart mediaPart, String contentType) throws IOException, javax.mail.MessagingException
Construct simple body part from binary data just adding file name as content.- Parameters:
mediaPart-contentType-- Returns:
- Throws:
IOExceptionjavax.mail.MessagingException
-
handleTextPart
protected BodyPart handleTextPart(javax.mail.internet.MimePart textPart, String contentType) throws IOException, javax.mail.MessagingException
Construct simple binary body part with base64 data.- Parameters:
textPart-contentType-- Returns:
- Throws:
IOExceptionjavax.mail.MessagingException
-
-