package net.dev123.yibome.converter;
import java.util.ArrayList;
import java.util.List;
import net.dev123.commons.util.ParseUtil;
import net.dev123.yibome.entity.LocalGroup;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
public class GroupJSONConverter {
public static JSONArray toJSONArray(List<LocalGroup> groups) throws JSONException {
JSONArray jsonArray = new JSONArray();
for (LocalGroup group : groups) {
jsonArray.put(toJSON(group));
}
return jsonArray;
}
public static List<LocalGroup> toGroupList(JSONArray jsonArray) throws JSONException {
List<LocalGroup> groupList = new ArrayList<LocalGroup>();
int length = jsonArray.length();
for (int i = 0; i < length; i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
groupList.add(toGroup(jsonObject));
}
return groupList;
}
public static JSONObject toJSON(LocalGroup group) throws JSONException {
if (group == null) {
return null;
}
JSONObject json = new JSONObject();
json.put("group_id", group.getRemoteGroupId());
json.put("name", group.getName());
json.put("state", group.getState());
return json;
}
public static LocalGroup toGroup(JSONObject json) throws JSONException {
if (json == null) {
return null;
}
LocalGroup group = new LocalGroup();
group.setGroupId(ParseUtil.getLong("group_id", json));
group.setName(ParseUtil.getRawString("name", json));
return group;
}
}