From e66874c10da7530f81f14d4a80686747174ac61c Mon Sep 17 00:00:00 2001 From: Soufyanbreda Date: Sun, 24 Mar 2019 11:45:21 +0100 Subject: [PATCH] Add responsebody --- src/main/java/MessagingClient.java | 55 ++++++++++++++++++----------- src/main/java/models/Response.java | 40 +++++++++++++++++++++ src/main/java/utils/HttpHelper.java | 1 - text-sdk-java.iml | 14 ++++++-- 4 files changed, 86 insertions(+), 24 deletions(-) create mode 100644 src/main/java/models/Response.java diff --git a/src/main/java/MessagingClient.java b/src/main/java/MessagingClient.java index ef0f413..d056c3a 100644 --- a/src/main/java/MessagingClient.java +++ b/src/main/java/MessagingClient.java @@ -1,51 +1,65 @@ import com.google.gson.Gson; -import models.Channel; import models.Message; import models.Request; +import models.Response; import utils.HttpHelper; -import java.util.ArrayList; -import java.util.List; - public class MessagingClient { private String productToken; + private static Gson gson; - public MessagingClient(String productToken){ + public MessagingClient(String productToken) { this.productToken = productToken; + gson = new Gson(); } - public void sendTextMessage(String messageText, String from,String[] to){ + public Response.HttpResponseBody sendTextMessage(String messageText, String from, String[] to) { - try{ - MessageBuilder builder = new MessageBuilder(messageText,from, to); + try { + MessageBuilder builder = new MessageBuilder(messageText, from, to); Message message = builder.Build(); String body = GetHttpPostBody(productToken, message); - HttpHelper.post(Config.ApiUrl, body); - } + String result = HttpHelper.post(Config.ApiUrl, body); - catch (Exception e){ + return getResponseBody(result); + + } catch (Exception e) { System.out.println("Please check your request body."); + throw e; } } - public void sendMessage(Message message) { + public Response.HttpResponseBody sendMessage(Message message) { + + try { + String body = GetHttpPostBody(productToken, message); - try{ - String body = GetHttpPostBody(productToken, message); + String result = HttpHelper.post(Config.ApiUrl, body); - HttpHelper.post(Config.ApiUrl, body); + return getResponseBody(result); + } catch (Exception e) { + System.out.println("Please check your request body."); + throw e; } - - catch (Exception e ){ - System.out.println("Please check your request body."); } + + + /// + /// Gets the HTTP post body. + /// + /// The API key. + /// The message to send. + /// + protected static Response.HttpResponseBody getResponseBody(String body) { + Response.HttpResponseBody result = gson.fromJson(body, Response.HttpResponseBody.class); + return result; } @@ -55,15 +69,14 @@ public void sendMessage(Message message) { /// The API key. /// The message to send. /// - protected static String GetHttpPostBody(String productToken, Message message) - { + protected static String GetHttpPostBody(String productToken, Message message) { Request.Messages messages = new Request.Messages(); Request.MessagesEnvelope request = new Request.MessagesEnvelope(); request.setAuthentication(new Request.Authentication(productToken)); Message[] msg = new Message[]{message}; request.setMessages(msg); messages.setMessages(request); - return new Gson().toJson(messages); + return gson.toJson(messages); } } diff --git a/src/main/java/models/Response.java b/src/main/java/models/Response.java new file mode 100644 index 0000000..b7e5004 --- /dev/null +++ b/src/main/java/models/Response.java @@ -0,0 +1,40 @@ +package models; + + + +public class Response { + + public static class HttpResponseBody + { + + public String details ; + + + public int errorCode ; + + + public ResponseMessageDetail[] messages ; + } + + public class ResponseMessageDetail + { + + public String messageDetails ; + + + public String messageErrorCode; + + + public int parts; + + + public String reference; + + + public String status; + + + public String to; + } + +} diff --git a/src/main/java/utils/HttpHelper.java b/src/main/java/utils/HttpHelper.java index 978b918..f03e558 100644 --- a/src/main/java/utils/HttpHelper.java +++ b/src/main/java/utils/HttpHelper.java @@ -20,7 +20,6 @@ private static String sendRequest(String method, String url, String data) { con.setRequestProperty("Content-Type", "application/json"); - System.out.println(data); if (data != null) { // Send request diff --git a/text-sdk-java.iml b/text-sdk-java.iml index a7abcd5..ef84980 100644 --- a/text-sdk-java.iml +++ b/text-sdk-java.iml @@ -1,4 +1,14 @@ - - + + + + + + + + + + + + \ No newline at end of file