001package org.hl7.fhir.utilities.json;
002
003import com.google.gson.JsonArray;
004import com.google.gson.JsonObject;
005
006public class JSONUtil {
007
008  public static JsonObject parse(String json) {
009    return (JsonObject) new com.google.gson.JsonParser().parse(json);    
010    
011  }
012
013  public static JsonObject forceObject(JsonObject obj, String name) {
014    if (obj.has(name) && obj.get(name).isJsonObject())
015      return obj.getAsJsonObject(name);
016    if (obj.has(name))
017      obj.remove(name);
018    JsonObject res = new JsonObject();
019    obj.add(name, res);
020    return res;
021  }
022
023  public static JsonArray forceArray(JsonObject obj, String name) {
024    if (obj.has(name) && obj.get(name).isJsonArray())
025      return obj.getAsJsonArray(name);
026    if (obj.has(name))
027      obj.remove(name);
028    JsonArray res = new JsonArray();
029    obj.add(name, res);
030    return res;  }
031
032  public static JsonObject addObj(JsonArray arr) {
033    JsonObject res = new JsonObject();
034    arr.add(res);
035    return res;
036  }
037
038}