You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ak...@apache.org on 2017/08/09 14:01:13 UTC
ignite git commit: IGNITE-6012 Refactored
GridJettyRestHandler.processRequest(): replace mapper.writeValueAsString with
writeValue(outputStream, v).
Repository: ignite
Updated Branches:
refs/heads/ignite-6012 [created] a0fe6ea46
IGNITE-6012 Refactored GridJettyRestHandler.processRequest(): replace mapper.writeValueAsString with writeValue(outputStream, v).
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/a0fe6ea4
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/a0fe6ea4
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/a0fe6ea4
Branch: refs/heads/ignite-6012
Commit: a0fe6ea46c54f4c256435644c6954cc4658b7b17
Parents: 8d6e842
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Wed Aug 9 21:00:51 2017 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Wed Aug 9 21:00:51 2017 +0700
----------------------------------------------------------------------
.../http/jetty/GridJettyRestHandler.java | 35 +++++++++-----------
1 file changed, 16 insertions(+), 19 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/a0fe6ea4/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
----------------------------------------------------------------------
diff --git a/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java b/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
index c864a10..b1c5577 100644
--- a/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
+++ b/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
@@ -17,7 +17,8 @@
package org.apache.ignite.internal.processors.rest.protocols.http.jetty;
-import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.core.JsonGenerationException;
+import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
@@ -34,6 +35,7 @@ import java.util.List;
import java.util.Map;
import java.util.UUID;
import javax.servlet.ServletException;
+import javax.servlet.ServletOutputStream;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -362,35 +364,30 @@ public class GridJettyRestHandler extends AbstractHandler {
throw (Error)e;
}
- String json;
-
try {
- json = jsonMapper.writeValueAsString(cmdRes);
- }
- catch (JsonProcessingException e1) {
- U.error(log, "Failed to convert response to JSON: " + cmdRes, e1);
-
- GridRestResponse resFailed = new GridRestResponse(STATUS_FAILED, e1.getMessage());
+ ServletOutputStream os = res.getOutputStream();
try {
- json = jsonMapper.writeValueAsString(resFailed);
+ jsonMapper.writeValue(os, cmdRes);
}
- catch (JsonProcessingException e2) {
- json = "{\"successStatus\": \"1\", \"error:\" \"" + e2.getMessage() + "\"}}";
- }
- }
+ catch (JsonGenerationException | JsonMappingException e1) {
+ U.error(log, "Failed to convert response to JSON: " + cmdRes, e1);
- try {
- if (log.isDebugEnabled())
- log.debug("Parsed command response into JSON object: " + json);
+ GridRestResponse resFailed = new GridRestResponse(STATUS_FAILED, e1.getMessage());
- res.getWriter().write(json);
+ try {
+ jsonMapper.writeValue(os, resFailed);
+ }
+ catch (JsonGenerationException | JsonMappingException e2) {
+ jsonMapper.writeValue(os, "{\"successStatus\": \"1\", \"error:\" \"" + e2.getMessage() + "\"}}");
+ }
+ }
if (log.isDebugEnabled())
log.debug("Processed HTTP request [action=" + act + ", jsonRes=" + cmdRes + ", req=" + req + ']');
}
catch (IOException e) {
- U.error(log, "Failed to send HTTP response: " + json, e);
+ U.error(log, "Failed to send HTTP response: " + cmdRes, e);
}
}