|
20 | 20 | import com.alibaba.fastjson.JSONObject; |
21 | 21 | import com.huawei.push.exception.HuaweiMesssagingException; |
22 | 22 | import com.huawei.push.message.Message; |
| 23 | +import com.huawei.push.message.Review; |
23 | 24 | import com.huawei.push.message.TopicMessage; |
24 | 25 | import com.huawei.push.model.TopicOperation; |
25 | 26 | import com.huawei.push.reponse.SendResponse; |
|
37 | 38 | import java.io.IOException; |
38 | 39 | import java.text.MessageFormat; |
39 | 40 | import java.util.HashMap; |
| 41 | +import java.util.List; |
40 | 42 | import java.util.Map; |
41 | 43 | import java.util.ResourceBundle; |
42 | 44 |
|
@@ -69,9 +71,9 @@ public CloseableHttpClient getHttpClient() { |
69 | 71 | } |
70 | 72 |
|
71 | 73 | @Override |
72 | | - public SendResponse send(Message message, boolean validateOnly, String accessToken) throws HuaweiMesssagingException { |
| 74 | + public SendResponse send(Message message, boolean validateOnly, List<Review> review, String accessToken) throws HuaweiMesssagingException { |
73 | 75 | try { |
74 | | - return sendRequest(message, validateOnly, accessToken); |
| 76 | + return sendRequest(message, validateOnly, review, accessToken); |
75 | 77 | } catch (IOException e) { |
76 | 78 | throw new HuaweiMesssagingException(HuaweiMessaging.INTERNAL_ERROR, "Error while calling HCM backend service", e); |
77 | 79 | } |
@@ -125,14 +127,14 @@ private SendResponse sendRequest(TopicMessage message, String operation, String |
125 | 127 | /** |
126 | 128 | * send request |
127 | 129 | * |
128 | | - * @param message message {@link Message} |
| 130 | + * @param message message {@link Message} |
129 | 131 | * @param validateOnly A boolean indicating whether to send message for test or not. |
130 | 132 | * @param accessToken A String for oauth |
131 | 133 | * @return {@link SendResponse} |
132 | 134 | * @throws IOException If a error occurs when sending request |
133 | 135 | */ |
134 | | - private SendResponse sendRequest(Message message, boolean validateOnly, String accessToken) throws IOException, HuaweiMesssagingException { |
135 | | - Map<String, Object> map = createRequestMap(message, validateOnly); |
| 136 | + private SendResponse sendRequest(Message message, boolean validateOnly, List<Review> review, String accessToken) throws IOException, HuaweiMesssagingException { |
| 137 | + Map<String, Object> map = createRequestMap(message, validateOnly, review); |
136 | 138 | HttpPost httpPost = new HttpPost(this.HcmPushUrl); |
137 | 139 | StringEntity entity = new StringEntity(JSON.toJSONString(map), "UTF-8"); |
138 | 140 | // String aqa = JSON.toJSONString(map); |
@@ -163,13 +165,17 @@ private SendResponse sendRequest(Message message, boolean validateOnly, String a |
163 | 165 | * |
164 | 166 | * @param message A non-null {@link Message} to be sent. |
165 | 167 | * @param validateOnly A boolean indicating whether to send message for test or not. |
| 168 | + * @param review A list of {@link Review} objects. |
166 | 169 | * @return a map of request |
167 | 170 | */ |
168 | | - private Map<String, Object> createRequestMap(Message message, boolean validateOnly) { |
| 171 | + private Map<String, Object> createRequestMap(Message message, boolean validateOnly, List<Review> review) { |
169 | 172 | return new HashMap<String, Object>() { |
170 | 173 | { |
171 | 174 | put("validate_only", validateOnly); |
172 | 175 | put("message", message); |
| 176 | + if (review != null && review.size() > 0) { |
| 177 | + put("review", review); |
| 178 | + } |
173 | 179 | } |
174 | 180 | }; |
175 | 181 | } |
|
0 commit comments