package org.krakenapps.docxcod;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
public class JsonHelper {
public static Map<String, Object> parse(JSONObject obj) {
Map<String, Object> m = new HashMap<String, Object>();
String[] names = JSONObject.getNames(obj);
if (names == null)
return m;
for (String key : names) {
try {
Object value = obj.get(key);
if (value == JSONObject.NULL)
value = null;
else if (value instanceof JSONArray)
value = parse((JSONArray) value);
else if (value instanceof JSONObject)
value = parse((JSONObject) value);
m.put(key, value);
} catch (JSONException e) {
e.printStackTrace();
}
}
return m;
}
public static List<Object> parse(JSONArray arr) {
List<Object> list = new ArrayList<Object>();
for (int i = 0; i < arr.length(); i++) {
try {
Object o = arr.get(i);
if (o == JSONObject.NULL)
list.add(null);
else if (o instanceof JSONArray)
list.add(parse((JSONArray) o));
else if (o instanceof JSONObject)
list.add(parse((JSONObject) o));
else
list.add(o);
} catch (JSONException e) {
e.printStackTrace();
}
}
return list;
}
}