package net.dev123.yibome.converter; import java.util.ArrayList; import java.util.List; import net.dev123.exception.ExceptionCode; import net.dev123.exception.LibException; import net.dev123.yibome.entity.StatusSyncResult; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; /** * @author Weiping Ye * @version 创建时间:2011-9-23 下午5:54:17 **/ public class StatusSyncResultJSONConverter { public static List<StatusSyncResult> createStatusSyncResultList(String jsonString) throws LibException { try { if ("[]".equals(jsonString) || "{}".equals(jsonString)) { return new ArrayList<StatusSyncResult>(0); } JSONArray jsonArray = new JSONArray(jsonString); int size = jsonArray.length(); ArrayList<StatusSyncResult> statusSyncResultList = new ArrayList<StatusSyncResult>(size); for (int i = 0; i < size; i++) { statusSyncResultList.add( createStatusSyncResult(jsonArray.getJSONObject(i))); } return statusSyncResultList; } catch (JSONException e) { throw new LibException(ExceptionCode.JSON_PARSE_ERROR); } } public static StatusSyncResult createStatusSyncResult(JSONObject obj) throws LibException { try { StatusSyncResult result = new StatusSyncResult(); if (!obj.isNull("user_id")) { result.setUserId(obj.getString("user_id")); } if (!obj.isNull("service_provider")) { result.setServiceProviderNo(obj.getInt("service_provider")); } if (!obj.isNull("is_success")) { result.setSuccess("true".equalsIgnoreCase(obj.getString("is_success"))); } if (!obj.isNull("error_code")) { result.setErrorCode(obj.getString("error_code")); } if (!obj.isNull("error_desc")) { result.setErrorDesc(obj.getString("error_desc")); } return result; } catch (JSONException e) { throw new LibException(ExceptionCode.JSON_PARSE_ERROR); } } }