Subversion Repositories SmartDukaan

Rev

Rev 2822 | Rev 5128 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2822 Rev 4827
Line 1... Line 1...
1
package in.shop2020.utils;
1
package in.shop2020.utils;
2
 
2
 
-
 
3
import java.io.File;
3
import java.security.Security;
4
import java.security.Security;
-
 
5
import java.util.List;
4
import java.util.Properties;
6
import java.util.Properties;
5
 
7
 
6
import javax.activation.DataHandler;
8
import javax.activation.DataHandler;
7
import javax.activation.DataSource;
9
import javax.activation.DataSource;
8
import javax.activation.FileDataSource;
10
import javax.activation.FileDataSource;
Line 10... Line 12...
10
import javax.mail.MessagingException;
12
import javax.mail.MessagingException;
11
import javax.mail.Multipart;
13
import javax.mail.Multipart;
12
import javax.mail.PasswordAuthentication;
14
import javax.mail.PasswordAuthentication;
13
import javax.mail.Session;
15
import javax.mail.Session;
14
import javax.mail.Transport;
16
import javax.mail.Transport;
-
 
17
import javax.mail.internet.AddressException;
15
import javax.mail.internet.InternetAddress;
18
import javax.mail.internet.InternetAddress;
16
import javax.mail.internet.MimeBodyPart;
19
import javax.mail.internet.MimeBodyPart;
17
import javax.mail.internet.MimeMessage;
20
import javax.mail.internet.MimeMessage;
18
import javax.mail.internet.MimeMultipart;
21
import javax.mail.internet.MimeMultipart;
19
 
22
 
Line 25... Line 28...
25
    
28
    
26
    public GmailUtils(){
29
    public GmailUtils(){
27
    }
30
    }
28
    
31
    
29
    public void sendSSLMessage(String recipients[], String subject, String message, final String from, final String password, String filename) throws MessagingException {
32
    public void sendSSLMessage(String recipients[], String subject, String message, final String from, final String password, String filename) throws MessagingException {
-
 
33
        Message msg = prepareMessage(recipients, subject, from, password);
-
 
34
 
-
 
35
        //Create the multi-part object to hold the text and attachment parts
-
 
36
        Multipart multipart = new MimeMultipart();
-
 
37
        
-
 
38
        // create the message part 
-
 
39
        MimeBodyPart messageBodyPart = new MimeBodyPart();
-
 
40
        //Part 1: Text message
-
 
41
        messageBodyPart.setText(message);
-
 
42
        multipart.addBodyPart(messageBodyPart);
-
 
43
 
-
 
44
        //Part 2: Attachment
-
 
45
        messageBodyPart = new MimeBodyPart();
-
 
46
        DataSource source = new FileDataSource(filename);
-
 
47
        messageBodyPart.setDataHandler(new DataHandler(source));
-
 
48
        String[] names = filename.split("/");
-
 
49
        messageBodyPart.setFileName(names[names.length - 1]);
-
 
50
        multipart.addBodyPart(messageBodyPart);
-
 
51
 
-
 
52
        // Put parts in message
-
 
53
        msg.setContent(multipart);
-
 
54
        Transport.send(msg);
-
 
55
    }
-
 
56
 
-
 
57
    public void sendSSLMessage(String recipients[], String subject, String message, final String from, final String password, List<File> files) throws MessagingException {
-
 
58
        Message msg = prepareMessage(recipients, subject, from, password);
-
 
59
        
-
 
60
        //Create the multi-part object to hold the text and attachment parts
-
 
61
        Multipart multipart = new MimeMultipart();
-
 
62
        
-
 
63
        // create the message part 
-
 
64
        MimeBodyPart messageBodyPart = new MimeBodyPart();
-
 
65
        //Part 1: Text message
-
 
66
        messageBodyPart.setText(message);
-
 
67
        multipart.addBodyPart(messageBodyPart);
-
 
68
 
-
 
69
        //Part 2: Attachment
-
 
70
        for (File file : files) {
-
 
71
            DataSource source = new FileDataSource(file);
-
 
72
            String[] names = file.getAbsolutePath().split("/");
-
 
73
            messageBodyPart = new MimeBodyPart();
-
 
74
            messageBodyPart.setDataHandler(new DataHandler(source));
-
 
75
            messageBodyPart.setFileName(names[names.length - 1]);
-
 
76
            multipart.addBodyPart(messageBodyPart);
-
 
77
        }
-
 
78
 
-
 
79
        // Put parts in message
-
 
80
        msg.setContent(multipart);
-
 
81
        Transport.send(msg);
-
 
82
    }
-
 
83
 
-
 
84
    private Message prepareMessage(String[] recipients, String subject,
-
 
85
            final String from, final String password) throws AddressException,
-
 
86
            MessagingException {
30
        boolean debug = true;
87
        boolean debug = true;
31
 
88
 
32
        Properties props = new Properties();
89
        Properties props = new Properties();
33
        props.put("mail.smtp.host", SMTP_HOST_NAME);
90
        props.put("mail.smtp.host", SMTP_HOST_NAME);
34
        props.put("mail.smtp.auth", "true");
91
        props.put("mail.smtp.auth", "true");
Line 62... Line 119...
62
        }
119
        }
63
        msg.setRecipients(Message.RecipientType.TO, addressTo);
120
        msg.setRecipients(Message.RecipientType.TO, addressTo);
64
 
121
 
65
        //Setting the Subject
122
        //Setting the Subject
66
        msg.setSubject(subject);
123
        msg.setSubject(subject);
67
        
-
 
68
        //Create the multi-part object to hold the text and attachment parts
-
 
69
        Multipart multipart = new MimeMultipart();
-
 
70
        
-
 
71
        // create the message part 
-
 
72
        MimeBodyPart messageBodyPart = new MimeBodyPart();
-
 
73
        //Part 1: Text message
-
 
74
        messageBodyPart.setText(message);
-
 
75
        multipart.addBodyPart(messageBodyPart);
-
 
76
 
-
 
77
        //Part 2: Attachment
-
 
78
        messageBodyPart = new MimeBodyPart();
-
 
79
        DataSource source = new FileDataSource(filename);
-
 
80
        messageBodyPart.setDataHandler(new DataHandler(source));
-
 
81
        String[] names = filename.split("/");
-
 
82
        messageBodyPart.setFileName(names[names.length - 1]);
-
 
83
        multipart.addBodyPart(messageBodyPart);
-
 
84
 
-
 
85
        // Put parts in message
-
 
86
        msg.setContent(multipart);
-
 
87
        Transport.send(msg);
124
        return msg;
88
    }
125
    }
89
    
126
    
90
    public static void main(String args[]) throws Exception {
127
    public static void main(String args[]) throws Exception {
91
        
128
        
92
        
129