diff options
Diffstat (limited to '')
-rw-r--r-- | sca-java-2.x/contrib/modules/binding-websocket/src/main/java/org/apache/tuscany/sca/binding/websocket/runtime/JSONUtil.java | 59 |
1 files changed, 13 insertions, 46 deletions
diff --git a/sca-java-2.x/contrib/modules/binding-websocket/src/main/java/org/apache/tuscany/sca/binding/websocket/runtime/JSONUtil.java b/sca-java-2.x/contrib/modules/binding-websocket/src/main/java/org/apache/tuscany/sca/binding/websocket/runtime/JSONUtil.java index 492dfae3dd..3fdb1ee1c1 100644 --- a/sca-java-2.x/contrib/modules/binding-websocket/src/main/java/org/apache/tuscany/sca/binding/websocket/runtime/JSONUtil.java +++ b/sca-java-2.x/contrib/modules/binding-websocket/src/main/java/org/apache/tuscany/sca/binding/websocket/runtime/JSONUtil.java @@ -33,6 +33,18 @@ public class JSONUtil { private static Gson gson = new Gson(); + public static String encodeMessage(WebSocketBindingMessage request) { + return gson.toJson(request); + } + + public static WebSocketBindingMessage decodeMessage(String jsonRequest) { + return gson.fromJson(jsonRequest, WebSocketBindingMessage.class); + } + + public static String encodePayload(Object payload) { + return gson.toJson(payload); + } + /** * Convert request parameters from JSON to operation parameter types. * @@ -42,7 +54,7 @@ public class JSONUtil { * the operation to invoke * @return an array of objects */ - public static Object[] decodeJsonParamsForOperation(String jsonData, Operation operation) { + public static Object[] decodePayloadForOperation(String jsonData, Operation operation) { Object[] args = new Object[operation.getInputType().getLogical().size()]; final String[] json = parseArray(jsonData); int index = 0; @@ -100,49 +112,4 @@ public class JSONUtil { private JSONUtil() { } - /** - * Converts a Java object to JSON format. - * - * @param response - * the response to convert - * @return the object in JSON format - */ - public static String encodeResponse(Object response) { - return gson.toJson(response); - } - - /** - * Convert request parameters as JSON array. - * - * @param params - * request parameters - * @return request parameters as JSON array - */ - public static String encodeRequestParams(Object[] params) { - StringBuilder builder = new StringBuilder(); - for (int index = 0; index < params.length; index++) { - Object param = params[index]; - builder.append(index == 0 ? "[" : ","); - builder.append(gson.toJson(param)); - } - builder.append("]"); - return builder.toString(); - } - - public static String encodeRequest(WebSocketBindingRequest request) { - return gson.toJson(request); - } - - public static WebSocketBindingRequest decodeRequest(String jsonRequest) { - return gson.fromJson(jsonRequest, WebSocketBindingRequest.class); - } - - public static WebSocketBindingResponse decodeResponse(String operationResponse) { - return gson.fromJson(operationResponse, WebSocketBindingResponse.class); - } - - public static Object decodeResponsePayload(String payload, Class<?> returnType) { - return gson.fromJson(payload, returnType); - } - } |