[FLINK-9194][history] Add convenience ArchivedJson constructor

Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/5753b746
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/5753b746
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/5753b746

Branch: refs/heads/master
Commit: 5753b746c1dade748b6576f7e6024cc18c32d6a3
Parents: fd374b8
Author: zentol <[email protected]>
Authored: Wed Apr 18 14:33:16 2018 +0200
Committer: Till Rohrmann <[email protected]>
Committed: Mon May 14 23:40:48 2018 +0200

----------------------------------------------------------------------
 .../runtime/webmonitor/history/ArchivedJson.java     | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/5753b746/flink-runtime/src/main/java/org/apache/flink/runtime/webmonitor/history/ArchivedJson.java
----------------------------------------------------------------------
diff --git 
a/flink-runtime/src/main/java/org/apache/flink/runtime/webmonitor/history/ArchivedJson.java
 
b/flink-runtime/src/main/java/org/apache/flink/runtime/webmonitor/history/ArchivedJson.java
index a15dd52..9200248 100644
--- 
a/flink-runtime/src/main/java/org/apache/flink/runtime/webmonitor/history/ArchivedJson.java
+++ 
b/flink-runtime/src/main/java/org/apache/flink/runtime/webmonitor/history/ArchivedJson.java
@@ -18,8 +18,14 @@
 
 package org.apache.flink.runtime.webmonitor.history;
 
+import org.apache.flink.runtime.rest.messages.ResponseBody;
+import org.apache.flink.runtime.rest.util.RestMapperUtils;
 import org.apache.flink.util.Preconditions;
 
+import 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ObjectMapper;
+
+import java.io.IOException;
+import java.io.StringWriter;
 import java.util.Objects;
 
 /**
@@ -30,6 +36,8 @@ import java.util.Objects;
  */
 public class ArchivedJson {
 
+       private static final ObjectMapper MAPPER = 
RestMapperUtils.getStrictObjectMapper();
+
        private final String path;
        private final String json;
 
@@ -38,6 +46,13 @@ public class ArchivedJson {
                this.json = Preconditions.checkNotNull(json);
        }
 
+       public ArchivedJson(String path, ResponseBody json) throws IOException {
+               this.path = Preconditions.checkNotNull(path);
+               StringWriter sw = new StringWriter();
+               MAPPER.writeValue(sw, Preconditions.checkNotNull(json));
+               this.json = sw.toString();
+       }
+
        public String getPath() {
                return path;
        }

Reply via email to