projects
/
Mograsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Removed duplicate code in GUIMemoryWA; removed obsolete TODO
[Mograsim.git]
/
net.mograsim.logic.model
/
src
/
net
/
mograsim
/
logic
/
model
/
util
/
JsonHandler.java
diff --git
a/net.mograsim.logic.model/src/net/mograsim/logic/model/util/JsonHandler.java
b/net.mograsim.logic.model/src/net/mograsim/logic/model/util/JsonHandler.java
index
2ada2e7
..
0f151b9
100644
(file)
--- a/
net.mograsim.logic.model/src/net/mograsim/logic/model/util/JsonHandler.java
+++ b/
net.mograsim.logic.model/src/net/mograsim/logic/model/util/JsonHandler.java
@@
-10,11
+10,11
@@
import java.util.stream.Collectors;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
+import com.google.gson.JsonElement;
public class JsonHandler
{
public class JsonHandler
{
- // TODO: write versions differently
- private static Gson parser = new GsonBuilder().setPrettyPrinting().create();
+ public final static Gson parser = new GsonBuilder().setPrettyPrinting().create();
public static <T> T readJson(String path, Class<T> type) throws IOException
{
public static <T> T readJson(String path, Class<T> type) throws IOException
{
@@
-37,11
+37,16
@@
public class JsonHandler
public static <T> T fromJson(String src, Class<T> type)
{
public static <T> T fromJson(String src, Class<T> type)
{
- //
TODO actually parse and compare version
+ //
throw away legacy version line
String rawJson = src.lines().dropWhile(s -> s.length() == 0 || s.charAt(0) != '{').collect(Collectors.joining());
return parser.fromJson(rawJson, type);
}
String rawJson = src.lines().dropWhile(s -> s.length() == 0 || s.charAt(0) != '{').collect(Collectors.joining());
return parser.fromJson(rawJson, type);
}
+ public static <T> T fromJsonTree(JsonElement src, Class<T> type)
+ {
+ return parser.fromJson(src, type);
+ }
+
public static void writeJson(Object o, String path) throws IOException
{
try (FileWriter writer = new FileWriter(path))
public static void writeJson(Object o, String path) throws IOException
{
try (FileWriter writer = new FileWriter(path))
@@
-52,6
+57,11
@@
public class JsonHandler
public static String toJson(Object o)
{
public static String toJson(Object o)
{
- return String.format("mograsim version: %s\n%s", Version.jsonCompVersion.toString(), parser.toJson(o));
+ return parser.toJson(o);
+ }
+
+ public static JsonElement toJsonTree(Object o)
+ {
+ return parser.toJsonTree(o);
}
}
}
}