in src/main/java/com/aliyun/openservices/log/common/Chart.java [224:273]
public void FromJsonObject(JSONObject dict) throws LogException {
try {
setTitle(dict.getString("title"));
setType(dict.getString("type"));
JSONObject searchJson = dict.getJSONObject("search");
setRawSearchAttr(searchJson.toString());
setLogstore(searchJson.getString("logstore"));
setTopic(searchJson.getString("topic"));
setQuery(searchJson.getString("query"));
setStart(searchJson.getString("start"));
setEnd(searchJson.getString("end"));
// display attribute
JSONObject displayJson = dict.getJSONObject("display");
setRawDisplayAttr(displayJson.toString()); // set raw display attribute
setxPosition(displayJson.getLong("xPos"));
setyPosition(displayJson.getLong("yPos"));
setWidth(displayJson.getLong("width"));
setHeight(displayJson.getLong("height"));
setDisplayName(displayJson.getString("displayName"));
// action attribute
if (dict.containsKey("action")) {
JSONObject actionJson = dict.getJSONObject("action");
setRawActionAttr(actionJson.toString());
}
// xAxis is optional
if (displayJson.containsKey("xAxis")) {
JSONArray xAxisArray = displayJson.getJSONArray("xAxis");
ArrayList<String> xAxisArrayList = new ArrayList<String>();
for (int index = 0; index != xAxisArray.size(); index++) {
xAxisArrayList.add(xAxisArray.getString(index));
}
setxAxisKeys(xAxisArrayList);
}
// yAxis is optional
if (displayJson.containsKey("yAxis")) {
ArrayList<String> yAxisArrayList = new ArrayList<String>();
JSONArray yAxisArray = displayJson.getJSONArray("yAxis");
for (int index = 0; index != yAxisArray.size(); index++) {
yAxisArrayList.add(yAxisArray.getString(index));
}
setyAxisKeys(yAxisArrayList);
}
} catch (JSONException e) {
throw new LogException("FailedToGenerateChart", e.getMessage(), e, "");
}
}