|
1 | 1 | package com.sendgrid; |
2 | 2 |
|
3 | | -import org.json.JSONObject; |
4 | 3 | import com.sendgrid.smtpapi.SMTPAPI; |
5 | | - |
6 | | -import java.util.ArrayList; |
7 | | -import java.io.ByteArrayInputStream; |
8 | | -import java.io.FileNotFoundException; |
9 | | -import java.util.Arrays; |
10 | | -import java.util.HashMap; |
11 | | -import java.util.Iterator; |
12 | | -import java.util.Map; |
13 | | -import java.io.FileInputStream; |
14 | | - |
15 | | -import java.io.File; |
16 | | -import java.io.InputStream; |
17 | | -import java.io.IOException; |
18 | | - |
19 | | -import org.apache.http.HttpResponse; |
20 | 4 | import org.apache.http.HttpEntity; |
21 | | -import org.apache.http.entity.mime.MultipartEntityBuilder; |
| 5 | +import org.apache.http.HttpResponse; |
22 | 6 | import org.apache.http.client.methods.HttpPost; |
23 | | -import org.apache.http.impl.client.HttpClientBuilder; |
| 7 | +import org.apache.http.entity.ContentType; |
| 8 | +import org.apache.http.entity.mime.MultipartEntityBuilder; |
24 | 9 | import org.apache.http.impl.client.CloseableHttpClient; |
| 10 | +import org.apache.http.impl.client.HttpClientBuilder; |
25 | 11 | import org.apache.http.util.EntityUtils; |
26 | | -import org.apache.http.entity.ContentType; |
| 12 | +import org.json.JSONObject; |
| 13 | + |
| 14 | +import java.io.*; |
| 15 | +import java.util.*; |
27 | 16 |
|
28 | 17 | public class SendGrid { |
29 | 18 | private static final String VERSION = "2.2.1"; |
30 | 19 | private static final String USER_AGENT = "sendgrid/" + VERSION + ";java"; |
31 | 20 |
|
32 | | - private static final String PARAM_TO = "to[%d]"; |
33 | | - private static final String PARAM_TONAME = "toname[%d]"; |
34 | | - private static final String PARAM_CC = "cc[%d]"; |
| 21 | + private static final String PARAM_TO = "to[]"; |
| 22 | + private static final String PARAM_TONAME = "toname[]"; |
| 23 | + private static final String PARAM_CC = "cc[]"; |
| 24 | + private static final String PARAM_BCC = "bcc[]"; |
| 25 | + |
35 | 26 | private static final String PARAM_FROM = "from"; |
36 | 27 | private static final String PARAM_FROMNAME = "fromname"; |
37 | 28 | private static final String PARAM_REPLYTO = "replyto"; |
38 | | - private static final String PARAM_BCC = "bcc[%d]"; |
39 | 29 | private static final String PARAM_SUBJECT = "subject"; |
40 | 30 | private static final String PARAM_HTML = "html"; |
41 | 31 | private static final String PARAM_TEXT = "text"; |
42 | 32 | private static final String PARAM_FILES = "files[%s]"; |
43 | 33 | private static final String PARAM_CONTENTS = "content[%s]"; |
44 | 34 | private static final String PARAM_XSMTPAPI = "x-smtpapi"; |
45 | 35 | private static final String PARAM_HEADERS = "headers"; |
46 | | - private static final String TEXT_PLAIN = "text/plain"; |
| 36 | + private static final String TEXT_PLAIN = "text/plain"; |
47 | 37 | private static final String UTF_8 = "UTF-8"; |
48 | 38 |
|
| 39 | + |
49 | 40 | private String username; |
50 | 41 | private String password; |
51 | 42 | private String url; |
@@ -118,13 +109,13 @@ public HttpEntity buildBody(Email email) { |
118 | 109 | builder.addTextBody(String.format(PARAM_TO, 0), email.getFrom(), ContentType.create(TEXT_PLAIN, UTF_8)); |
119 | 110 | } |
120 | 111 | for (int i = 0, len = tos.length; i < len; i++) |
121 | | - builder.addTextBody(String.format(PARAM_TO, i), tos[i], ContentType.create(TEXT_PLAIN, UTF_8)); |
| 112 | + builder.addTextBody(PARAM_TO, tos[i], ContentType.create("text/plain", "UTF-8")); |
122 | 113 | for (int i = 0, len = tonames.length; i < len; i++) |
123 | | - builder.addTextBody(String.format(PARAM_TONAME, i), tonames[i], ContentType.create(TEXT_PLAIN, UTF_8)); |
| 114 | + builder.addTextBody(PARAM_TONAME, tonames[i], ContentType.create("text/plain", "UTF-8")); |
124 | 115 | for (int i = 0, len = ccs.length; i < len; i++) |
125 | | - builder.addTextBody(String.format(PARAM_CC, i), ccs[i], ContentType.create(TEXT_PLAIN, UTF_8)); |
| 116 | + builder.addTextBody(PARAM_CC, ccs[i], ContentType.create("text/plain", "UTF-8")); |
126 | 117 | for (int i = 0, len = bccs.length; i < len; i++) |
127 | | - builder.addTextBody(String.format(PARAM_BCC, i), bccs[i], ContentType.create(TEXT_PLAIN, UTF_8)); |
| 118 | + builder.addTextBody(PARAM_BCC, bccs[i], ContentType.create(TEXT_PLAIN, UTF_8)); |
128 | 119 | // Files |
129 | 120 | if (email.getAttachments().size() > 0) { |
130 | 121 | Iterator it = email.getAttachments().entrySet().iterator(); |
@@ -425,6 +416,7 @@ public int getSendAt() { |
425 | 416 |
|
426 | 417 | /** |
427 | 418 | * Convenience method to set the template |
| 419 | + * |
428 | 420 | * @param templateId The ID string of your template |
429 | 421 | * @return this |
430 | 422 | */ |
|
0 commit comments