Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

package com.spice.profitmandi.web.services;

import java.util.Map;

import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

import org.apache.velocity.app.VelocityEngine;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Service;
import org.springframework.ui.velocity.VelocityEngineUtils;



@Service("emailService")
public class EmailService {
 
    @Autowired
    JavaMailSender mailSender;
 
    @Autowired
    VelocityEngine velocityEngine;
 
    private String getContentFromTemplate(String template, Map < String, Object > model) {
        StringBuffer content = new StringBuffer();
        try {
            content.append(
                        VelocityEngineUtils.mergeTemplateIntoString(velocityEngine, template, model));
        } catch (Exception e) {
            e.printStackTrace();
        }
        return content.toString();
    }
    
        public void sendMailWithAttachments(String subject, String messageTemplate, Map<String,Object> model, String[] email, String[] cc, String[] bcc) throws Exception {
                MimeMessage message = mailSender.createMimeMessage();
                MimeMessageHelper helper = new MimeMessageHelper(message, true);
                if(email!=null) {
                        helper.setTo(email);
                }
                if(bcc!=null) {
                        helper.setBcc(bcc);
                }
                if(cc !=null) {
                        helper.setCc(cc);
                }
                helper.setSubject(subject);
                helper.setText(this.getContentFromTemplate(messageTemplate, model), true);

                InternetAddress senderAddress = new InternetAddress("noreply@smartdukaan.com", "SmartDukaan");
                helper.setFrom(senderAddress);
                mailSender.send(message);

        }
 
}